summaryrefslogtreecommitdiff
path: root/libavcodec/vdpau_h264.c
Commit message (Collapse)AuthorAge
* cosmetics: Fix spelling mistakesVittorio Giovara2016-05-04
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* h264: factor out calculating the POC count into a separate fileAnton Khirnov2016-04-24
| | | | This will allow decoupling the parser from the decoder.
* h264: decouple h264_ps from the h264 decoderAnton Khirnov2016-04-24
| | | | | | | | | Make the SPS/PPS parsing independent of the H264Context, to allow decoupling the parser from the decoder. The change is modelled after the one done earlier for HEVC. Move the dequant buffers to the PPS to avoid complex checks whether they changed and an expensive copy for frame threads.
* h264: use properly allocated AVFramesAnton Khirnov2015-04-29
|
* h264: move the ref lists variables into the per-slice contextAnton Khirnov2015-03-21
|
* vdpau: add support for the H.264 High 4:4:4 Predictive profileRémi Denis-Courmont2014-12-25
| | | | | Signed-off-by: Rémi Denis-Courmont <remi@remlab.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau: add mapping for H.264 Constrained Baseline profile and fallbackRémi Denis-Courmont2014-12-14
| | | | | | | Old VDPAU drivers do not support this newly defined profile, so falling back to Main profile is necessary for backward binary compatibility. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau: add mapping for H.264 Extended profileRémi Denis-Courmont2014-12-14
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau/h264: request MAIN rather than BASELINE VDPAU profile for CBPRémi Denis-Courmont2014-10-28
| | | | | | | | | | | | | | The H.264 Constrained Baseline Profile (CBP) is a subset of both the Main Profile and the Baseline Profile. In principles, a hardware decoder that supports either of those can decode CBP content. As it happens, Main is supported by all VDPAU drivers, and Baseline is not. So favor map CBP to MP for now. Hopefully in the future libvdpau will offer an explicit choice for CBP. This fixes bug 757. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau: pass codec-specific parameters from hwaccelRémi Denis-Courmont2014-10-05
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau: factor out common end-of-frame handlingRémi Denis-Courmont2014-10-05
| | | | | | Also add error handling. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* hwaccel: Rename priv_data_size to frame_priv_data_sizeAnton Khirnov2014-05-11
| | | | This describes more accurately what this field is for.
* vdpau: switch ff_vdpau_get_surface_id from Picture to AVFramewm42014-03-20
| | | | | | | | This gets rid of aliasing completely unrelated structs to Picture. Fixes the remaining compilation warnings in the vdpau code. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau: don't assume Picture and H264Picture are the samewm42014-03-20
| | | | | | | | | The code passed H264Picture* and Picture*, and assumed the hwaccel_picture_private field was in the same place in both structs. Somehow this happened to work in Libav, but broke in FFmpeg (and probably subtly breaks in Libav too). Signed-off-by: Anton Khirnov <anton@khirnov.net>
* mpegvideo: move mpegvideo formats-related defines to mpegutils.hVittorio Giovara2014-03-16
|
* h264: move relevant fields from Picture to H264PictureVittorio Giovara2014-03-16
|
* vdpau: store picture data in picture's rather than codec's contextRémi Denis-Courmont2013-08-05
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavc decoders: work with refcounted frames.Anton Khirnov2013-03-08
|
* h264: deMpegEncContextizeAnton Khirnov2013-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | Most of the changes are just trivial are just trivial replacements of fields from MpegEncContext with equivalent fields in H264Context. Everything in h264* other than h264.c are those trivial changes. The nontrivial parts are: 1) extracting a simplified version of the frame management code from mpegvideo.c. We don't need last/next_picture anymore, since h264 uses its own more complex system already and those were set only to appease the mpegvideo parts. 2) some tables that need to be allocated/freed in appropriate places. 3) hwaccels -- mostly trivial replacements. for dxva, the draw_horiz_band() call is moved from ff_dxva2_common_end_frame() to per-codec end_frame() callbacks, because it's now different for h264 and MpegEncContext-based decoders. 4) svq3 -- it does not use h264 complex reference system, so I just added some very simplistic frame management instead and dropped the use of ff_h264_frame_start(). Because of this I also had to move some initialization code to svq3. Additional fixes for chroma format and bit depth changes by Janne Grunau <janne-libav@jannau.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vdpau: Add H.264 decoding via hwaccel infrastructureRémi Denis-Courmont2013-01-13
Signed-off-by: Diego Biurrun <diego@biurrun.de>