| Branch: | Revision:

ffmpeg / libavcodec / svq3.c @ 2264c110

History | View | Annotate | Download (39.7 KB)

# Date Author Comment
2264c110 05/05/2011 01:43 PM Baptiste Coudurier

SVQ3: do not modify const input buffer
Signed-off-by: Michael Niedermayer <>

b0e7a932 05/05/2011 01:43 PM Baptiste Coudurier

SVQ3: Check that things match up after a frame.
Signed-off-by: Michael Niedermayer <>

8811679c 05/05/2011 01:43 PM Baptiste Coudurier

SVQ3: Move svq3 specific fields to their own context.
Signed-off-by: Michael Niedermayer <>

ce5e49b0 05/02/2011 02:41 PM Stefano Sabatini

replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*

301183d9 05/02/2011 02:41 PM Stefano Sabatini

replace deprecated av_get_pict_type_char() with av_get_picture_type_char()

d7e5aeba 04/27/2011 01:51 AM Michael Niedermayer

Merge remote branch 'qatar/master'

  • qatar/master: (23 commits)
    ac3enc: correct the flipped sign in the ac3_fixed encoder
    Eliminate pointless '#if 1' statements without matching '#else'.
    Add AVX FFT implementation.
    Increase alignment of av_malloc() as needed by AVX ASM....
e7021c0e 04/26/2011 06:16 AM Anton Khirnov

lavc: remove FF_API_HURRY_UP cruft

f0a41afd 04/18/2011 04:23 PM Diego Biurrun

Replace URLs by

f3543969 04/03/2011 12:28 AM Michael Niedermayer

Merge remote branch 'qatar/master'

  • qatar/master:
    Fixed-point MDCT with 32-bit unscaled output
    lavc: deprecate rate_emu
    lavc: mark hurry_up for removal on next major bump
    parser: mark av_parser_parse() for removal on next major bump
    lavc: add missing audioconvert includes...
8ed2ae09 04/02/2011 02:17 PM Anton Khirnov

lavc: mark hurry_up for removal on next major bump

It has been deprecated for about five years, skip_idct/skip_frame should
be used instead.

2912e87a 03/19/2011 01:33 PM Mans Rullgard

Replace FFmpeg with Libav in licence headers

Signed-off-by: Mans Rullgard <>

d23e3e5f 01/30/2011 02:41 AM Ronald S. Bultje

Move ff_emulated_edge_mc() into DSPContext.
(cherry picked from commit 2e279598793133ee9c57fd0026d672f076fde4bf)

2e279598 01/29/2011 03:13 AM Ronald S. Bultje

Move ff_emulated_edge_mc() into DSPContext.

e7e2df27 01/28/2011 02:15 AM Diego Elio Pettenò

Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.

None of these symbols should be accessed directly, so declare them as

Signed-off-by: Mans Rullgard <>
(cherry picked from commit d36beb3f6902b1217beda576aa18abf7eb72b03c)

d36beb3f 01/26/2011 04:08 PM Diego Elio Pettenò

Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.

None of these symbols should be accessed directly, so declare them as

Signed-off-by: Mans Rullgard <>

772225c0 01/21/2011 07:36 PM Ronald S. Bultje

Revert 2a1f431d38ea9c05abb215d70c7dc09cdb6888ab, it broke H264 lossless.
(cherry picked from commit 66c6b5e2a5e6376c4a5c65b1d96fd7a1580bdfcf)

66c6b5e2 01/20/2011 10:24 PM Ronald S. Bultje

Revert 2a1f431d38ea9c05abb215d70c7dc09cdb6888ab, it broke H264 lossless.

2a1f431d 01/15/2011 01:10 AM Jason Garrett-Glaser

H.264/SVQ3: make chroma DC work the same way as luma DC
No speed improvement, but necessary for some future stuff.
Also opens up the possibility of asm chroma dc idct/dequant.

