我正在尝试使用Java将来自流的opus音频数据包写入文件,以便可以成功播放文件(通过VLC或者你有什么)。我目前正在使用VorbisJava库。目前,我缓冲所有收到的音频数据包,然后一旦我知道我不再接收音频就写入文件。这是我到目前为止的示例代码:
public static void writeWithLibrary(List<OpusAudioData> opusAudioData, OutputStream outputStream)
{
OpusInfo opusInfo = new OpusInfo();
opusInfo.setNumChannels(1);
opusInfo.setOutputGain(0);
opusInfo.setPreSkip(0);
opusInfo.setSampleRate(48000);
OpusTags opusTags = new OpusTags();
OpusFile opusFile = new OpusFile(outputStream,opusInfo,opusTags);
for (OpusAudioData o : opusAudioData)
{
opusFile.writeAudioData(o);
}
try
{
opusFile.close();
}
catch (IOException e)
{
logger.error("OpusFileWriter -- Could not write data to OpusFile, aborting");
}
}
任何帮助将不胜感激。我在这里忽略了什么吗?