Statistics
| Branch: | Revision:

ffmpeg / libavcodec / ffv1.c @ 28a3f525

History | View | Annotate | Download (53.8 KB)

# Date Author Comment
28a3f525 10/26/2010 11:01 PM Michael Niedermayer

Read & write initial_states for ffv1

Originally committed as revision 25583 to svn://svn.ffmpeg.org/ffmpeg/trunk

99a5e935 10/26/2010 11:01 PM Michael Niedermayer

Add initial_states array to ffv1.

Originally committed as revision 25582 to svn://svn.ffmpeg.org/ffmpeg/trunk

672e7e39 10/26/2010 11:01 PM Michael Niedermayer

Add rc_stat2 to ffv1 this will be needed for finding good initial contexts in 2 pass mode.

Originally committed as revision 25581 to svn://svn.ffmpeg.org/ffmpeg/trunk

19721b23 10/26/2010 11:01 PM Michael Niedermayer

Optimize state initialization in ffv1 clear_state().

Originally committed as revision 25580 to svn://svn.ffmpeg.org/ffmpeg/trunk

c42c1007 10/26/2010 11:01 PM Michael Niedermayer

Only allocate stats_out when needed in ffv1

Originally committed as revision 25579 to svn://svn.ffmpeg.org/ffmpeg/trunk

2a317c6b 10/26/2010 11:00 PM Michael Niedermayer

Factorize litteral constents in ffv1 into STATS_OUT_SIZE.

Originally committed as revision 25578 to svn://svn.ffmpeg.org/ffmpeg/trunk

349d7287 10/26/2010 11:00 PM Michael Niedermayer

Make 1pass statistic collection in ffv1 put_symbol_inline() conditional to avoid slowdown when more statistic collection code is added.

Originally committed as revision 25577 to svn://svn.ffmpeg.org/ffmpeg/trunk

fc3128c9 10/26/2010 01:59 AM Michael Niedermayer

Increase ffv1 encoding speed from 65 to 80 fps by forcing some inlining.

Originally committed as revision 25571 to svn://svn.ffmpeg.org/ffmpeg/trunk

e1f51b88 10/26/2010 01:59 AM Michael Niedermayer

Add quant_table_index to ffv1 PlaneContext and use it instead of duplicating the currents implementation of calculating it.

Originally committed as revision 25570 to svn://svn.ffmpeg.org/ffmpeg/trunk

ce3716bf 10/24/2010 04:55 PM Michael Niedermayer

Move ffv1 state transition table sorting to its own function.

Originally committed as revision 25563 to svn://svn.ffmpeg.org/ffmpeg/trunk

19591033 10/24/2010 12:35 PM Michael Niedermayer

Fix the case with swaping states 127 and 129 in ffv1

Originally committed as revision 25562 to svn://svn.ffmpeg.org/ffmpeg/trunk

98d2f7a4 10/24/2010 12:31 PM Michael Niedermayer

Optimize state transition table sorting in ffv1

Originally committed as revision 25561 to svn://svn.ffmpeg.org/ffmpeg/trunk

bc29ae4a 10/24/2010 12:31 PM Michael Niedermayer

2 pass mode for ffv1 to optimally order the range coder states.

Originally committed as revision 25560 to svn://svn.ffmpeg.org/ffmpeg/trunk

6019cd9f 10/24/2010 12:31 PM Michael Niedermayer

Factorize state_transition init out.

Originally committed as revision 25559 to svn://svn.ffmpeg.org/ffmpeg/trunk

c868524b 10/19/2010 05:26 PM Michael Niedermayer

Replace 5 by named constant MAX_CONTEXT_INPUTS in ffv1.c

Originally committed as revision 25529 to svn://svn.ffmpeg.org/ffmpeg/trunk

d721141f 10/16/2010 09:31 PM Michael Niedermayer

Move shared functions out of CONFIG_FFV1_ENCODER ifdef

Originally committed as revision 25511 to svn://svn.ffmpeg.org/ffmpeg/trunk

d56839fc 10/15/2010 02:05 AM Michael Niedermayer

Store slice position and size per keyframe in ffv1.2

Originally committed as revision 25478 to svn://svn.ffmpeg.org/ffmpeg/trunk

1da72577 10/14/2010 10:10 PM Michael Niedermayer