Originally committed as revision 26349 to svn://

290fabc6 01/15/2011 12:41 AM Jason Garrett-Glaser

Port SVQ3 to use the new mb_luma_dc method of storing luma DC coefficients.
Doesn't help speed as there isn't an asm implementation yet, but consistency
is a good thing.

Originally committed as revision 26348 to svn://

2e186601 01/14/2011 10:23 PM Jason Garrett-Glaser

Fix SVQ3
Regression in r26336-7.

Originally committed as revision 26341 to svn://

19fb234e 01/14/2011 09:34 PM Jason Garrett-Glaser

H.264: split luma dc idct out and implement MMX/SSE2 versions
About 2.5x the speed.

NOTE: the way that the asm code handles large qmuls is a bit suboptimal.
If x264-style dequant was used (separate shift and qmul values), it might
be possible to get some extra speed....

0f016023 12/15/2010 12:22 AM Alexander Strange

SVQ3: Allow decoding if thread_count is > 1

svq3 still doesn't support multithreading, but it's simpler for clients if
they can enable threading for all codecs by default.

Originally committed as revision 26015 to svn://

891263ef 06/15/2010 10:38 PM Baptiste Coudurier

Fix svq3 watermark log uncompress on 64bit, probably fixes issue 1263

Originally committed as revision 23620 to svn://

ba87f080 04/20/2010 02:45 PM Diego Biurrun

Remove explicit filename from Doxygen @file commands.

Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://

72415b2a 03/30/2010 11:30 PM Stefano Sabatini

Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://

3b606e71 02/25/2010 06:41 PM Michael Niedermayer

svq3 now in working condition, at least vissually, ill let fate tell us
if the checksums match

Originally committed as revision 22061 to svn://

fc7f7f17 02/25/2010 06:39 PM Michael Niedermayer

