summaryrefslogtreecommitdiff
path: root/libavcodec/vaapi.c
Commit message (Collapse)AuthorAge
* Merge commit 'e60a6e7545dd6f5b25e3a65de9c6fdcc6e2e9d6b'Hendrik Leppkes2015-09-16
|\ | | | | | | | | | | | | * commit 'e60a6e7545dd6f5b25e3a65de9c6fdcc6e2e9d6b': mpegvideo: Drop mpegvideo.h where not needed Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * mpegvideo: Drop mpegvideo.h where not neededVittorio Giovara2015-09-13
| | | | | | | | Add necessary headers in .c files.
* | vaapi: drop unused include.Gwenole Beauchesne2015-08-19
| | | | | | | | Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
* | vaapi: fix usage of invalid buffer ids.Gwenole Beauchesne2015-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | Invalid buffer ids are defined by VA_INVALID_ID. Use that through out vaapi_*.c support files now that we have private data initialized and managed by libavcodec. Previously, the only requirement for the public vaapi_context struct was to be zero-initialized. This fixes support for 3rdparty VA drivers that strictly conform to the API whereby an invalid buffer id is VA_INVALID_ID and the first valid buffer id can actually be zero. Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
* | vaapi: streamline public context structure.Gwenole Beauchesne2015-08-19
| | | | | | | | | | | | | | | | | | | | | | | | Move libavcodec managed objects from the public struct vaapi_context to a new privately owned FFVAContext. This is done so that to clean up and streamline the public structure, but also to prepare for new codec support, thus requiring new internal data to be added in there. The AVCodecContext.hwaccel_context, that holds the public vaapi_context, shall no longer be accessed from within vaapi_*.c codec support files. Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
* | Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'Michael Niedermayer2015-04-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25': lavc: Replace av_dlog and tprintf with internal macros Conflicts: libavcodec/aacdec.c libavcodec/audio_frame_queue.c libavcodec/bitstream.c libavcodec/dcadec.c libavcodec/dnxhddec.c libavcodec/dvbsubdec.c libavcodec/dvdec.c libavcodec/dvdsubdec.c libavcodec/get_bits.h libavcodec/gifdec.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_refs.c libavcodec/imc.c libavcodec/interplayvideo.c libavcodec/jpeglsdec.c libavcodec/libopencore-amr.c libavcodec/mjpegdec.c libavcodec/mpeg12dec.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_parser.c libavcodec/pngdec.c libavcodec/ratecontrol.c libavcodec/rv10.c libavcodec/svq1dec.c libavcodec/vqavideo.c libavcodec/wmadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara2015-04-19
| |
* | Merge commit 'bab8d73765238bfeea7a8dfd454f40ac213b3d22'Michael Niedermayer2014-12-15
|\| | | | | | | | | | | | | | | | | | | | | * commit 'bab8d73765238bfeea7a8dfd454f40ac213b3d22': vaapi: wrap codec specific functions in appropiate #ifs Conflicts: libavcodec/vaapi.c See: f2118d44c9f18b3245bec2415c563d94201dcf5a Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vaapi: wrap codec specific functions in appropiate #ifsThiago Santos2014-12-14
| | | | | | | | | | | | | | | | | | | | Fix linking when only a subset of vaapi decoders is enabled. Bug-Id: 760 CC: libav-stable@libav.org Signed-off-by: RĂ©mi Denis-Courmont <remi@remlab.net> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * mpegvideo: operate with pointers to AVFrames instead of whole structswm42014-04-09
| | | | | | | | | | | | | | | | | | | | | | | | | | The most interesting parts are initialization in ff_MPV_common_init() and uninitialization in ff_MPV_common_end(). ff_mpeg_unref_picture and ff_thread_release_buffer have additional NULL checks for Picture.f, because these functions can be called on uninitialized or partially initialized Pictures. NULL pointer checks are added to ff_thread_release_buffer() stub function. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * vaapi: switch ff_vaapi_get_surface_id from Picture to AVFramewm42014-03-20
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Fix compilation with --disable-everything --enable-shared.Carl Eugen Hoyos2013-07-29
| | | | | | | | | | | | | | Compilation with --disable-everything --enable-shared failed on systems with VAAPI support with the following undefined symbol in libavcodec/vaapi.o: libavcodec/libavcodec.so: undefined reference to `ff_mpeg_draw_horiz_band'
* | vaapi: return early from ff_vaapi_render_picture() without pictureJanne Grunau2013-06-18
| | | | | | | | | | | | | | | | | | | | Fixes an assertion when called on uninitialized frame. Spotted after seeking in vlc. Fixes ticket #2461. Tested-by: Timo Reviewed-by: Joakim Plate Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
* | Revert "vaapi: return early from ff_vaapi_render_picture() without picture"Carl Eugen Hoyos2013-06-18
| | | | | | | | | | | | This reverts commit 4cbf245f2a2cd2170ca30b0788c2af5b506fe6d6. I messed up the author information.
* | vaapi: return early from ff_vaapi_render_picture() without pictureCarl Eugen Hoyos2013-06-18
| | | | | | | | | | | | | | | | | | Fixes an assertion when called on uninitialized frame. Spotted after seeking in vlc. Fixes ticket #2461. Tested-by: Timo Reviewed-by: Joakim Plate
* | Merge commit '3e175a2a550f5c2f788e8cd969052e10a5025a27'Michael Niedermayer2013-03-15
|\| | | | | | | | | | | | | | | * commit '3e175a2a550f5c2f788e8cd969052e10a5025a27': avconv: mark attachment streams as immediately finished vaapi: fix argument for ff_vaapi_common_end_frame call Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vaapi: fix argument for ff_vaapi_common_end_frame callJanne Grunau2013-03-14
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-02-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: h264: deMpegEncContextize Conflicts: libavcodec/dxva2_h264.c libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_mb_template.c libavcodec/h264_parser.c libavcodec/h264_ps.c libavcodec/h264_refs.c libavcodec/h264_sei.c libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * 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>
* | Merge commit '1d0feb5d1ac04d187b335f0e8d411c9f40b3a885'Michael Niedermayer2013-02-16
|\| | | | | | | | | | | | | | | | | | | * commit '1d0feb5d1ac04d187b335f0e8d411c9f40b3a885': mpegvideo: split ff_draw_horiz_band(). Conflicts: libavcodec/vc1dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegvideo: split ff_draw_horiz_band().Anton Khirnov2013-02-15
| | | | | | | | Split out dependency on MpegEncContext.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-06-24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: doxygen: Consistently use '@' instead of '\' for Doxygen markup. Use av_printf_format to check the usage of printf style functions Add av_printf_format, for marking printf style format strings and their parameters ARM: enable thumb for Cortex-M* CPUs nsvdec: Propagate error values instead of returning 0 in nsv_read_header(). build: remove SRC_PATH_BARE variable build: move basic rules and variables to main Makefile build: move special targets to end of main Makefile lavdev: improve feedback in case of invalid frame rate/size vfwcap: prefer "framerate_q" over "fps" in vfw_read_header() v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters() fbdev: prefer "framerate_q" over "fps" in device context bktr: prefer "framerate" over "fps" for grab_read_header() ALSA: implement channel layout for playback. alsa: support unsigned variants of already supported signed formats. alsa: add support for more formats. ARM: allow building in Thumb2 mode Conflicts: common.mak doc/APIchanges libavcodec/vdpau.h libavdevice/alsa-audio-common.c libavdevice/fbdev.c libavdevice/libdc1394.c libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * doxygen: Consistently use '@' instead of '\' for Doxygen markup.Diego Biurrun2011-06-24
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Replace dprintf with av_dlogLuca Barbato2011-01-29
| | | | | | | | dprintf clashes with POSIX.1-2008
* | Replace dprintf with av_dlogLuca Barbato2011-01-30
|/ | | | | dprintf clashes with POSIX.1-2008 (cherry picked from commit dfd2a005eb29e4b9f2fdb97036eb7d5c38ae4bd4)
* Rename ff_vaapi_alloc_picture() to ff_vaapi_alloc_pic_param().Gwenole Beauchesne2009-12-28
| | | | Originally committed as revision 20942 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename ff_vaapi_get_surface() to ff_vaapi_get_surface_id().Gwenole Beauchesne2009-12-28
| | | | Originally committed as revision 20941 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Improve VA API buffers allocation logic. This also reduces struct vaapi_contextGwenole Beauchesne2009-03-31
| | | | | | down to ~60 bytes vs. a few KBs before, and gets rid of explicit VA data types. Originally committed as revision 18256 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add common VA API data structures and helpers.Gwenole Beauchesne2009-03-22
Originally committed as revision 18136 to svn://svn.ffmpeg.org/ffmpeg/trunk