Anton Khirnov
b2788fe934
svq3: fix the slice size check
...
Currently it incorrectly compares bits with bytes.
Also, move the check right before where it's relevant, so that the
correct number of remaining bits is used.
CC: libav-stable@libav.org
8 years ago
Alexandra Hájková
c29da01ac9
svq3: Convert to the new bitstream reader
8 years ago
Diego Biurrun
d4c2103bd3
golomb: Convert to the new bitstream reader
8 years ago
Diego Biurrun
13fcdfb976
svq3: Drop unused function dctcoef_get()
...
libavcodec/svq3.c:627:29: warning: unused function 'dctcoef_get' [-Wunused-function]
8 years ago
Anton Khirnov
4e2f621248
svq3: stop using H264Picture
...
The SVQ3 decoder has been decoupled from the H.264 decoder, so it can
now use its own data type.
9 years ago
Anton Khirnov
9df889a5f1
h264: rename h264.[ch] to h264dec.[ch]
...
This is more consistent with the naming of other decoders.
9 years ago
Diego Biurrun
4024b566d6
golomb: Give svq3_get_se_golomb()/svq3_get_ue_golomb() better names
9 years ago
Vittorio Giovara
41ed7ab45f
cosmetics: Fix spelling mistakes
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
Anton Khirnov
add1467e5e
svq3: drop the build dependency on the h264 decoder
9 years ago
Anton Khirnov
a4d126dc59
svq3: eliminate remaining H264Context usage.
9 years ago
Anton Khirnov
7bbdae81e8
svq3: move block_offset to SVQ3Context
9 years ago
Anton Khirnov
1848a154a4
svq3: stop using H264Context.gb
9 years ago
Anton Khirnov
ea6ab02a17
svq3: move the frame num variables to the SVQ3Context
9 years ago
Anton Khirnov
21b7469322
svq3: eliminate H264Context.cur_pic usage
...
Use the SVQ3Context variable instead
9 years ago
Anton Khirnov
939b388383
svq3: eliminate remaining H264SliceContext usage
9 years ago
Anton Khirnov
5a5db90edf
svq3: move pict_type to the SVQ3Context
9 years ago
Anton Khirnov
12f13ecb2d
svq3: move mb strides/sizes to the SVQ3Context
9 years ago
Anton Khirnov
ad9d3384de
svq3: move the dequant buffer to SVQ3Context
...
Remove now unnecesary call to ff_h264_alloc_tables()
9 years ago
Anton Khirnov
549fc77273
svq3: move mb2br_xy to the SVQ3Context
9 years ago
Anton Khirnov
99dde60391
svq3: move {ref,mv}_cache to the SVQ3Context
9 years ago
Anton Khirnov
89a13998a1
svq3: rip out the svq3-relevant parts of pred_motion() out of h264
9 years ago
Anton Khirnov
8eecae77ff
svq3: move edge_emu_buffer to the SVQ3Context
9 years ago
Anton Khirnov
527bf5f7c6
svq3: move the pred mode variables to SVQ3Context
...
This will allow removing the H264Context dependency in the future.
9 years ago
Anton Khirnov
ecc31f6b08
h264: move ff_h264_check_intra[4x4]_pred_mode() to h264_parse
...
It is shared with svq3.
9 years ago
Anton Khirnov
1877712c58
svq3: move mb_{x,y,xy} to SVQ3Context
...
This will allow removing the H264Context dependency in the future.
9 years ago
Anton Khirnov
c2a4ca944d
svq3: eliminate write_back_intra_pred_mode() usage
...
This function depends on the h264 internals and is so tiny that just
copying the code out is the simplest replacement.
9 years ago
Anton Khirnov
c73fb9efb2
svq3: add all the required dsp contexts into SVQ3Context
...
Stop using the H264Context ones, to allow removing the H264Context
dependency.
9 years ago
Anton Khirnov
15b0517da9
svq3: make the dsp functions static
...
There is no need for them to be extern anymore.
9 years ago
Anton Khirnov
e42ca48a8b
svq3: rip out the mb decoding code shared with h264
...
The ~100 lines of shared code is not worth the pain of svq3 messing with
h264 internals.
9 years ago
Diego Biurrun
a7da517f6a
h264data: Move all data tables from a header to a .c file
9 years ago
Diego Biurrun
f4d581cda3
lavc: Deduplicate zigzag_scan table
9 years ago
Luca Barbato
1098f5c049
svq3: Use a separate buffer for decoding the slices
...
The AVPacket.data should be considered read-only.
9 years ago
Vittorio Giovara
def97856de
lavc: AV-prefix all codec capabilities
...
Express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years ago
Vittorio Giovara
7c6eb0a1b7
lavc: AV-prefix all codec flags
...
Convert doxygen to multiline and express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years ago
Anton Khirnov
a0f2946068
h264: use properly allocated AVFrames
10 years ago
Anton Khirnov
249796e256
svq3: initialize some required H264Context fields.
...
They are no longer initialized in ff_h264_decode_init() since 43fd3dd
,
so svq3 needs to initialize the manually.
Fixes svq3 decoding, broken since 43fd3dd
.
10 years ago
Anton Khirnov
c28ed1d743
h264: move [uv]linesize to the per-slice context
...
While it is a per-frame variable, it is only really used in the
low-level decoding code, so it is more efficient to store it in the
slice context.
10 years ago
Anton Khirnov
36d04801ba
h264: move the scratch buffers into the per-slice context
...
Also change the method for allocating them. Instead of two possible
alloc calls from different places, just ensure they are allocated at the
start of each slice. This should be simpler and less bug-prone than the
previous method.
10 years ago
Anton Khirnov
d4d9068cdf
h264: move mb_{x,y} into the per-slice context
10 years ago
Anton Khirnov
0edbe6faa7
h264: move mb_xy into the per-slice context
10 years ago
Anton Khirnov
07c5ca551b
h264: move is_complex into the per-slice context
10 years ago
Anton Khirnov
47a0d39350
h264: move mb_skip_run into the per-slice context
10 years ago
Anton Khirnov
e7226984ac
h264: move [{top,left}_]cbp into the per-slice context
10 years ago
Anton Khirnov
bf03a878a7
h264: move mb[_{padding,luma_dc}] into the per-slice context
10 years ago
Anton Khirnov
56febc993b
h264: move the slice type variables into the per-slice context
10 years ago
Anton Khirnov
e6287f077c
h264: move {mv,ref}_cache into the per-slice context
10 years ago
Anton Khirnov
f69574cf7a
h264: move non_zero_count_cache into the per-slice context
10 years ago
Anton Khirnov
64c81b2cd0
h264: move *_samples_available into the per-slice context
10 years ago
Anton Khirnov
7d8154edd5
h264: move intra4x4_pred_mode[_cache] into the per-slice context
10 years ago
Anton Khirnov
8b00f4df20
h264: move some neighbour information into the per-slice context
10 years ago