Fix indention of ffv1.c after previous commits.

Originally committed as revision 25477 to svn://svn.ffmpeg.org/ffmpeg/trunk

e42393d1 10/14/2010 10:03 PM Michael Niedermayer

Store quant table index per plane and slice.

Originally committed as revision 25476 to svn://svn.ffmpeg.org/ffmpeg/trunk

f08ed90d 10/14/2010 10:03 PM Michael Niedermayer

Assert that the context doesnt overflow in ffv1.

Originally committed as revision 25475 to svn://svn.ffmpeg.org/ffmpeg/trunk

e2b2f845 10/14/2010 10:03 PM Michael Niedermayer

Rectangular slice support for ffv1.2

Originally committed as revision 25474 to svn://svn.ffmpeg.org/ffmpeg/trunk

c5ac275b 10/10/2010 09:04 PM Michael Niedermayer

Allow storing multiple quant tables in extradata that can then be selected per keyframe in ffv1.

Originally committed as revision 25439 to svn://svn.ffmpeg.org/ffmpeg/trunk

0f27aca7 10/10/2010 09:04 PM Michael Niedermayer

Store global things in extradata for ffv1 ver=2.
ver=2 is not set yet so this does not affect output.

Originally committed as revision 25438 to svn://svn.ffmpeg.org/ffmpeg/trunk

228adaab 10/10/2010 09:04 PM Michael Niedermayer

Make sure version is not decreased for 16bit per sample colorspaces in ffv1.

Originally committed as revision 25437 to svn://svn.ffmpeg.org/ffmpeg/trunk

4f22b3bb 10/10/2010 09:04 PM Michael Niedermayer

Factorize quant table read and write code in ffv1.c

Originally committed as revision 25436 to svn://svn.ffmpeg.org/ffmpeg/trunk

cbabccc3 06/26/2010 03:53 PM Måns Rullgård

ffv1: remove VLAs

Originally committed as revision 23802 to svn://svn.ffmpeg.org/ffmpeg/trunk

741b5fd4 06/24/2010 03:22 PM Thad Ward

Set an opaque alpha value when decoding rgba ffv1.
Patch by Thad Ward coderjoe69¤yahoo°com

Originally committed as revision 23757 to svn://svn.ffmpeg.org/ffmpeg/trunk

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://svn.ffmpeg.org/ffmpeg/trunk

00bbc093 04/01/2010 06:51 PM Michael Niedermayer

Store range coder state transition table.
Use a better table, 2% compression gain for foreman

Originally committed as revision 22763 to svn://svn.ffmpeg.org/ffmpeg/trunk

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://svn.ffmpeg.org/ffmpeg/trunk

ef768b0c 03/22/2010 09:12 PM Michael Niedermayer

Disallow VLC coding with more than 8 bits as there are several bugs
in that code that could lead to broken files.
AC coding is unaffected.

Originally committed as revision 22638 to svn://svn.ffmpeg.org/ffmpeg/trunk

5d7bc46c 03/22/2010 03:04 PM Michael Niedermayer

Throw out last experimental warning that was printed for colorspaces with more than
8 bits per component. This does no good except scaring users away.

Originally committed as revision 22633 to svn://svn.ffmpeg.org/ffmpeg/trunk

0e22d688 03/22/2010 02:26 PM Michael Niedermayer

Remove the word "experimental"

Originally committed as revision 22629 to svn://svn.ffmpeg.org/ffmpeg/trunk

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://svn.ffmpeg.org/ffmpeg/trunk

7c6208d4 08/30/2009 09:19 PM Lars Täuber

Use "FFmpeg video codec #1" instead of "FFmpeg codec #1" as codec long name.
patch by Lars Täuber, lars.taeuber gmx net

Originally committed as revision 19749 to svn://svn.ffmpeg.org/ffmpeg/trunk

2fee538a 08/26/2009 09:25 PM Lars Täuber

Fix comments after switching from CABAC to range coder in r3658.

Patch by Lars Täuber, lars D taeuber A gmx D net

Originally committed as revision 19720 to svn://svn.ffmpeg.org/ffmpeg/trunk

84c1b149 08/14/2009 04:41 PM Carl Eugen Hoyos

Fix typo.

Originally committed as revision 19639 to svn://svn.ffmpeg.org/ffmpeg/trunk

