on their grouping, create one loop that indexes into a table of AC VLC
tables.
There is also a small optimization here: Do not call unpack_vlcs()
if there are no fragments in the list with outstanding coefficients.
My profiling indicates that this can save upwards of 1 million
dezicycles per frame throughout the course of unpack_dct_coeffs().
Originally committed as revision 20699 to svn://svn.ffmpeg.org/ffmpeg/trunk
outstanding coefficients yet to be decoded from the bitstream. Once a
fragment reaches end-of-block, remove it from this new list. This change
makes the VP3/Theora entropy decode process dramatically faster due to
not having to iterate incessantly over fragments which have already been
fully decoded.
Originally committed as revision 20698 to svn://svn.ffmpeg.org/ffmpeg/trunk
This fixes seeking in files > 2gb.
Patch by Sean Soria, sean dot soria at gmail dot com.
Originally committed as revision 20693 to svn://svn.ffmpeg.org/ffmpeg/trunk
resolution. A sample file to show a difference is at issue833 (http://airfarce.com/video/000211fh.rm)
Originally committed as revision 20691 to svn://svn.ffmpeg.org/ffmpeg/trunk
difference, so make all read packets store absolute timestamp.
As a consequence, we don't need to track audio/video timestamps separately
any longer in protocol handler.
Originally committed as revision 20685 to svn://svn.ffmpeg.org/ffmpeg/trunk
Flipping one bit still is popular it seems as a means to create a new codec.
fixes issue1469.
Originally committed as revision 20679 to svn://svn.ffmpeg.org/ffmpeg/trunk
The init functions of mpc7 and mpc8 check whether the vlc has been
initialized already and return early if this is the case (eg by calling
init a second time).
But avctx->sample_fmt and channel_layout is set after the vlc initialization,
causing it not to be set on the second call of init.
Move all manipulations of avctx before the initialization of the vlc,
so that it is always set.
Originally committed as revision 20668 to svn://svn.ffmpeg.org/ffmpeg/trunk
This avoids symbol redefinitions problems, for example avoids the "free"
symbol to be redefined before system headers actually using it are
included, thus breaking compilation. In particular this change allows
to build FFmpeg with salsa.
Patch by matthieu castet <$surname.mat?hieu@free fr>.
Originally committed as revision 20665 to svn://svn.ffmpeg.org/ffmpeg/trunk
draw_slice().
The chroma values to use are supposed to be those of the input format,
not that of the output format, the latter case was causing crashes and
chroma issues.
Originally committed as revision 20660 to svn://svn.ffmpeg.org/ffmpeg/trunk
The assumption depends on the corresponding assumption done by
sws_scale() and by the scale filter.
Originally committed as revision 20655 to svn://svn.ffmpeg.org/ffmpeg/trunk
New code also allocates a dummy frame for an p field after an i field,
previously that could segfault due to reading from NULL+x.
Originally committed as revision 20653 to svn://svn.ffmpeg.org/ffmpeg/trunk