MediaFoundationReaderとResamplerDmoStreamをWaveFormat(16000,16、1)に使用して、MP4(オーディオ)ファイルをWAVにリサンプリングします。再サンプリング後、私はスピーチをスピーチAPIに送信しますが、ストリームにはWAVヘッダーが含まれていないためAPIが失敗します。 (WaveFileWriterを使用して)ストリームをWAVファイルに保存する場合は、ファイルを再度読み取ってからストリームをAPIに送信すると、ストリームにWAVヘッダーが含まれているためAPIが機能します。 時間のかかるI/Oを防ぐために、ResamplerDmoStreamリサンプリング後にストリームにWAVヘッダーを追加する方法はありますか?NAudioのWAVヘッダーを先頭に追加
0
A
答えて
0
WaveFileWriter
を使用してStream
に書き込むことができます。したがって、この場合は、MemoryStream
に書き込むことになり、WAVヘッダーを正しくファイナライズするためにはWaveFileWriter
を処分する必要があります。しかし、あなたはWAVファイルのメモリ内表現を持っています。
1つの警告は、あなたがWaveFileWriter
を配置する際MemoryStream
を配置終わるかもしれないということですので、私はNAudioで便利なクラスは、あなたがそれを使用する前に、それが配置された取得を停止するにはMemoryStream
をラップすることができたIgnoreDisposeStream
と呼ばれています。
関連する問題
- 1. リンクリストの先頭に追加
- 2. 行の先頭に追加
- 3. 先頭へJavaScriptを追加
- 4. CSVの先頭に列を追加
- 5. Laravelスキーマビルダテーブルの先頭に列を追加
- 6. NAudio ASIO再生wav
- 7. 子プロセスコンソール出力を先頭に追加
- 8. 配列の先頭に追加
- 9. NSStringメソッドの先頭に追加
- 10. JQuery:テーブルの先頭に追加
- 11. .htaccess - RewriteCond urlの先頭に追加
- 12. htaccessファイルの先頭に追加パスが
- 13. 先頭に追加辞書(パイソン)
- 14. ヘルプが先頭に追加セレクタ
- 15. 先頭に追加ディレクトリモッズ書き換え
- 16. NAudioで変換するWav
- 17. UITableViewの問題の先頭に追加のセルを追加する
- 18. HTTP:ヘッダーの先頭に空白行 - 有効なhttp要求ヘッダー?
- 19. exeにwavを追加
- 20. リストビューの先頭にアイテムを動的に追加する
- 21. セグメントの先頭にgeom_segmentにラベルを追加する方法は?
- 22. リストビューの先頭にボタンを動的に追加する
- 23. sqlserverレポートサービスのメインレポートのサブレポートの先頭に行を追加
- 24. immutablejsを使用してMapの先頭にエントリを追加
- 25. テキストファイルの行の先頭に単語を追加する
- 26. オブジェクトの配列の先頭に配列を追加する - Javascript
- 27. Cのグリッドビューの先頭に行を追加します。
- 28. C#のファイルの先頭と末尾にテキストを追加
- 29. ファイル内の各行の先頭に数字を追加する
- 30. jQueryプラグインの先頭にready()を追加できますか?
ありがとうございます。 ResamplerDmoStreamを使用すると、API側で矛盾した結果が得られました。結局、代わりにMediaFoundationResamplerを使用しました。 WaveFileWriter.Writeを試しましたが、適切なサイズのストリームを作成するためにバイト配列の長さを知る必要があり、MediaFoundationResamplerは長さのゲッターを提供しません。 MediaFoundationResamplerから適切なサイズのストリームを作成するにはどうすればよいですか? –