f83c5773 04/24/2009 01:38 PM Michael Niedermayer

indent

Originally committed as revision 18679 to svn://svn.ffmpeg.org/ffmpeg/trunk

68f8d33b 04/24/2009 04:10 AM Michael Niedermayer

Support >8bit per component YUV in FFV1.
decoding becomes slower, encoding becomes faster, with gcc on duron.
some inlining overrides like av_flatten are added to keep inlining similar
to before.

Originally committed as revision 18674 to svn://svn.ffmpeg.org/ffmpeg/trunk

217d34e3 04/24/2009 01:50 AM Michael Niedermayer

Force speed irrelevant calls to get/put_symbol() to be noinline.
We need to change decode_line to always_inline because gcc decided not to inline
it anymore once we force some calls to get/put_symbol() to be non inlined and
this decision of gcc would lead to a 10% overall speed loss....

3788e661 04/24/2009 12:26 AM Michael Niedermayer

Optimize sign handling in get_symbol().

Originally committed as revision 18672 to svn://svn.ffmpeg.org/ffmpeg/trunk

223d996a 04/21/2009 12:00 PM Michael Niedermayer

Fix a possibly exploitable buffer overflow.

Originally committed as revision 18640 to svn://svn.ffmpeg.org/ffmpeg/trunk

6081c30b 04/17/2009 02:59 PM Michael Niedermayer

Remove 2 unneeded variables from common_init() found by CSA.

Originally committed as revision 18560 to svn://svn.ffmpeg.org/ffmpeg/trunk

9106a698 04/13/2009 04:20 PM Stefano Sabatini

Rename bitstream.h to get_bits.h.

Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk

b2755007 04/12/2009 08:35 AM Stefano Sabatini

Split bitstream.h, put the bitstream writer stuff in the new file
put_bits.h.

Originally committed as revision 18461 to svn://svn.ffmpeg.org/ffmpeg/trunk

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....

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://svn.ffmpeg.org/ffmpeg/trunk

199436b9 01/18/2009 10:57 PM Aurelien Jacobs

moves mid_pred() into mathops.h (with arch specific code split by directory)

Originally committed as revision 16681 to svn://svn.ffmpeg.org/ffmpeg/trunk

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://svn.ffmpeg.org/ffmpeg/trunk

f544a5fc 09/03/2008 12:33 PM Diego Biurrun

Replace generic CONFIG_ENCODERS preprocessor conditionals by more specific
CONFIG_FOO_ENCODER conditionals where appropriate.

Originally committed as revision 15174 to svn://svn.ffmpeg.org/ffmpeg/trunk

b3bf98aa 06/26/2008 04:39 PM Stefan Gehrer

move ff_log2_run to bitstream.c and reuse in ffv1.c

Originally committed as revision 13989 to svn://svn.ffmpeg.org/ffmpeg/trunk

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://svn.ffmpeg.org/ffmpeg/trunk

d1845b4c 05/24/2008 07:19 AM Carl Eugen Hoyos

Fix compilation for buggy icc.

Originally committed as revision 13273 to svn://svn.ffmpeg.org/ffmpeg/trunk

eacced45 05/11/2008 10:28 PM Carl Eugen Hoyos

Replace some occurrences of -1 with PIX_FMT_NONE.
Fixes icc warning #188: enumerated type mixed with another type

Originally committed as revision 13130 to svn://svn.ffmpeg.org/ffmpeg/trunk

038f846e 04/28/2008 10:21 AM Stefano Sabatini

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

Originally committed as revision 13010 to svn://svn.ffmpeg.org/ffmpeg/trunk

98a6fff9 03/21/2008 03:11 AM Zuxy Meng

Apply 'cold' attribute to init/uninit functions in libavcodec

Originally committed as revision 12525 to svn://svn.ffmpeg.org/ffmpeg/trunk

fb2cf1bc 02/01/2008 04:14 AM Michael Niedermayer

const

Originally committed as revision 11724 to svn://svn.ffmpeg.org/ffmpeg/trunk

3caffb7d 07/05/2007 08:47 PM Oliver Pfister

fix mem leak
patch by Oliver Pfister: [oliver pfister gmx ch]

Originally committed as revision 9491 to svn://svn.ffmpeg.org/ffmpeg/trunk

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

license header consistency cosmetics

Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk

