[FFmpeg-devel] new open source h.264 source

Michael Niedermayer michaelni
Sun Mar 2 01:25:34 CET 2008


On Sat, Mar 01, 2008 at 11:11:24AM -0500, Francois Oligny-Lemieux wrote:
> On Fri, Feb 29, 2008 at 7:58 PM, Michael Niedermayer <michaelni at gmx.at>
> wrote:
> 
> > On Fri, Feb 29, 2008 at 02:18:12PM -0500, Francois Oligny-Lemieux wrote:
> > > On 2/20/08, Michael Niedermayer <michaelni at gmx.at> wrote:
> > > >
> > > >
> > > > Speaking of deblocking, our filter_mb_fast() is buggy it butchers some
> > of
> > > > the reference streams. Iam just mentioning that before someone wastes
> > time
> > > > optimizing buggy code ... he should fix it first :)
> > > >
> > > > [...]
> > >
> > >
> > >
> > > Last week I found out when I decode a stream with high gop size (300) +
> > > deblocking filter on + MBAFF, I get some blocky artefacts on the decoded
> > > picture (when using ffmpeg to decode). If I turn off MBAFF it works
> > fine. If
> > > I turn off deblocking it works fine. Using JM12.2 as a reference decoder
> > > shows that the original stream can be decoded successfully without
> > > artefacts.
> > >
> > > Do you think it's the same problem as in the filter_mb_fast() ? Most of
> > the
> > > code in filter_mb_fast is about non-MBAFF.
> > >
> > > Any hint how to debug this?
> >
> > The standard way to debug decoder differences between ff and JM is to have
> > both output raw YUV and then search for the first differing byte, after
> > that
> > find out in what MB that is and add printf() av_log() as needed until you
> > find out where JM and ff diverge for that MB. (it should be somewhere in
> > the loop filter according to your description) Last you then look in the
> > spec to see how the specific part should be done, fix it and send a patch.
> >
> 
> Thanks! this is exactly what I needed.
> 
> 
> > I'm trying to see if the lastest ffmpeg svn has
> > > this problem but I can't decode my h.264 file to .yuv (see below)
> > >
> > > I can supply a sample .ts file if needed or .264 annex b.
> > >
> > > BTW I know this is user related question, but when building ffmpeg as-is
> > > from svn with cygwin, I cannot get to take h264 .ts nor .264 files and
> > > output .yuv files, it responds with:
> > >
> > > ...
> > > [rawvideo @ 0x7606f0]dimensions not set.
> > > Could not write header for output file #0
> > >
> > > Is it my build that's corrupted or this is expected ?
> >
> > what command line did you use and what was the complete and uncut output
> > from ffmpe?
> 
> 
> 
> Here is the command line and the output. Note that the series of "non
> existing PPS referenced" is normal and is due to having a long gop size and
> the file not begining on an I frame (and the SPS is only sent before an I
> frame).
> 
> Also note that I get the same failure when trying with the .264 version as a
> source.
> 
> $ ./ffmpeg -i /cygdrive/g/qa_haiPLAY_2.0.2.2/hm4ed_ts\(mbaff\)_001.ts
> out.yuv
> FFmpeg version SVN-r12279, Copyright (c) 2000-2008 Fabrice Bellard, et al.
>   configuration:
>   libavutil version: 49.6.0
>   libavcodec version: 51.50.1
>   libavformat version: 52.7.0
>   libavdevice version: 52.0.0
>   built on Feb 29 2008 11:08:39, gcc: 3.4.4 (cygming special, gdc 0.12,
> using dm
> d 0.125)
> [h264 @ 0x754540]non existing PPS referenced
> [h264 @ 0x754540]decode_slice_header error

try a larger -analyzeduration

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Observe your enemies, for they first find out your faults. -- Antisthenes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080302/d4b0fa73/attachment.pgp>



More information about the ffmpeg-devel mailing list