[vlc-devel] Re: files encoded to x264 with mencoder fail to stream with vlc
liontooth at cogweb.net
Sun Mar 26 22:13:57 CEST 2006
Måns Rullgård wrote:
> David Liontooth <liontooth at cogweb.net> writes:
>> A couple of weeks ago I reported to this list that files encoded to
>> h264 by mencoder failed to display properly when played back on amd64
>> vlc on Linux.
>> People pointed out VLC supports h264 through the x264 project, and I
>> rebuilt VLC and x264 from source. This in fact solved the problem; on
>> this version, files encoded to h264 using mencoder display correctly
>> on amd64 vlc.
> This must have been a coincidence. x264 is only an encoder. VLC uses
> ffmpeg's libavcodec for decoding H.264.
I rebuilt agains Marillat's more recent ffmpeg. The problem is ffmpeg is
currently being held up in Debian.
>> However, when these same files (mencoder-encoded h264 files) are
>> streamed, they don't display properly on any platform. A streaming
>> sample is available if someone is open to looking at it. The picture
>> is incredibly blocky, freezes, and so on. I've tested reception on
>> Linux amd64, i386, and Winxp i386 and there's no difference.
>> In contrast, files encoded to h264 by ffmpeg stream perfectly.
> Both ffmpeg and mencoder use x264 to encode H.264. Run "strings" on
> files encoded with both. One of the first few lines should show all
> the settings used and the version of x264. If you post those lines
> here maybe someone can tell why only one of them works.
In my version, mencoder uses x264 core 43, and ffmpeg core 44. Could
this make the difference?
The strings command also shows a hundred lines of junk early on in the
mencoder-encoded file; could this throw VLC off when streaming?
Bear in mind these files all play fine on VLC locally; it's just that
the mencoder-encoded files stream messed up.
These files are encoded on amd64, but stream messed up also when
streamed from i386.
Encoded with mencoder (plays fine, but streams all messed up:
[= MPlayer junk data! =][= MPlayer junk data! =][= MPlayer junk data! =]
<snip -- around 40 lines like this, then 70 lines of random stuff as
x264 - core 43 - H.264/MPEG-4 AVC codec - Copyleft 2005 -
l - options: cabac=1 ref=4 deblock=1:0:0 analyse=0x3:0x113 me=hex
subme=6 brdo=0 mixed_ref
=0 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 chroma_qp_offset=0
b_pyramid=0 b_adapt=1 b_bias=0 direct=2 wpredb=0 bime=0 keyint=250
40 pass=2 bitrate=800 ratetol=1.0 rceq='blurCplx^(1-qComp)' qcomp=0.60
qpmin=10 qpmax=51 q
pstep=2 cplxblur=20.0 qblur=0.5 ip_ratio=1.40 pb_ratio=1.30
Encoded with ffmpeg (plays and streams fine):
x264 - core 44 - H.264/MPEG-4 AVC codec - Copyleft 2005 -
l - options: cabac=0 ref=1 deblock=0:0:0 analyse=0x1:0 me=dia subme=6
brdo=0 mixed_ref=0 m
e_range=4 chroma_me=0 trellis=0 8x8dct=0 cqm=0 chroma_qp_offset=0
slices=1 nr=0 bframes=0
keyint=12 keyint_min=7 scenecut=0 rc=abr bitrate=600 ratetol=6.7
50 qpmin=2 qpmax=31 qpstep=3 ip_ratio=1.25
This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://developers.videolan.org/lists.html
More information about the vlc-devel