私はwavファイルをmp3ファイルに変換することができました。 私のアプリケーションが動作している間は、VLC Media Player(不良ファイルディスクリプタ)のみがフリーズします 私のアプリケーションを閉じると正常に再生されます。私のアプリケーションが開いている間、ファイルを外部で再生できないのはなぜですか?
public void ConvertWavToMp3(string filename)
{
LameMP3FileWriter mpFileWriter;
if (File.Exists(Path.Combine(filename.Split('.').FirstOrDefault() + ".mp3"))) File.Delete(Path.Combine(filename.Split('.').FirstOrDefault() + ".mp3"));
using (WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(new WaveFileReader(filename)))
using (mpFileWriter = new LameMP3FileWriter(File.Create(Path.Combine(filename.Split('.').FirstOrDefault() + ".mp3")), waveStream.WaveFormat, LAMEPreset.ABR_320))
{
byte[] bytes = new byte[waveStream.Length];
waveStream.Position = 0;
waveStream.Read(bytes, 0, (int)waveStream.Length);
mpFileWriter.Write(bytes, 0, bytes.Length);
mpFileWriter.Flush();
}
if (mpFileWriter != null)
{
mpFileWriter.Dispose();
mpFileWriter.Close();
mpFileWriter = null;
}
else Console.WriteLine("file writer was null");
lblstatus.Text = "Ready";
lblstatus.ForeColor = System.Drawing.Color.DarkGreen;
}
ご覧のとおり、ファイルを閉じて破棄しますが、これは機能しません。 エラーはそのままです。 ファイル自体は問題ありませんが、アプリケーションの実行が許可されていないか、再生できません。 奇妙な。 うまくいけば、あなたは、 Sincelery、 TheSkilluminati PS私を助けることができる:私は英語のネイティブスピーカーではないよ、私はテキスト内のすべての問題について謝罪:)
どこを閉じて処分すればよいですか? Iveはusing(){}の後にすでに試してみました。 – TheSkilluminati
コード例に()を使用して別のコードを追加しました。それがうまくいけば教えてください – greenberet
ああ、ありがとうございました。ニース:) – TheSkilluminati