1

BASS ライブラリを使用してオーディオ編集を行おうとしているので、ライブラリに詳しい人が助けてくれることを願っています。

私が使っている機能は

Bass.BASS_StreamCreateFile(filename, offset, length, flags);

ちょっとした背景として、私は Bass.net ラッパーを使用しており、すべての mp3 ファイルを操作しています。この関数を使用している実際のコードは次のとおりです。

int baseStream = Bass.BASS_StreamCreateFile(filename, startTimeBytes, durationBaseBytes, BASSFlag.BASS_STREAM_PRESCAN | BASSFlag.BASS_STREAM_DECODE | BASSFlag.BASS_SAMPLE_FLOAT);

オフセット (startTimeBytes) が 0 の場合、ストリームは正常に作成されますが、オフセットが 0 以外の場合、メソッドは 0 を返し、エラー コードは BASS_ERROR_FILEFORM になります。ただし、使用されるファイルはオフセットなしで正常に機能します (オフセット = 0)。

たぶん、私が使用しているフラグに何か問題があるのでしょうか?

4

1 に答える 1

1

mp3 ファイルにオフセットのないフレームが含まれています。そこで、0オフセットを使用します。
ストリームの再生位置を設定するには、BASS_ChannelSetPosition ()を使用します。

  1. オフセット = 0 でストリームを作成します。
  2. BASS_ChannelSeconds2Bytes()を使用して、チャネルの形式に基づいて時間 (秒) 位置をバイトに変換します。
  3. BASS_ChannelSetPosition()BASS_POS_BYTEモードで位置を設定します。
于 2013-05-28T07:22:36.213 に答える