2029f312 05/10/2007 09:00 AM Diego Biurrun

Remove redundant #inclusion of common.h, avcodec.h already #includes it.

Originally committed as revision 8967 to svn://svn.ffmpeg.org/ffmpeg/trunk

71e445fc 02/07/2007 01:48 AM Diego Biurrun

Replace deprecated PIX_FMT names by the newer variants.

Originally committed as revision 7867 to svn://svn.ffmpeg.org/ffmpeg/trunk

849f1035 12/08/2006 12:35 AM Måns Rullgård

rename always_inline to av_always_inline and move to common.h

Originally committed as revision 7256 to svn://svn.ffmpeg.org/ffmpeg/trunk

c26abfa5 10/11/2006 11:17 PM Diego Biurrun

Rename ABS macro to FFABS.

Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk

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://svn.ffmpeg.org/ffmpeg/trunk

62bb489b 09/27/2006 07:54 PM Måns Rullgård

add some #ifdef CONFIG_ENCODERS/DECODERS

Originally committed as revision 6356 to svn://svn.ffmpeg.org/ffmpeg/trunk

c3e462a8 09/20/2006 09:17 PM Michael Niedermayer

set supported pixel formats for a few encoders (fixes crashes with grayscale)

Originally committed as revision 6303 to svn://svn.ffmpeg.org/ffmpeg/trunk

0c2aaa88 04/28/2006 11:16 PM Loren Merritt

memory leak.

Originally committed as revision 5331 to svn://svn.ffmpeg.org/ffmpeg/trunk

b548f2b9 04/14/2006 10:37 AM Michael Niedermayer

ffv1 and ffvhuff havnt changed since a long time and noone proposed any
changes within 1 month after my warning so they are officially no longer
experimental and we will gurantee decodeability of files encoded with
the currenzt ffv1/ffvhuff in the future
...

ee7388c9 02/09/2006 09:38 AM Michael Niedermayer

fix segfault on broken streams

Originally committed as revision 4966 to svn://svn.ffmpeg.org/ffmpeg/trunk

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

Update licensing information: The FSF changed postal address.

Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk

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

COSMETICS: Remove all trailing whitespace.

Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk

9cd81798 05/08/2005 08:15 PM Michael Niedermayer

#defines for strict_std_compliance and split between inofficial extensions and non standarized things

Originally committed as revision 4205 to svn://svn.ffmpeg.org/ffmpeg/trunk

160d679c 04/24/2005 05:21 PM Mike Melanson

Ministry of English Composition, reporting for duty (and the word is "skipped", not "skiped"; "skiped" would rhyme with "hyped")

Originally committed as revision 4153 to svn://svn.ffmpeg.org/ffmpeg/trunk

53513831 02/24/2005 04:39 PM Michael Niedermayer

-strict -1 comment fix

Originally committed as revision 3976 to svn://svn.ffmpeg.org/ffmpeg/trunk

d6c80d36 02/17/2005 07:03 PM Milan Cutka

Fixed decoding of 410p ffv1 files patch by (Milan Cutka <cutka szm sk>)

Originally committed as revision 3964 to svn://svn.ffmpeg.org/ffmpeg/trunk

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

avoid buf_size == 0 checks in every decoder

Originally committed as revision 3872 to svn://svn.ffmpeg.org/ffmpeg/trunk

0ecca7a4 01/12/2005 12:16 AM Michael Niedermayer

various security fixes and precautionary checks

Originally committed as revision 3822 to svn://svn.ffmpeg.org/ffmpeg/trunk

caa336b4 12/29/2004 05:50 PM Michael Niedermayer

common.c -> bitstream.c (and the single non bitstream func -> utils.c)
common.h -> common.h/bitstream.h

Originally committed as revision 3777 to svn://svn.ffmpeg.org/ffmpeg/trunk

d34a0746 10/31/2004 12:22 PM Michael Niedermayer

switch ffv1 to the put/get_symbol() from snow

Originally committed as revision 3659 to svn://svn.ffmpeg.org/ffmpeg/trunk

880eae9c 10/31/2004 10:08 AM Michael Niedermayer

switch ffv1 from CABAC to the range coder

Originally committed as revision 3658 to svn://svn.ffmpeg.org/ffmpeg/trunk

a6c01275 09/10/2004 07:40 PM Michael Niedermayer

