2012-04-13 13 views
0

Ich versuche, Jave zu verwenden, um eine WMV-Datei in h264 (mp4) zu konvertieren. Die endgültige Version, die von Jave erstellt wurde, spielt mit dem VLC-Player einwandfrei, aber wenn ich versuche, sie innerhalb des HTML5-Video-Tags zu verwenden, kann sie die Datei nicht abspielen.Transcoding wmv-Datei zu mp4 mit Jave

Ich vermute, dass das Problem mit den Attributen ist, die ich für die Videoattribute einstelle.

Java-Code:

videoAttributes.setCodec("mpeg4"); 
    videoAttributes.setTag("mpeg4"); 
    videoAttributes.setBitRate(new Integer(5000)); 
    videoAttributes.setFrameRate(new Integer(30)); 
    videoAttributes.setSize(new VideoSize(512, 384)); 
    encodingAttributes.setVideoAttributes(videoAttributes); 
    encodingAttributes.setFormat("mp4"); 

HTML-Code:

<video controls="true" width=400 height=200> 
     <source src="path_to_converted_mp4_file" type="video/mp4" /> 
     Not Supported 
    </video> 

Antwort

1

Sie wissen nicht, wie Jave Codecs identifiziert, aber wenn es die gleiche Namensgebung wie FFmpeg verwendet dann der Codec für HTML5 sollte libx264 sein . Der mpeg4 Codec ist "MPEG-4 Part 2" nach ffmpeg -codecs.

./ffmpeg -codecs | grep -e mpeg4 -e 264 
    D V D h264   H.264/AVC/MPEG-4 AVC/MPEG-4 part 10 
    EV libx264   libx264 H.264/AVC/MPEG-4 AVC/MPEG-4 part 10 
    EV libx264rgb  libx264 H.264/AVC/MPEG-4 AVC/MPEG-4 part 10 RGB 
    DEVSDT mpeg4   MPEG-4 part 2 
    DEVSD msmpeg4   MPEG-4 part 2 Microsoft variant version 3 
    D VSD msmpeg4v1  MPEG-4 part 2 Microsoft variant version 1 
    DEVSD msmpeg4v2  MPEG-4 part 2 Microsoft variant version 2 
0

Nach der JAVE Dokumentation der Name des Formats ist "mp4" nicht "MPEG-4"