这是我第一次在这个表格上提问。我的问题有2个部分。
首先,请参阅下面的代码,使用Xuggle从视频文件中提取音频。
IMediaReader reader;
File f;
reader = ToolFactory.makeReader("E:\\NetBeanWorkspace\\Repo\\VideoSamples\\one.mp4");
f = new File("E:\\NetBean Workspace\\Repo\\VideoSamples\\"+"one"+".wav");
IMediaWriter mediaWriter =ToolFactory.makeWriter(f.getAbsolutePath(), reader);
int sampleRate = 44100;
int channels = 2;
mediaWriter.addAudioStream(0, 0, ICodec.ID.CODEC_ID_ADPCM_IMA_WAV, channels, sampleRate);
reader.addListener(mediaWriter);
mediaWriter.setMaskLateStreamExceptions(true);
while( reader.readPacket() == null );
我在某些文件上遇到以下错误,有些文件正常工作。
java.lang.IllegalArgumentException:stream [0]不是视频 在com.xuggle.mediatool.MediaWriter.encodeVideo(MediaWriter.java:754) 在com.xuggle.mediatool.MediaWriter.encodeVideo(MediaWriter.java:783) 在com.xuggle.mediatool.MediaWriter.onVideoPicture(MediaWriter.java:1434) 在com.xuggle.mediatool.AMediaToolMixin.onVideoPicture(AMediaToolMixin.java:166) 在com.xuggle.mediatool.MediaReader.dispatchVideoPicture(MediaReader.java:610) 在com.xuggle.mediatool.MediaReader.decodeVideo(MediaReader.java:519) 在com.xuggle.mediatool.MediaReader.readPacket(MediaReader.java:475) 在audioextractor.AudioExtractor.main(AudioExtractor.java:108)
提取16位WAV文件的最佳编解码器是什么。
请帮我找到这两个问题的答案。