get/set_sr_golomb() cleanup

Originally committed as revision 3451 to svn://svn.ffmpeg.org/ffmpeg/trunk

d58a6d85 09/10/2004 03:38 PM Alex Beregszaszi

put the warning to the right place to avoid crashes

Originally committed as revision 3448 to svn://svn.ffmpeg.org/ffmpeg/trunk

4579adb0 09/08/2004 05:59 PM Alex Beregszaszi

new signed golomb routines

Originally committed as revision 3444 to svn://svn.ffmpeg.org/ffmpeg/trunk

fa2522d7 08/03/2004 01:07 AM Michael Niedermayer

10l (segfault)

Originally committed as revision 3375 to svn://svn.ffmpeg.org/ffmpeg/trunk

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

data_size = 0 cleanup

Originally committed as revision 3146 to svn://svn.ffmpeg.org/ffmpeg/trunk

c172913a 05/02/2004 07:18 PM Michael Niedermayer

cleanup

Originally committed as revision 3103 to svn://svn.ffmpeg.org/ffmpeg/trunk

eea8c08f 04/30/2004 05:42 PM Michael Niedermayer

cleanup & memleak fix

Originally committed as revision 3095 to svn://svn.ffmpeg.org/ffmpeg/trunk

e5017ab8 03/26/2004 07:35 PM Laurent Aimar

h264 - progressive I frame CABAC support patch by (Laurent Aimar <fenrir at via dot ecp dot fr>)

Originally committed as revision 2932 to svn://svn.ffmpeg.org/ffmpeg/trunk

fe455f33 02/06/2004 03:27 PM Alex Beregszaszi

get_bit_count -> put_bits_count

Originally committed as revision 2752 to svn://svn.ffmpeg.org/ffmpeg/trunk

598401ce 11/06/2003 10:05 PM Michael Niedermayer

fix context=1
remove always_inline, gcc fails to inline other more important inline functions otherwise ...

Originally committed as revision 2483 to svn://svn.ffmpeg.org/ffmpeg/trunk

9b879566 11/03/2003 01:26 PM Michel Bardiaux

av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)

Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk

2cbb7820 11/01/2003 05:38 PM Michael Niedermayer

ffv1 rgb support

Originally committed as revision 2463 to svn://svn.ffmpeg.org/ffmpeg/trunk

dc7cb06a 10/19/2003 09:05 PM Dan Christiansen

gcc->C99 and warning fixes patch by (Dan Christiansen <danchr at daimi dot au dot dk>)

Originally committed as revision 2399 to svn://svn.ffmpeg.org/ffmpeg/trunk

ed7debda 10/12/2003 09:25 PM Alex Beregszaszi

removed the obsolete and unused parameters of init_put_bits

Originally committed as revision 2366 to svn://svn.ffmpeg.org/ffmpeg/trunk

1df1df0b 09/09/2003 10:50 PM Fabrice Bellard

removed warnings

Originally committed as revision 2246 to svn://svn.ffmpeg.org/ffmpeg/trunk

d9e6a6c6 07/13/2003 11:06 AM Michael Niedermayer

golomb rice code cleanup / simplify (~0.5% compression gain and slightly faster)
jpegls style golomb rice coder

Originally committed as revision 2040 to svn://svn.ffmpeg.org/ffmpeg/trunk

25bd2349 07/12/2003 10:15 PM Michael Niedermayer

simpler

Originally committed as revision 2039 to svn://svn.ffmpeg.org/ffmpeg/trunk

27fc5352 07/05/2003 02:18 PM Michael Niedermayer

merge U and V statistics, 33% reduction in memory requirement, compression rate better for some files worse for others, worst compression rate loss 0.05%

Originally committed as revision 2015 to svn://svn.ffmpeg.org/ffmpeg/trunk

d9ced4ca 07/02/2003 04:50 PM Michael Niedermayer

cleanup / cosmetics

Originally committed as revision 2001 to svn://svn.ffmpeg.org/ffmpeg/trunk

085565f7 07/02/2003 10:45 AM Michael Niedermayer

20% less memory needed for 8bit AC state (worst compression rate loss was 0.2%, all other files had <=0.1% loss)

Originally committed as revision 2000 to svn://svn.ffmpeg.org/ffmpeg/trunk