タグ付けされた質問 「mp3」

2
ステレオ音声信号からボーカル部分を抽出する方法は?
現在MP3ファイルを処理していますが、この問題が発生します。私のMP3はステレオでエンコードされています。私がやりたいのは、さらに処理するためにボーカル部分を抽出することです(出力信号のモードがモノでもステレオでも問題ありません)。 私の知る限り、オーディオはMP3の異なる独立したサブ周波数帯域にエンコードされます。カットオフ周波数を適切に設定したハイパス/ローパスフィルターを使用して、ボーカル範囲に信号を制限できると思います。ただし、この場合、結果には純粋な音楽信号の一部が含まれている必要があります。またはグーグルの後、最初にバックグラウンド信号を計算するかもしれません(ボーカル部分が位相キャンセルと呼ばれるステレオオーディオの中心にあると仮定して、1つのチャンネルを他のチャンネルからの信号に追加することによって反転します)。この変換後、信号はモノになります。次に、元のステレオをモノラルにマージして、そこから背景信号を抽出します。 有効性を考えると、どちらが好まれますか(または他のソリューション:)?2番目のチャネルの場合、2つのチャネルAとBを使用して、バックグラウンドを計算するときに(BA)または(AB)を使用しますか?2つのチャネルをマージする場合と同様に、算術平均は十分に正確ですか?または、各チャネルを2倍にダウンサンプリングし、ダウンサンプリングされた信号をモノラルの結果としてインターリーブできますか? よろしくお願いします。

2
MP3エンコードアルゴリズムに関する参考資料
誰かがMP3アルゴリズムを段階的に説明し、明確に理解できるリファレンスがありますか? これらの参照は少し混乱しました: 修正離散コサイン変換を使用したオーディオ圧縮、MP3コーディング標準、Joebert S. Jacaba、2001 Theory Behind Mp3、Rassol Raissi、2002 手順を完全に理解するために、手動で紹介したリファレンスを読んだ後、ビットストリームをMP3にエンコードします。

1
MP3デコードの不一致
2つの異なるデコーダーが同じMP3に対して2つの異なるサンプル結果を出力することは可能ですか?私はMatlabでmp3をデコードし、2つの列を生成します(おそらく各チャネルに1つ)。AVAssetReader(iOS)を使用して同じファイルからサンプルデータを抽出すると、異なる結果が得られます。WAVファイルで同じコードを試したところ、2つの結果が一致したので、コードは問題ないと思います(Matlabの結果には余分な空白フレームがいくつかありました)。 非科学的に、AVAssetReader MP3の結果からランダムな値を選択し、Matlabの結果でそれらを検索すると、それらは存在する傾向がありますが、常にそうとは限りません。これが単なる偶然なのか、丸め誤差が異なるのか、それとも完全に一致するのかはわかりません。問題は、それらが一致する場合、周囲の数値が互いに異なることです。たとえば、0.0021は両方の結果で発生しますが、Matlabの周囲の数値は-0.0649、0.0147などです(AVAssetReaderの結果で0.0021の近くには表示されません)。 この不一致の原因は何ですか。アプリの整合性に深刻な欠如が生じますか、またどのように修正すればよいですか?ありがとうございました。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.