fix compilation, sorry ive not checked cvslog for a while :(((
svq3 decoder does not work yet though but i didnt want to keep compilation
broken longer

Originally committed as revision 22060 to svn://

881b5b80 01/27/2010 10:22 PM Rafaël Carré

Fix svq3_* function declarations.

Patch by Rafaël Carré, rafael D carre A gmail

Originally committed as revision 21489 to svn://

7817ddab 01/19/2010 03:16 AM Jai Menon

Apply changes made in r21308 to svq3.c.
Fixes compilation with gcc and -O0.

Originally committed as revision 21316 to svn://

188d3c51 01/12/2010 09:36 PM Michael Niedermayer

Split motion vector prediction off h264.c/h.

Originally committed as revision 21174 to svn://

2bedc0e8 01/12/2010 09:17 PM Michael Niedermayer

Move check_intra4x4_pred_mode() back from h264.h to h264.c, the function is just
called once per MB in worst case and doesnt seem to benefit from static inline.
Actually the code might be a hair faster now (0.1% according to my benchmark but
this could be random noise)...

903d58f6 01/12/2010 05:30 AM Michael Niedermayer

Get rid of #include "svq3.c"
functions called more than per mb are moved into the header, scan8 is also
as it must be known at compiletime.
The code after this patch duplicates h264data.h, this has been done to minimize
the changes in this step and allow more fine grained benchmarking....

94621d32 12/12/2009 05:10 PM Jai Menon

SVQ3 : Set avctx->pix_fmt correctly during decoder initialisation.
Fixes issue 1591.

Originally committed as revision 20810 to svn://

2917367c 10/19/2009 06:44 PM Stefano Sabatini

Add additional long names for the Sorenson Vector Quantizer 3 decoder.

Originally committed as revision 20316 to svn://

e43198af 09/09/2009 09:44 PM Michael Niedermayer

Check thread count as multithreaded decoding is not supported.
Fixes issue1292

Originally committed as revision 19801 to svn://

2ba83017 09/06/2009 04:09 PM Reimar Döffinger

Mark all pix_fmts and supported_framerates compound literals as const.
Makes no difference for gcc but at least icc can put them in .rodata then.

Originally committed as revision 19789 to svn://

faccfeec 08/04/2009 09:55 PM Ronald S. Bultje

Parse frame size code, see "svq3.c: parse frame size" thread on ML.

Originally committed as revision 19583 to svn://

87e302bf 05/30/2009 12:24 AM Baptiste Coudurier

remove unused hack which set AVCodecContext frame_number to pic timestamp

Originally committed as revision 18988 to svn://

7a00bbad 04/07/2009 03:59 PM Thilo Borgmann

Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames....

db794291 03/01/2009 12:11 PM Måns Rullgård

SVQ3: Fix decoding with A32_BITSTREAM_READER

svq3_decode_slice_header() modifies the buffer used by the bitstream
reader. Some of the bitstream readers cache a few bytes of data, which
must be flushed after such a modification. Calling skip_bits_long(gb, 0)...

4d8f8301 02/24/2009 10:19 PM Michael Niedermayer

1000l for me, wrong pix_fmt.

Originally committed as revision 17573 to svn://

09a9b45e 02/24/2009 06:27 PM Michael Niedermayer

Add and use ff_pixfmt_list_420.

Originally committed as revision 17564 to svn://

5ef251e5 02/22/2009 01:48 PM Daniel Verkamp

Add missing av_cold in static init/close functions.

Patch by Daniel Verkamp daniel at drv dot nu.

Originally committed as revision 17526 to svn://

bad5537e 02/01/2009 02:00 AM Diego Biurrun

Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://

406792e7 01/19/2009 03:46 PM Diego Biurrun

cosmetics: Remove pointless period after copyright statement non-sentences.

Originally committed as revision 16684 to svn://

b250f9c6 01/13/2009 11:44 PM Aurelien Jacobs

Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://

ddaf298c 12/25/2008 03:49 PM Diego Biurrun

Fix sample URL.

Originally committed as revision 16309 to svn://

2a5a9c28 12/18/2008 11:01 AM Michael Niedermayer

10l, svq3 didnt set h->cbp, this broke decoding a little.

Originally committed as revision 16214 to svn://

54dab661 12/17/2008 03:41 AM Michael Niedermayer

Fix svq3 decoding, is_complex was not initialized.

Originally committed as revision 16184 to svn://

f4cca718 11/24/2008 06:49 PM Baptiste Coudurier

move decoder initialization in separate function, earlier failure detection

Originally committed as revision 15929 to svn://

76de302d 11/22/2008 04:36 PM Diego Biurrun

cosmetics: indentation, prettyprinting

Originally committed as revision 15908 to svn://

7f8205da 11/22/2008 04:03 PM Diego Biurrun

cosmetics: consistent function declarations

Originally committed as revision 15907 to svn://

7d1b1582 11/22/2008 03:57 PM Diego Biurrun

cosmetics: Put statements after 'if' on their own line.

Originally committed as revision 15906 to svn://

2be3fe39 10/28/2008 11:11 PM Diego Biurrun

Add the function declaration of ff_svq1_packet_checksum to svq1.h and include
svq1.h where this function is used. Fixes the warning:
libavcodec/svq3.c:862: warning: implicit declaration of function ‘ff_svq1_packet_checksum’

Originally committed as revision 15737 to svn://

c4864924 10/26/2008 11:41 PM Baptiste Coudurier

svq3 watermark code now needs zlib

Originally committed as revision 15719 to svn://

1e002b60 10/26/2008 11:34 PM Baptiste Coudurier

svq3 watermark decoding support, based on reverse engineering work by chrono

Originally committed as revision 15718 to svn://

bee764ec 10/25/2008 05:17 PM Aurelien Jacobs

svq3: remove unused include

Originally committed as revision 15709 to svn://

e46a9827 10/14/2008 08:42 PM Michael Niedermayer

Include zlib.h as it is needed for watermark support,
patch by baptiste based on reverse engineering work by chrono.

Originally committed as revision 15618 to svn://

9dff86c6 07/16/2008 05:54 PM Michael Niedermayer

10000l, revert
The funny memcpyin svq3 generally has src & dst overlapping, so it
should at least be a memmove().
I was tired, they do not overlap.

Originally committed as revision 14259 to svn://

38844c0b 07/16/2008 02:10 AM Michael Niedermayer

The funny memcpyin svq3 generally has src & dst overlapping, so it
should at least be a memmove().

Originally committed as revision 14254 to svn://

fb0fbd7c 07/16/2008 01:57 AM Michael Niedermayer

Print slice num as well.

Originally committed as revision 14253 to svn://

54347c2f 07/14/2008 04:18 PM Michael Niedermayer

Fix infinite loop at EOF.

Originally committed as revision 14231 to svn://

fe4bf374 06/12/2008 09:50 PM Stefano Sabatini

Make AVCodec long_names definition conditional depending on CONFIG_SMALL.

Originally committed as revision 13759 to svn://

5da1ab1a 05/11/2008 11:39 PM Alexander Strange

Previous commit missed an initialization - this fixes FATE's test sample.

Originally committed as revision 13131 to svn://

488aca9b 05/11/2008 08:26 PM Alexander Strange

Set and use h->mb_xy in SVQ3 too.

Originally committed as revision 13129 to svn://

162d4fc9 04/27/2008 10:39 PM Stefano Sabatini

Add long names to AVCodec declarations.
patch by Stefano Sabatini, stefano.sabatini-lala poste it

Originally committed as revision 13009 to svn://

9701840b 03/09/2008 11:31 PM Aurelien Jacobs

add FF_ prefix to all (frame)_TYPE usage

Originally committed as revision 12399 to svn://

30317501 02/01/2008 02:35 AM Michael Niedermayer


Originally committed as revision 11705 to svn://

c92a30bb 09/05/2007 05:30 AM Kostya Shishkov

Move H.264 intra prediction functions into their own context

Originally committed as revision 10397 to svn://

3a5729ea 08/09/2007 01:08 AM Alex Beregszaszi

use skip_bits where appropriate

Originally committed as revision 10005 to svn://

5fc32c27 08/09/2007 12:13 AM Alex Beregszaszi

use get_bits1(..) instead get_bits(.., 1)

Originally committed as revision 9999 to svn://

4691a77d 07/06/2007 02:21 PM Andreas Öman

Add support for streams with different chroma_qp_index_offset
for Cr and Cb
Patch by Andreas Öman % andreas A olebyn P nu %
Original thread:
Date: Jun 26, 2007 8:48 PM
subject: [FFmpeg-devel] Color corruption and seeking errors with H264 disc sources

Originally committed as revision 9505 to svn://

e5a389a1 07/05/2007 10:40 AM Diego Biurrun

license header consistency cosmetics

Originally committed as revision 9484 to svn://

755bfeab 06/12/2007 09:29 AM Diego Biurrun

misc spelling fixes

Originally committed as revision 9289 to svn://

154e30f6 05/30/2007 09:32 AM Carl Eugen Hoyos

rename attribute_unused to av_unused and moves its declaration to common.h
patch by Carl Eugen Hoyos cehoyos chez ag or at
original thread: [FFmpeg-devel] [PATCH] attribute_unused -> av_unused
date: 05/29/2007 01:23 PM

Originally committed as revision 9155 to svn://

a1f6643d 05/14/2007 11:22 PM Michael Niedermayer

dont write over the end of ref_cache

Originally committed as revision 9026 to svn://

e36d79c8 05/14/2007 02:07 PM Reimar Döffinger

Change some leftover attribute((unused)) and attribute((used)) to

attribute_unused and attribute_used respectively to ease compiling on non-gcc.

Originally committed as revision 9024 to svn://

f66e4f5f 02/25/2007 10:27 AM Reimar Döffinger

Add av_ prefix to clip functions

Originally committed as revision 8122 to svn://

0c74098b 01/24/2007 11:20 AM Michael Niedermayer

crash fix by Carl Eugen Hoyos cehoyos ag.or at

Originally committed as revision 7684 to svn://

2c160320 01/24/2007 12:54 AM Michael Niedermayer

maybe fix segfault with missing extradata (unchecked)

Originally committed as revision 7677 to svn://

fead30d4 01/19/2007 10:12 PM Alex Beregszaszi

rename BE/LE_8/16/32 to AV_RL/B_8/16/32

Originally committed as revision 7587 to svn://

55fde95e 11/12/2006 08:08 PM Måns Rullgård

rename cropTbl -> ff_cropTbl

Originally committed as revision 6992 to svn://

b78e7197 10/07/2006 03:30 PM Diego Biurrun

Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://

5509bffa 01/12/2006 10:43 PM Diego Biurrun

Update licensing information: The FSF changed postal address.

Originally committed as revision 4842 to svn://

bb270c08 12/22/2005 01:10 AM Diego Biurrun

COSMETICS: tabs --> spaces, some prettyprinting

Originally committed as revision 4764 to svn://

115329f1 12/17/2005 06:14 PM Diego Biurrun

COSMETICS: Remove all trailing whitespace.

Originally committed as revision 4749 to svn://

63d33cf4 12/17/2005 11:31 AM Michael Niedermayer

bitstream related fixes from [PATCH] from DivX, Part 9: bitstream crashes by (Steve Lhomme | slhomme divxcorp com)

Originally committed as revision 4747 to svn://

8c3eba7c 07/14/2005 09:39 PM Michael Niedermayer


Originally committed as revision 4440 to svn://

5bb8a0da 04/18/2005 12:08 PM Michael Niedermayer

various fixes related to the non alt_bitstream_reader

Originally committed as revision 4136 to svn://

934982c4 01/23/2005 06:09 PM Michael Niedermayer

avoid buf_size == 0 checks in every decoder

Originally committed as revision 3872 to svn://

884182b3 01/23/2005 05:59 PM Michael Niedermayer

more detailed error messages

Originally committed as revision 3871 to svn://

cbf5374f 06/19/2004 01:25 AM Michael Niedermayer

1000l to myself for FFMIN instead of ...,6)
some more checks

Originally committed as revision 3238 to svn://

6258c7e6 06/19/2004 12:10 AM Michael Niedermayer

segfault fix

Originally committed as revision 3236 to svn://

53db1cae 05/21/2004 02:37 PM Michael Niedermayer

data_size = 0 cleanup

Originally committed as revision 3146 to svn://

ee59b4b6 03/14/2004 03:04 PM Mike Melanson

don't fetch the size of SEQH unless SEQH was found

Originally committed as revision 2888 to svn://

3a278992 03/14/2004 04:04 AM Mike Melanson

remove numerous definitions of BE_*/LE_* macros; convert FOURCC_TAG ->

Originally committed as revision 2886 to svn://

ebcd2f96 03/13/2004 09:26 PM Mike Melanson

be smarter about the variable size of the extra SVQ3 data

Originally committed as revision 2881 to svn://

14284f78 03/13/2004 08:07 PM Mike Melanson

smarten up the SVQ3 extradata decoder without changing the external API

Originally committed as revision 2878 to svn://

303e50e6 01/22/2004 07:48 PM Michael Niedermayer

closed gop support & flags2 as all bits in flags are used
and a few minor things i forgot to commit ...

Originally committed as revision 2718 to svn://

4ff7c576 12/18/2003 11:44 PM Mike Melanson

SVQ3 uses unrestricted motion vectors

Originally committed as revision 2626 to svn://