Michael Niedermayer
b276854d06
Fix indention of one forgotten line in ffv1.c
...
Originally committed as revision 25935 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Stefano Sabatini
58b4e5407d
Fix FFv1 decoder buffer releasing.
...
Previously it was releasing the buffer which was returned to the user,
which was resulting in a crash in case of direct rendering.
Originally committed as revision 25678 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
a0e7079a20
Fix 10l leak in ffv1.
...
Originally committed as revision 25595 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
73cbf86830
Try to find a bit better initial states in ffv1 2pass.
...
Difference in filesizes to foreman ffv1 version=2, context=1 coder=1
18637016 adv-pass2-g300.avi
18638806 adv-pass1-g300.avi
18640534 ref-pass2-g300.avi
18918214 adv-pass2-g1.avi
18982048 ref-pass2-g1.avi
21516230 adv-pass1-g1.avi
Originally committed as revision 25594 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
0ae0faa7c0
Keep track of how many slices*gops where encoded in ffv1 2 pass.
...
Originally committed as revision 25593 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
3f0671a2d3
factorize variable declaration in ffv1.
...
Originally committed as revision 25592 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
b7b5bccb8d
FFV1 initial state 2pass code.
...
Originally committed as revision 25584 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
28a3f525c9
Read & write initial_states for ffv1
...
Originally committed as revision 25583 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
99a5e93526
Add initial_states array to ffv1.
...
Originally committed as revision 25582 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
672e7e391a
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
14 years ago
Michael Niedermayer
19721b23e3
Optimize state initialization in ffv1 clear_state().
...
Originally committed as revision 25580 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
c42c1007c7
Only allocate stats_out when needed in ffv1
...
Originally committed as revision 25579 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
2a317c6be4
Factorize litteral constents in ffv1 into STATS_OUT_SIZE.
...
Originally committed as revision 25578 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
349d72870f
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
14 years ago
Michael Niedermayer
fc3128c9d5
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
14 years ago
Michael Niedermayer
e1f51b8821
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
14 years ago
Michael Niedermayer
ce3716bf05
Move ffv1 state transition table sorting to its own function.
...
Originally committed as revision 25563 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
19591033f7
Fix the case with swaping states 127 and 129 in ffv1
...
Originally committed as revision 25562 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
98d2f7a47f
Optimize state transition table sorting in ffv1
...
Originally committed as revision 25561 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
bc29ae4a77
2 pass mode for ffv1 to optimally order the range coder states.
...
Originally committed as revision 25560 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
6019cd9ff2
Factorize state_transition init out.
...
Originally committed as revision 25559 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
c868524b9a
Replace 5 by named constant MAX_CONTEXT_INPUTS in ffv1.c
...
Originally committed as revision 25529 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
d721141f54
Move shared functions out of CONFIG_FFV1_ENCODER ifdef
...
Originally committed as revision 25511 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
d56839fc6d
Store slice position and size per keyframe in ffv1.2
...
Originally committed as revision 25478 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
1da7257739
Fix indention of ffv1.c after previous commits.
...
Originally committed as revision 25477 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
e42393d168
Store quant table index per plane and slice.
...
Originally committed as revision 25476 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
f08ed90d94
Assert that the context doesnt overflow in ffv1.
...
Originally committed as revision 25475 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
e2b2f8454c
Rectangular slice support for ffv1.2
...
Originally committed as revision 25474 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Michael Niedermayer
c5ac275b2e
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
14 years ago
Michael Niedermayer
0f27aca7b3
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
14 years ago
Michael Niedermayer
228adaab8d
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
14 years ago
Michael Niedermayer
4f22b3bbbf
Factorize quant table read and write code in ffv1.c
...
Originally committed as revision 25436 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Måns Rullgård
cbabccc367
ffv1: remove VLAs
...
Originally committed as revision 23802 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Thad Ward
741b5fd44a
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
15 years ago
Diego Biurrun
ba87f0801d
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
15 years ago
Michael Niedermayer
00bbc09309
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
15 years ago
Stefano Sabatini
72415b2adb
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
15 years ago
Michael Niedermayer
ef768b0c32
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
15 years ago
Michael Niedermayer
5d7bc46c2d
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
15 years ago
Michael Niedermayer
0e22d68834
Remove the word "experimental"
...
Originally committed as revision 22629 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Reimar Döffinger
2ba8301769
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
15 years ago
Lars Täuber
7c6208d4c0
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
15 years ago
Lars Täuber
2fee538a16
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
15 years ago
Carl Eugen Hoyos
84c1b149b2
Fix typo.
...
Originally committed as revision 19639 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
f83c57735e
indent
...
Originally committed as revision 18679 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Michael Niedermayer
68f8d33bec
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
16 years ago
Michael Niedermayer
217d34e307
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.
100k smaller object file, no speed change
Originally committed as revision 18673 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Michael Niedermayer
3788e661f1
Optimize sign handling in get_symbol().
...
Originally committed as revision 18672 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Michael Niedermayer
223d996aaf
Fix a possibly exploitable buffer overflow.
...
Originally committed as revision 18640 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Michael Niedermayer
6081c30b81
Remove 2 unneeded variables from common_init() found by CSA.
...
Originally committed as revision 18560 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago