0

RTP パケットをキャプチャし、次のコードでデコードしました。

public byte[] Decode(byte[] data)
{
    MemoryStream src=new MemoryStream(data);
    System.IO.BinaryReader brsrc=new BinaryReader(src);
    MemoryStream dst=new MemoryStream();
    System.IO.BinaryWriter bwdst=new BinaryWriter(dst);
    int step=(int)(data.Length/10);
    for(int i=0;i<step;i++)
    {
        byte[] d=new byte[160];
        va_g729a_decoder(brsrc.ReadBytes(10),d,0);
        bwdst.Write(d);
    }
    byte[] ret=dst.GetBuffer();
    brsrc.Close();
    bwdst.Close();
    src.Close();
    dst.Close();
    return ret;         
}

g729 dll を使用します。

今、デコードされた RTP パケットでいっぱいのバイト配列があります。それを再生したり、WAV ファイルなどに変換したりするにはどうすればよいですか?

タナクス、オフェク

4

1 に答える 1

0

ffmpegを使用して、rtp データを mp3 形式の音声に変換できます。ここで参照

于 2013-02-13T11:20:12.003 に答える