如何使用Java将.webm转换为.mp4?
我想将视频从.webm转换为.mp4。我尝试过Java库JAVE(Java音频视频编码器)。这是我使用Jave的代码:如何使用Java将.webm转换为.mp4?,java,mp4,webm,video-conversion,jave,Java,Mp4,Webm,Video Conversion,Jave,我想将视频从.webm转换为.mp4。我尝试过Java库JAVE(Java音频视频编码器)。这是我使用Jave的代码: File source = new File("C:\\Development\\workspace\\java-project\\video.webm"); File target = new File("C:\\Development\\workspace\\java-project\\video.mp4"); Encoder encoder = new
File source = new File("C:\\Development\\workspace\\java-project\\video.webm");
File target = new File("C:\\Development\\workspace\\java-project\\video.mp4");
Encoder encoder = new Encoder();
AudioAttributes audio = new AudioAttributes();
audio.setCodec("libmp3lame");
audio.setBitRate(new Integer(64000));
audio.setChannels(new Integer(1));
audio.setSamplingRate(new Integer(22050));
VideoAttributes video = new VideoAttributes();
video.setCodec("mpeg4");
video.setBitRate(new Integer(160000));
video.setFrameRate(new Integer(15));
video.setSize(new VideoSize(400, 300));
EncodingAttributes attrs = new EncodingAttributes();
attrs.setFormat("mp4");
attrs.setAudioAttributes(audio);
attrs.setVideoAttributes(video);
try {
encoder.encode(source, target, attrs);
} catch (EncoderException e) {
e.printStackTrace();
}
如果我像“source”一样使用video.avi或.flv,但使用的是.webm nothing,那么这个代码段就可以工作了!我做错了什么?我能做什么?JAVE。您的ffmpeg安装是否支持WEBM文件?您是否尝试使用
audio.setCodec(AudioAttributes.DIRECT\u STREAM\u COPY)代码>?是的,但是使用这个方法(audio.setCodec(AudioAttributes.DIRECT_STREAM_COPY);)我做不到
import com.xuggle.mediatool.IMediaReader;
import com.xuggle.mediatool.IMediaViewer;
import com.xuggle.mediatool.IMediaWriter;
import com.xuggle.mediatool.ToolFactory;
public class XuggleApiTest {
private static final String inputFilename = "filepath/filename.webm";
private static final String outputFilename = "filepath/filename.mp4";
public static void main(String[] args) {
IMediaReader mediaReader =
ToolFactory.makeReader(inputFilename);
IMediaWriter mediaWriter =
ToolFactory.makeWriter(outputFilename, mediaReader);
mediaReader.addListener(mediaWriter);
IMediaViewer mediaViewer = ToolFactory.makeViewer(true);
mediaReader.addListener(mediaViewer);
while (mediaReader.readPacket() == null) ;
}
}