[MEncoder-users] mencoder -> x264 ?

Bob Tennent rdtennent at gmail.com
Tue Jun 22 08:58:10 CEST 2010


 >|I've been using
 >|>
 >|> mencoder $FILE.mpg -o $FILE.mp4 -oac mp3lame -ovc x264
 >|
 >|> to compress output from a TV capture card. 
 >|
 >|This will not create an mp4 file, regardless if you give it an mp4
 >|extension or not. It'll be plain avi with an mp4 extension. If you
 >|want true mp4, use -of lavf with mencoder and encode without b-frames
 >|(as mencoder is broken when using b-frames with the lavf muxer).
 >|Better yet, encode to avi (or raw) and use mp4box from gpac to mux
 >|into mp4

I probably don't need mp4; handbrake uses the .mp4 extension so that's
what I did.

 >|> But the mplayer package on my system has just been updated from
 >|>
 >|> mplayer-1.0-74_snap20100403.fc12
 >|>
 >|> to
 >|>
 >|> mplayer-1.0-76_snap20100619.fc12
 >|>
 >|> and now x264 is not listed by mencoder -ovc help. Was the binary
 >|> package not built correctly?

 >|Your problem is that the packager has not built mplayer with libx264
 >|support thus it won't show up in -ovc help. Either bug the packager
 >|to correct his silly mistake or download x264 from git and mplayer
 >|from svn and compile them yourself

I added --enable-x264 to the configure. The compilations went well but the
linking fails:

  libmpcodecs/ve_x264.o: In function `put_image':
  ve_x264.c:(.text+0x1f9): undefined reference to `x264_encoder_encode'
  libmpcodecs/ve_x264.o: In function `x264enc_set_param':
  ve_x264.c:(.text+0x373): undefined reference to `x264_param_default_preset'
  ve_x264.c:(.text+0x539): undefined reference to `x264_param_apply_profile'
  ve_x264.c:(.text+0x59a): undefined reference to `x264_param_default'
  ve_x264.c:(.text+0x5b5): undefined reference to `x264_param_apply_fastfirstpass'
  ve_x264.c:(.text+0x5ce): undefined reference to `x264_param_parse'
  libmpcodecs/ve_x264.o: In function `config':
  ve_x264.c:(.text+0x78a): undefined reference to `x264_param_parse'
  ve_x264.c:(.text+0x7e2): undefined reference to `x264_encoder_open_92'
  ve_x264.c:(.text+0x848): undefined reference to `x264_param_default'
  ve_x264.c:(.text+0x874): undefined reference to `x264_encoder_headers'
  libmpcodecs/ve_x264.o: In function `control':
  ve_x264.c:(.text+0x947): undefined reference to `x264_encoder_delayed_frames'
  ve_x264.c:(.text+0x98a): undefined reference to `x264_encoder_encode'
  ve_x264.c:(.text+0x9ef): undefined reference to `x264_encoder_delayed_frames'
  libmpcodecs/ve_x264.o: In function `uninit':
  ve_x264.c:(.text+0x12c): undefined reference to `x264_encoder_close'

Here's what I have that's x264-related on my system:

x264-devel-0.92-12_20100401.2245.fc12.i686
x264-0.92-12_20100401.2245.fc12.i686
libx264_92-0.92-12_20100401.2245.fc12.i686

Are more recent versions needed?






More information about the MEncoder-users mailing list