Mike Melanson
098523eb28
Use a list to track which fragments coded in this frame still have
...
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
2009-12-02 02:30:15 +00:00
Mike Melanson
0efbd068e7
Make sure that all memory allocations succeed.
...
Based on 28_theora_malloc_checks.patch from the Google Chrome team.
Originally committed as revision 20008 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-24 06:33:16 +00:00
Google Chrome
310afddfe0
Fix >= vs > check of coded_fragment_list_index.
...
22_fix_theora_frag_fencepost.patch by chrome
Originally committed as revision 19995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-23 12:42:12 +00:00
Google Chrome
fa6f27517b
Fix init_get_bits() buffer size.
...
18_fix_theora_header_bit_len.patch by chrome
Originally committed as revision 19993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-23 12:27:10 +00:00
Mike Melanson
428984b041
Another micro-optimization for unpack_vlcs(): Eliminate a possible
...
branch and save around 45k-55k dezicycles per function run.
Originally committed as revision 19974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-23 05:38:12 +00:00
Mike Melanson
138fe83215
Perform the DC prediction reversal immediately after decoding all of
...
the DC coefficients. This has a greater probability of leveraging the
coefficients while they are still cached.
When testing with the Big Buck Bunny 1080p video, I consistently saw
improvements of 500k-600k dezicycles per run (through
reverse_dc_prediction()) thanks to this move.
Originally committed as revision 19966 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-22 15:58:08 +00:00
Mike Melanson
ee3d7f5852
Modify unpack_vlcs() so that there are fewer dereferences through the
...
main (heavily iterated) loop.
Originally committed as revision 19934 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-21 01:37:50 +00:00
Reimar Döffinger
b8791583e7
compatible_frame array can be static const, too.
...
Originally committed as revision 19779 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-06 08:27:23 +00:00
Reimar Döffinger
bb99108775
Make vp3 arrays static const where possible.
...
Originally committed as revision 19771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-05 17:28:20 +00:00
Måns Rullgård
3aab27b459
Remove useless #include <unistd.h> from many files
...
Originally committed as revision 19499 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 23:37:53 +00:00
Reimar Döffinger
c79c960ade
Remove useless ret variable added in last revision again.
...
Originally committed as revision 19357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 10:28:58 +00:00
Reimar Döffinger
7cda815044
100l, theora_decode_init must pass on errors from vp3_decode_init
...
Originally committed as revision 19356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 09:35:00 +00:00
Reimar Döffinger
c4b7b8bf9c
Make decode_init fail if the huffman tables are invalid and thus init_vlc fails.
...
Otherwise this will crash during decoding because the vlc tables are NULL.
Partially fixes ogv/smclock.ogv.1.101.ogv from issue 1240.
Originally committed as revision 19355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 09:22:39 +00:00
Reimar Döffinger
e13cca4b14
Ensure that the filter limit values do not exceed the maximum allowed value of 127.
...
Originally committed as revision 19351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 18:27:39 +00:00
Reimar Döffinger
7fa5f9990b
Extend init_loop_filter to work for filter limit values up to 127 instead
...
of only up to 64. 127 is the maximum value allowed by the theora specification.
Originally committed as revision 19350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 18:25:58 +00:00
Baptiste Coudurier
7f57905d55
vp3 and theora decoders use get_buffer, set CODEC_CAP_DR1
...
Originally committed as revision 19107 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-05 08:44:26 +00:00
David Conrad
f2264fa531
Support block-level quantization in Theora
...
Originally committed as revision 18986 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-29 21:43:22 +00:00
David Conrad
ef516f7377
Move ALIGN macro to libavutil/common.h and use it in various places
...
Originally committed as revision 18898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-22 21:32:13 +00:00
David Conrad
0a8dedc9e1
Use skip_bits_long() for large skips
...
This fixes ogg/theora on ARM (more generally the A32 bitstream reader)
Originally committed as revision 18819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-14 00:02:07 +00:00
David Conrad
580a7465fb
Add a chroma_sample_location field to define positioning of chroma samples
...
Originally committed as revision 18795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-11 04:34:23 +00:00
Benjamin Larsson
241f5eab32
Remove dead assignments found by CSA
...
Originally committed as revision 18731 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-02 09:12:03 +00:00
Stefano Sabatini
9106a698e7
Rename bitstream.h to get_bits.h.
...
Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 16:20:26 +00:00
Thilo Borgmann
7a00bbad21
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.
Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.
Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Daniel Verkamp
5ef251e504
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://svn.ffmpeg.org/ffmpeg/trunk
2009-02-22 13:48:55 +00:00
Alex Converse
00bbe27631
VP3: Do not ignore error from read_huffman_tree().
...
Originally committed as revision 17090 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-09 01:39:33 +00:00
Alex Converse
2c823b3ccc
VP3: Prevent stack corruption from an unset custom coding method.
...
Originally committed as revision 16978 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-03 22:59:47 +00:00
Diego Biurrun
bad5537e2c
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
2009-02-01 02:00:19 +00:00
Aurelien Jacobs
b250f9c66d
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
2009-01-13 23:44:16 +00:00
Loren Merritt
5fecfb7d58
clear_block mmx
...
Originally committed as revision 16045 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-10 21:35:17 +00:00
David Conrad
357f45d9bc
MMX VP3 Loop Filter
...
Originally committed as revision 15630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-17 03:18:08 +00:00
David Conrad
c5f67c1559
Remove unused variables
...
Originally committed as revision 15602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-12 19:41:17 +00:00
David Conrad
9971331dfb
Move VP3 loop filter to DSPContext
...
Originally committed as revision 15551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 10:26:17 +00:00
David Conrad
1ae4518d73
Cosmetics: reindent
...
Originally committed as revision 15505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:48:54 +00:00
David Conrad
10f38380be
Unneeded else
...
Originally committed as revision 15504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:48:35 +00:00
David Conrad
6599e2a74a
Unneeded braces
...
Originally committed as revision 15503 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:48:16 +00:00
David Conrad
6298f49f75
Return if unpacking motion vectors for a keyframe
...
Originally committed as revision 15502 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:48:00 +00:00
David Conrad
a0ce2d1bbc
Cosmetics: indentation
...
Originally committed as revision 15501 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:44:30 +00:00
David Conrad
277e3e534b
Visible width/height fields were added in Theora 3.2
...
Originally committed as revision 15500 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:43:08 +00:00
David Conrad
51ace5777e
filter_limit_values only needs 7 bits, make its tables smaller
...
Originally committed as revision 15499 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-01 14:40:29 +00:00
David Conrad
ba31df31d9
Cosmetics: indentation
...
Originally committed as revision 15492 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 19:51:02 +00:00
David Conrad
fc9618195b
Merge (vp3|theora)_calculate_pixel_addresses
...
Originally committed as revision 15491 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 19:50:43 +00:00
David Conrad
6920b98322
Missed hunks of last commit
...
Originally committed as revision 15490 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 19:22:20 +00:00
David Conrad
33aae37ec0
Remove unused vp3 debugging info
...
Originally committed as revision 15489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 19:18:22 +00:00
David Conrad
12ce1f3fc1
Downgrade severity of leftover bits in header packets, and don't check for the comment header
...
Originally committed as revision 15469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 04:18:22 +00:00
David Conrad
068e82bac1
Use skip_frame for keyframe-only decoding rather than #ifdef
...
Originally committed as revision 15463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-29 22:04:35 +00:00
David Conrad
7f065b36c8
Take idct permutation into account when initializing dequantization matrices
...
Originally committed as revision 15344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-17 19:29:40 +00:00
Aurelien Jacobs
4834eb191c
theoradec: cosmetics: indentation
...
Originally committed as revision 15167 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-03 00:19:08 +00:00
Aurelien Jacobs
feaf1a7393
theoradec: skip decoding of uncoded MV in 4MV code
...
Thusnelda, the new experimental Theora encoder is using this Theora feature
that was previously not exploited.
fixes issue579
Originally committed as revision 15166 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-03 00:17:11 +00:00
Aurelien Jacobs
e32e2d56d4
theoradec: small 4MV code reorganization to ease future improvements
...
no functional changes
Originally committed as revision 15165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-03 00:10:30 +00:00
Stefan Gehrer
e8e4743591
make ModeAlphabet read-only and use a custom mode alphabet
...
only locally in unpack_modes()
Originally committed as revision 13964 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-25 14:14:58 +00:00
Stefano Sabatini
fe4bf37455
Make AVCodec long_names definition conditional depending on CONFIG_SMALL.
...
Originally committed as revision 13759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-12 21:50:13 +00:00
Reimar Döffinger
eeb2815003
Remove the START_TIMER/STOP_TIMER from vp3.c, they clutter the output and
...
might cost CPU.
Originally committed as revision 13730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-09 16:30:59 +00:00
Reimar Döffinger
36e1625396
Almost-cosmetics: split out coeff_count from all_fragments struct into
...
a separate array.
For the OGG version at http://www.bigbuckbunny.org/index.php/download/
this results in about 50% speedup of unpack_vlcs, resulting in ca. 20% faster
overall speed.
Originally committed as revision 13729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-09 16:26:28 +00:00
Diego Biurrun
f4433de9ef
consistency cosmetics: indices --> indexes
...
Originally committed as revision 13444 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-26 23:14:25 +00:00
Sisir Koppaka
9db5bdfaa5
Add complete multimedia Wiki URL, patch by Sisir Koppaka.
...
Originally committed as revision 13055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-04 09:58:22 +00:00
Stefano Sabatini
d5202e4fda
Add long names to many AVCodec declarations.
...
patch by Stefano Sabatini, stefano.sabatini-lala poste it
Originally committed as revision 13005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-27 10:52:44 +00:00
Zuxy Meng
98a6fff98c
Apply 'cold' attribute to init/uninit functions in libavcodec
...
Originally committed as revision 12525 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-21 03:11:20 +00:00
Aurelien Jacobs
d37f007d54
remove #include "mpegvideo.h" where it is not needed
...
Originally committed as revision 12321 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-05 00:07:53 +00:00
Måns Rullgård
6f4e2b5a95
fix memory leaks in vp3 decoder
...
Originally committed as revision 12191 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-24 18:56:52 +00:00
Michael Niedermayer
cea9642014
Fix ;;
...
Originally committed as revision 12153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-19 22:09:08 +00:00
Diego Biurrun
5e53486545
typo fix: inited --> initialized
...
Originally committed as revision 11920 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-13 09:26:10 +00:00
Diego Biurrun
356306aca2
Print Theora bitstream version at DEBUG, not at VERBOSE level.
...
Originally committed as revision 11916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-13 08:05:51 +00:00
Michael Niedermayer
bed9dc1662
const
...
Originally committed as revision 11776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-01 15:54:28 +00:00
Alex Beregszaszi
5fc32c275e
use get_bits1(..) instead get_bits(.., 1)
...
Originally committed as revision 9999 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-09 00:13:31 +00:00
Diego Biurrun
3e5008a922
Reduce Theora decoder verbosity.
...
Originally committed as revision 9872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-03 16:43:11 +00:00
Diego Biurrun
e5a389a1b7
license header consistency cosmetics
...
Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 10:40:25 +00:00
Diego Biurrun
2029f312e8
Remove redundant #inclusion of common.h, avcodec.h already #includes it.
...
Originally committed as revision 8967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-10 09:00:44 +00:00
Aurelien Jacobs
ba4816a0a9
cosmetics: fix inconsistent indentation
...
Originally committed as revision 8929 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-07 15:44:42 +00:00
Aurelien Jacobs
c0f716b86f
fix display of theora videos with visible size smaller than encoded size
...
Originally committed as revision 8928 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-07 15:43:01 +00:00
Diego Biurrun
597cbdaf03
Only compile in Theora-specific functions if the Theora decoder has been
...
enabled. Also fixes some "defined but not used" warnings in that case.
Originally committed as revision 8685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-08 18:54:53 +00:00
Diego Biurrun
6f6a3e2acb
cosmetics: Move one code block to save an #ifdef in the next commit.
...
Originally committed as revision 8684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-08 18:52:03 +00:00
Diego Biurrun
d7455a1c18
Remove #if 0 code.
...
Originally committed as revision 8683 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-08 18:50:18 +00:00
Diego Biurrun
51cea49ab4
Fix compilation when Theora decoder is disabled, but VP3 is enabled.
...
Originally committed as revision 8682 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-08 13:42:44 +00:00
Nicholas Tung
587d07227e
Remove superfluous setting of has_b_frames in codecs without B-frames.
...
patch by Nicholas Tung, ntung ntung com
Originally committed as revision 8647 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-07 17:37:30 +00:00
Aurelien Jacobs
da91ed594e
use generic xiph header spliting func to split theora headers
...
Original thread:
Date: Thu, 22 Mar 2007 20:23:08 -0400
Subject: [Ffmpeg-devel] [PATCH] Theora in MKV (GSoC '07 Qualification)
Originally committed as revision 8506 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-25 01:09:26 +00:00
Reimar Döffinger
f66e4f5f9e
Add av_ prefix to clip functions
...
Originally committed as revision 8122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-25 10:27:12 +00:00
Diego Biurrun
3700dab4f2
cosmetics: aswell --> as well typo fix
...
Originally committed as revision 8062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-22 00:14:54 +00:00
Diego Biurrun
a9621908dc
Unconditionally enable Theora decoder. It works fine now and there is no
...
Theora support through libtheora in FFmpeg.
Originally committed as revision 7435 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-10 14:19:33 +00:00
Diego Biurrun
c26abfa541
Rename ABS macro to FFABS.
...
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +00:00
Diego Biurrun
b78e7197a8
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
2006-10-07 15:30:46 +00:00
Michael Niedermayer
59ef342beb
fix decoding of ED-small-sample-file.ogg
...
Originally committed as revision 6567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-06 11:33:57 +00:00
Diego Biurrun
36c32bdddf
Remove unused variables and the corresponding warnings along with them.
...
Originally committed as revision 6536 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-03 17:12:48 +00:00
Måns Rullgård
191e8ca752
fix some signedness warnings
...
Originally committed as revision 6355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-27 19:47:39 +00:00
Michael Niedermayer
2287c100b2
cleanup
...
Originally committed as revision 6007 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-17 08:08:28 +00:00
Reimar Döffinger
bc185f72c0
Do not crash when the first frame is not a keyframe (and thus none of the
...
necessary initialization has been done yet).
Originally committed as revision 5815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-23 18:22:29 +00:00
Michael Niedermayer
684d9e36fc
simplify
...
Originally committed as revision 5796 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 22:42:31 +00:00
Michael Niedermayer
006ff1cabe
more simplifications
...
Originally committed as revision 5795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 22:21:45 +00:00
Michael Niedermayer
f72f8a7735
simplification
...
Originally committed as revision 5794 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 21:20:56 +00:00
Michael Niedermayer
09eb00f6b5
iabs -> ABS
...
Originally committed as revision 5793 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 21:05:42 +00:00
Michael Niedermayer
1abbf64e3b
simplify
...
Originally committed as revision 5792 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 20:57:44 +00:00
Michael Niedermayer
1af5f60f6a
fix loop filter
...
Originally committed as revision 5791 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-19 20:41:16 +00:00
Michael Niedermayer
efea852877
parse all QIS values (we still ignore them though ...)
...
Originally committed as revision 5778 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-17 13:09:45 +00:00
Michael Niedermayer
a14ab4e4d4
100l for me
...
Originally committed as revision 5777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-17 11:06:09 +00:00
Matthieu Castet
116d866ca5
fix playback of theora.ogg on mphq patch by (matthieu castet %% castet dat matthieu ot free dat fr %%)
...
Originally committed as revision 5776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-17 10:44:53 +00:00
Michael Niedermayer
ae1dd8e125
attempt to implement xiphs useless and stupid quantization matrix mess
...
Originally committed as revision 5775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-17 09:51:59 +00:00
Michael Niedermayer
187c9be7a6
replace *_dequant (2 intra, 1 inter) by qmat (3 intra, 3 inter) (needed for theora according to spec)
...
Originally committed as revision 5774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-17 08:09:08 +00:00
Michael Niedermayer
d2744e19e0
use RSHIFT
...
Originally committed as revision 5773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 21:09:32 +00:00
Michael Niedermayer
4501e678e7
useless memcpy
...
Originally committed as revision 5772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 21:00:38 +00:00
Michael Niedermayer
7cfe7fe5e7
some fixmes if someone ever wants to implement theora support correctly ...
...
Originally committed as revision 5771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 20:47:48 +00:00
Michael Niedermayer
e278056fba
check how many bits are left after decoding extradata
...
this change is messy as whoever wrote the original code copied the GetBitContext instead of passing a pointer to it which has to be fixed for the above thing
Originally committed as revision 5770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 20:30:39 +00:00
Michael Niedermayer
b7f3fdd779
cleanup
...
Originally committed as revision 5769 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 19:21:59 +00:00
Måns Rullgård
1bd8624697
kill some warnings
...
Originally committed as revision 5063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-25 22:41:31 +00:00
Steve L'Homme
68b51e58ce
MSVC-compatible __align8/__align16 declaration
...
patch by Steve Lhomme, steve .dot. lhomme .at. free .dot. fr
Originally committed as revision 4942 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-05 13:35:17 +00:00
Diego Biurrun
5509bffa88
Update licensing information: The FSF changed postal address.
...
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Diego Biurrun
bb270c0896
COSMETICS: tabs --> spaces, some prettyprinting
...
Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 01:10:11 +00:00
Diego Biurrun
115329f160
COSMETICS: Remove all trailing whitespace.
...
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Alex Beregszaszi
52ceae0624
10l, left debugging on
...
Originally committed as revision 4705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-13 20:12:33 +00:00
Matthieu Castet
2da2ba037a
Correctly skip unknown matrices (patch by Matthieu Castet) and disable comment reading
...
Originally committed as revision 4704 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-13 20:06:31 +00:00
Alex Beregszaszi
7146d2c267
Fixing theora _again_. DONT BOTHER BREAKING THIS AGAIN. Added support for Theora 3.4 and stream created by Elphel cameras are decodable.
...
Originally committed as revision 4703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-13 17:59:21 +00:00
Alex Beregszaszi
dd36b66722
fixed long standing off-by-one bug (fixes playback on ppc)
...
Originally committed as revision 4702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-13 17:48:27 +00:00
Alex Beregszaszi
8868d31065
use av_log in debug mode
...
Originally committed as revision 4570 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-07 19:15:48 +00:00
Måns Rullgård
bf4e3bd2d0
kill a bunch of compiler warnings
...
Originally committed as revision 4522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-14 15:42:40 +00:00
Mike Melanson
485bb00108
removed a bunch of unused, sub-optimal code
...
Originally committed as revision 4516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-13 18:49:01 +00:00
Mike Melanson
9c7154c7ae
read loop filter limit values from Theora header, courtesy of Matthieu
...
Castet (castet.matthieu -at- free.fr)
Originally committed as revision 4304 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-24 14:21:42 +00:00
Mike Melanson
2935001c86
fix bugs in new loop filter code; also, refrain from filtering against
...
data that has yet to be rendered; still #if'd out, will revisit when
proper algorithm can be validated
Originally committed as revision 4297 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-21 19:31:16 +00:00
Michael Niedermayer
720537282b
disable broken loop filter optimization
...
melanson please test your optimizations before commiting!
Originally committed as revision 4292 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-21 07:35:15 +00:00
Mike Melanson
f44b08a5a0
apply the loop filter to fragments as they are rendered into the final
...
output
Originally committed as revision 4291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-21 05:20:52 +00:00
Mike Melanson
dc4b78d9dd
render by the slice rather than the plane
...
Originally committed as revision 4290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-21 04:43:36 +00:00
Mike Melanson
7dc9ed1155
clean up some warnings and dead code
...
Originally committed as revision 4288 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-21 02:06:27 +00:00
Mike Melanson
7f9926a45e
another bitstream extraction to optimize: fixed-length motion vectors
...
Originally committed as revision 4286 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-21 01:12:41 +00:00
Mike Melanson
39922395d2
read Huffman tables from Theora header (patch courtesy of
...
Matthieu Castet <castet.matthieu at free.fr>)
Originally committed as revision 4284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-19 23:59:10 +00:00
Michael Niedermayer
7beddb12d4
use O(number of non zero coeffs) instead of O(number of coeffs) storage for the coefficient colleting/reordering
...
Originally committed as revision 4279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-19 10:48:36 +00:00
Mike Melanson
d30769555f
replace unpack_token() with a series of lookup tables
...
Originally committed as revision 4277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-19 02:43:21 +00:00
Mike Melanson
f4daf33ee8
fix 4MV MC and reinstate new MC VLC
...
Originally committed as revision 4273 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 17:14:59 +00:00
Michael Niedermayer
288774bbfc
reduce size of Vp3Fragment from 32byte to 16byte
...
Originally committed as revision 4270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 09:07:26 +00:00
Michael Niedermayer
b5da363592
optimizing rle decoding loops a little
...
Originally committed as revision 4269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 08:48:11 +00:00
Michael Niedermayer
8aeadb903a
disabling buggy optimizations
...
Originally committed as revision 4268 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 07:59:07 +00:00
Mike Melanson
d8278bab79
replace get_superblock_run_length() with a VLC table
...
Originally committed as revision 4267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 00:11:49 +00:00
Mike Melanson
0ad72bdd5c
use VLCs for in place of get_fragment_run_length(), get_mode_code(), and
...
get_motion_vector_vlc()
Originally committed as revision 4266 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 23:39:23 +00:00
Michael Niedermayer
6f7aa5891d
some optimizations gcc should have done (10% faster loop filter)
...
Originally committed as revision 4263 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 20:50:47 +00:00
Michael Niedermayer
ee408eadba
SATURATE_U8 -> clip_uint8 (10% faster loop filter)
...
Originally committed as revision 4262 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 20:30:22 +00:00
Michael Niedermayer
1482fee88d
remove duplicate zigzag tables
...
Originally committed as revision 4259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 11:36:07 +00:00
Michael Niedermayer
36af0c959e
fix idct permutation
...
Originally committed as revision 4258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 11:31:57 +00:00
Michael Niedermayer
8b6103da0f
porting vp3 idct over to lavc idct api
...
Originally committed as revision 4257 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 11:12:04 +00:00
Michael Niedermayer
ea191e08d6
remove permutation done to quant tables and then undone during idct
...
move permutation from idct to unpack_vlcs
Originally committed as revision 4256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 09:18:49 +00:00
Michael Niedermayer
36661afe02
fix last coeff
...
Originally committed as revision 4254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 08:46:40 +00:00
Michael Niedermayer
a2df5a50ae
clear blocks after each idct instead of per picture
...
dont store the all zero coefficients of skiped blocks
Originally committed as revision 4253 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-17 00:52:29 +00:00
Michael Niedermayer
220a6f401d
some benchmarking code
...
Originally committed as revision 4250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-16 21:49:18 +00:00
Michael Niedermayer
d5e188359e
various 10l fixes for the loop filter
...
Originally committed as revision 4249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-16 17:22:36 +00:00
Michael Niedermayer
7bad42cf59
fix dequant matrix
...
Originally committed as revision 4246 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-16 09:29:13 +00:00
Matthieu Castet
ba7ee4a460
fix theora header parsing
...
patch by Matthieu Castet <castet dot matthieu at free dot fr>
Originally committed as revision 4238 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-13 21:06:44 +00:00
Måns Rullgård
aac064b5bd
theora decoding using libtheora
...
Originally committed as revision 4218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-11 16:42:15 +00:00
Michael Niedermayer
ee89b2b9e7
04-vp3 fix(by matthieu castet).patch
...
Originally committed as revision 3998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-03 02:24:20 +00:00
Mike Melanson
a54ea19a52
VP3 post-processing loop filter; disabled until the correct final step
...
is determined
Originally committed as revision 3996 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-01 06:14:45 +00:00
Michael Niedermayer
edaf11e87a
10l (negative strides)
...
Originally committed as revision 3887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-26 17:04:34 +00:00
Michael Niedermayer
0ecca7a49f
various security fixes and precautionary checks
...
Originally committed as revision 3822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-12 00:16:25 +00:00
Burkhard Plaum
073c2593c9
Memory leak fix patch by (Burkhard Plaum <plaum >at< ipf.uni-stuttgart )dot( de>)
...
Originally committed as revision 3717 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-27 18:10:06 +00:00
Michael Niedermayer
8a515d2d9c
get_bits(32) fix
...
Originally committed as revision 3393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-16 01:25:52 +00:00
Michael Niedermayer
4df8ca9df2
warning fixes by (Michael Roitzsch <mroi at users dot sourceforge dot net>)
...
Originally committed as revision 3156 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-25 18:07:25 +00:00
Michael Niedermayer
53db1cae1c
data_size = 0 cleanup
...
Originally committed as revision 3146 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-21 14:37:16 +00:00
Mike Melanson
f9ed9d8584
separate out put_signed_pixels_clamped() into its own function and
...
implement an optimized MMX version of the function
Originally committed as revision 3082 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-27 03:58:06 +00:00
Mike Melanson
116824d0aa
reorganize and simplify the VP3 IDCT stuff
...
Originally committed as revision 3071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-26 00:20:29 +00:00
Mike Melanson
38acbc3cb9
hook up support for SSE2-optimized VP3 IDCT
...
Originally committed as revision 3064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 03:33:30 +00:00
Mike Melanson
67335dbce3
cut over to using new VP3 DSP functions and remove the old ones; bring
...
certain source code identifiers in line with official VP3 spec (well,
*my* VP3 spec, anyway)
Originally committed as revision 2856 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-08 02:15:13 +00:00
Michael Niedermayer
c0a0170c16
fix motion compensation with (x+1/2,y+1/2) MVs
...
Originally committed as revision 2849 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-05 18:44:04 +00:00
Alex Beregszaszi
f8830383a9
FF_DEBUG_PICT_INFO and CODEC_FLAG_GRAY support
...
Originally committed as revision 2577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-08 18:26:22 +00:00
Alex Beregszaszi
3c3f113ec1
more correct header parsing
...
Originally committed as revision 2571 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-08 11:32:06 +00:00
Alex Beregszaszi
105c3d2521
theora alpha3 support (with maintaining backward compatibility, maybe we should remove all backward compatibility codes after final theora release?)
...
Originally committed as revision 2527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-23 18:49:53 +00:00
Alex Beregszaszi
9a7ad92531
finally working with old theora bitstream (flipped image), the only sample I have is decoded successfully (theora.ogg)
...
Originally committed as revision 2526 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-23 18:43:09 +00:00
Michel Bardiaux
9b87956678
av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)
...
Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 13:26:22 +00:00
Alex Beregszaszi
91381201f0
theora comments skipping
...
Originally committed as revision 2361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-11 19:40:45 +00:00
Alex Beregszaszi
f44ee2c34b
theora decoding support (only keyframes for now, because by theora the frame isn't flipped so the motion vectors are getting screwed up)
...
Originally committed as revision 2359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-11 17:44:21 +00:00
Roman Shaposhnik
e7015b41e7
* patch for compile problem by "Steven M. Schultz" sms at 2BSD dot COM
...
Originally committed as revision 2267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-09-12 18:25:04 +00:00
Michael Niedermayer
b928ec649c
fixing chroma MC
...
minor cleanup
postprocessing support
Originally committed as revision 2128 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-20 07:35:23 +00:00
Michael Niedermayer
a2f11b3c3a
MC rounding fixed?
...
UMV
still not bugfree :(
Originally committed as revision 2127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-19 17:10:00 +00:00
Michael Niedermayer
8e39d4a744
fix AVFrame.reference (the frames are used for decoding future frames so it should be !=0)
...
fix some assert in utils.c (no bug but its saver if the released pointers are NULL)
fix double release_buffer() at the end
Originally committed as revision 2126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-19 16:18:48 +00:00
Mike Melanson
3d32b429d3
added the official VP3 IDCT (C implementation) as well as a grayscale
...
decoding mode
Originally committed as revision 2027 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-07-10 05:16:25 +00:00
Mike Melanson
642d7e842e
revising and fixing motion vectors, squished block unpacking bug that
...
led to memory stomps, added support for funky arbitrary dimensions
Originally committed as revision 1922 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-31 07:56:58 +00:00
Falk Hüffner
4cfbf61bf1
Warning and compatibility fixes.
...
Originally committed as revision 1902 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-24 18:48:30 +00:00
Mike Melanson
22493ab9cb
fix subtle logic problem in block unpacker that leads to incorrect token
...
decoding which leads to segfaults
Originally committed as revision 1890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-19 01:22:46 +00:00
Mike Melanson
74c0ac1274
fix image buffer leak on keyframes, add more error condition checks
...
Originally committed as revision 1856 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-12 04:28:35 +00:00
Mike Melanson
96a7e73b24
fix motion vector decoding bug and reinstate interframes
...
Originally committed as revision 1851 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-11 04:47:45 +00:00
Mike Melanson
463d086bb5
get those permutations straight
...
Originally committed as revision 1850 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-11 02:51:07 +00:00
Mike Melanson
892fc83e88
squashed a bunch of subtle array indexing bugs, fixed block mapping
...
added more error checking, added (and enabled, for the time being) a
keyframe-only mode
Originally committed as revision 1849 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-10 21:46:17 +00:00
Mike Melanson
0433188259
dump the shady binary search logic (the part that binary searches
...
through unsorted data)
Originally committed as revision 1847 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-10 16:06:33 +00:00
Mike Melanson
a466e345e4
correct the custom coding mode alphabet, add some validation on the
...
motion vectors (which are not completely correct yet)
Originally committed as revision 1844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-08 02:01:17 +00:00
Mike Melanson
4e80eb21af
looking better all the time! motion compensation is starting to work
...
Originally committed as revision 1841 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-07 12:28:36 +00:00
Mike Melanson
44ae98ddef
fixed buffer allocation logic (hopefully) so that decoder does not crash
...
most ffmpeg-enabled apps; added a bunch on motion compensation stuff
which is effectively disabled at the moment while details are worked out
Originally committed as revision 1840 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-07 02:30:37 +00:00
Mike Melanson
61873c4a44
fix decoder so that ffmpeg does not crash, at least not right away
...
Originally committed as revision 1838 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-06 03:11:20 +00:00
Mike Melanson
d86053a416
first pass at a new VP3 video decoder
...
Originally committed as revision 1831 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-05 02:54:15 +00:00