summaryrefslogtreecommitdiff
path: root/libavcodec/h264.h
Commit message (Collapse)AuthorAge
...
* h264: Parse registered data SEI message and AFD valueVittorio Giovara2015-06-30
| | | | | | Partially based on code by Marton Balint and Kieran Kunhya. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* h264: do not update the context fields copied between threads after ↵Anton Khirnov2015-06-27
| | | | | | finish_setup() Should fix a large number of possible races with frame threading.
* h264: make sure the slices do not overlap during slice threadingAnton Khirnov2015-06-27
| | | | | | Based on a patch by Michael Niedermayer <michaelni@gmx.at>. CC: libav-stable@libav.org Found-by: Kieran Kunhya <kierank@obe.tv>
* h264: use properly allocated AVFramesAnton Khirnov2015-04-29
|
* h264: embed the DPB in the contextAnton Khirnov2015-04-29
| | | | | It now has a fixed size and is initialized only once, so there is no point in allocating it separately.
* h264: move freeing the escaped RBSP buffer to free_context()Anton Khirnov2015-04-29
| | | | | It does not logically belong in free_tables(), since it's not allocated in alloc_tables() and its size has nothing to do with the frame size.
* h264: eliminate ff_h264_set_parameter_from_sps()Anton Khirnov2015-04-29
| | | | | | | | | | | | | | That function currently does two things -- reinitializing the DSP contexts and setting low_delay based on the SPS values. The former more appropriately belongs in h264_slice_header_init(), while the latter only really makes sense in decode_slice_header(). The third call to ff_h264_set_parameter_from_sps(), done immediately after parsing a new SPS, appears to serve no useful purpose, so it is just dropped. Also, drop now unneeded H264Context.cur_chroma_format_idc.
* h264: drop H264Context.ouputed_pocAnton Khirnov2015-04-29
| | | | It is only set, but never used for anything.
* h264: drop needs_reallocAnton Khirnov2015-04-29
| | | | It is not needed anymore since switching to refcounted frames.
* lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara2015-04-19
|
* h264: disable ER by defaultAnton Khirnov2015-04-03
| | | | | The way it is currently designed is fundamentally unsafe and cannot be reasonably fixed without completely rewriting it.
* h264: move [uv]linesize to the per-slice contextAnton Khirnov2015-03-21
| | | | | | 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.
* h264: use a smaller struct for the ref listsAnton Khirnov2015-03-21
| | | | | | There is no need to store a whole H264Picture, with a full AVFrame embedded in it. This should allow getting rid of the embedded AVFrame later.
* h264: drop the now unused per-slice H264ContextsAnton Khirnov2015-03-21
|
* h264: use the main H264Context as the parent for all slice contextsAnton Khirnov2015-03-21
| | | | There is now no need to have per-slice copies of the H264Context.
* h264: move rbsp_buffer into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move remaining ER stuff into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move top_borders into the per-slice contextAnton Khirnov2015-03-21
| | | | | Also change the method for allocating to the same one as used by edge_emu_buffer.
* h264: move the scratch buffers into the per-slice contextAnton Khirnov2015-03-21
| | | | | | | 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.
* h264_loopfilter: constify all uses of H264ContextAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264_cavlc: constify all uses of H264ContextAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264_cabac: constify all uses of H264ContextAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264.c: constify all uses of H264Context in slice and lower-level functionsAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264: move mb_mbaff into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mb_field_decoding_flag into the per-slice contextAnton Khirnov2015-03-21
|
* h264_mb: constify all uses of H264ContextAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264.h: constify all uses of H264ContextAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264_direct: constify all uses of H264ContextAnton Khirnov2015-03-21
| | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* h264: use a separate GetBitContext for slice dataAnton Khirnov2015-03-21
|
* h264: remove some remnants of data partitioningAnton Khirnov2015-03-21
|
* h264: move resync_mb_{x,y} into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mb_{x,y} into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mb_xy into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move is_complex into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mb_skip_run into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move redundant_pic_count into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move cabac_init_idc into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move loopfilter parameters into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move direct_cache into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mvd_cache into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mvd_table into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move last_qscale_diff into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move [{top,left}_]cbp into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move cabac[_state] into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move mb[_{padding,luma_dc}] into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move intra_pcm_ptr into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move the ref lists variables into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move map_col_to_list0[_field] into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move dist_scale_factor[_field] into the per-slice contextAnton Khirnov2015-03-21
|
* h264: move col_{parity,fieldoff} into the per-slice contextAnton Khirnov2015-03-21
|