Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-11-27lavc: Mark all AVHWAccel structures as constMark Thompson
2017-11-12Merge commit 'b46a77f19ddc4b2b5fa3187835ceb602a5244e24'James Almer
* commit 'b46a77f19ddc4b2b5fa3187835ceb602a5244e24': lavc: external hardware frame pool initialization Includes the fix from e724bdfffbd3c27aac53d1f32f20f105f37caef0 Merged-by: James Almer <jamrial@gmail.com>
2017-10-19lavc: external hardware frame pool initializationwm4
This adds a new API, which allows the API user to query the required AVHWFramesContext parameters. This also reduces code duplication across the hwaccels by introducing ff_decode_get_hw_frames_ctx(), which uses the new API function. It takes care of initializing the hw_frames_ctx if needed, and does additional error handling and API usage checking. Support for VDA and Cuvid missing. Signed-off-by: Anton Khirnov <anton@khirnov.net>
2017-06-27dxva: add support for new dxva2 and d3d11 hwaccel APIswm4
This also adds support to avconv (which is trivial due to the new hwaccel API being generic enough). The new decoder setup code in dxva2.c is significantly based on work by Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites. Merges Libav commit f9e7a2f95a7194a8736cc1416a03a1a0155a3e9f. Also adds untested VP9 support. The check for DXVA2 COBJs is removed. Just update your MinGW to something newer than a 5 year old release. Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-06-27dxva: preparations for new hwaccel APIwm4
The actual hwaccel code will need to access an internal context instead of avctx->hwaccel_context, so add a new DXVA_CONTEXT() macro, that will dispatch between the "old" external and the new internal context. Also, the new API requires a new D3D11 pixfmt, so all places which check for the pixfmt need to be adjusted. Introduce a ff_dxva2_is_d3d11() function, which does the check. Merges Libav commit 4dec101acc393fbfe9a8ce0237b9efbae3f20139. Adds changes to vp9 over the Libav patch. Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-06-08dxva: add support for new dxva2 and d3d11 hwaccel APIswm4
This also adds support to avconv (which is trivial due to the new hwaccel API being generic enough). The new decoder setup code in dxva2.c is significantly based on work by Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites. Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-06-08dxva: preparations for new hwaccel APIwm4
The actual hwaccel code will need to access an internal context instead of avctx->hwaccel_context, so add a new DXVA_CONTEXT() macro, that will dispatch between the "old" external and the new internal context. Also, the new API requires a new D3D11 pixfmt, so all places which check for the pixfmt need to be adjusted. Introduce a ff_dxva2_is_d3d11() function, which does the check. Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-01-16dxva2: use a single macro to test if the DXVA context is validSteve Lhomme
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-01-08dxva2: Factorize DXVA context validity test into a single macroSteve Lhomme
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-08-01Merge commit 'f638b67e5790735f34620bf82025c9b9d6fc7216'James Almer
* commit 'f638b67e5790735f34620bf82025c9b9d6fc7216': h264: move the parameter set definitions to a new header file Conflicts: libavcodec/h264_parse.h libavcodec/h264_ps.c libavcodec/h264dec.h Merged-by: James Almer <jamrial@gmail.com>
2016-07-29Merge commit '9df889a5f116c1ee78c2f239e0ba599c492431aa'Clément Bœsch
* commit '9df889a5f116c1ee78c2f239e0ba599c492431aa': h264: rename h264.[ch] to h264dec.[ch] Merged-by: Clément Bœsch <u@pkh.me>
2016-06-21Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch
* commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <u@pkh.me>
2016-06-21dxva2_h264: Remove an unused variableMartin Storsjö
This was introduced by mistake in 39cdbb12aa214 (only one of the added variables were really needed). Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-21h264: move the parameter set definitions to a new header fileAnton Khirnov
The PS parsing code is independent from the decoder, so it makes more sense for it to have its own separate header.
2016-06-21h264: rename h264.[ch] to h264dec.[ch]Anton Khirnov
This is more consistent with the naming of other decoders.
2016-06-12Merge commit 'c8dcff0cdb17d0aa03ac729eba12d1a20f1f59c8'Clément Bœsch
* commit 'c8dcff0cdb17d0aa03ac729eba12d1a20f1f59c8': h264: factor out calculating the POC count into a separate file Merged-by: Clément Bœsch <u@pkh.me>
2016-06-12Merge commit '3176217c60ca7828712985092d9102d331ea4f3d'Clément Bœsch
* commit '3176217c60ca7828712985092d9102d331ea4f3d': h264: decouple h264_ps from the h264 decoder Main changes: - a local GetBitContext is created for the various ff_h264_decode_seq_parameter_set() attempts - just like the old code, remove_sps() is adjusted so it doesn't remove the pps. Fixes decode with Ticket #631 http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20111108/dae58f17/attachment.mp4 but see next point as well. - ff_h264_update_thread_context() is updated to work even when SPS isn't set as it breaks current skip_frame code. This makes sure we can still decode the sample from ticket #631 without the need for -flags2 +chunks. (Thanks to Michael) - keep {sps,pps}_ref pointers that stay alive even when the active pps/sps get removed from the available lists (patch by michaelni with additionnal frees in ff_h264_free_context() from mateo) - added a check on sps in avpriv_h264_has_num_reorder_frames() to fix crashes with mpegts_with_dvbsubs.ts from Ticket #4074 http://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket4074/mpegts_with_dvbsubs.ts - in h264_parser.c:h264_parse(), after the ff_h264_decode_extradata() is called, the pps and sps from the local parser context are updated with the pps and sps from the used h264context. This fixes fate-flv-demux. - in h264_slice.c, "PPS changed between slices" error is not triggered anymore in one condition as it makes fate-h264-xavc-4389 fails with THREADS=N (Thanks to Michael) Merged-by: Clément Bœsch <clement@stupeflix.com> Merged-by: Michael Niedermayer <michael@niedermayer.cc> Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
2016-05-08avcodec/dxva2_h264: fix slice offset in long slice struct after ca2f19b9Hendrik Leppkes
The GetBitContext now includes the NAL header, which offsets the slice by one byte, which needs to be accounted for here.
2016-05-04cosmetics: Fix spelling mistakesVittorio Giovara
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-04-26Merge commit 'e481458bc308ee838deaeacac51929514762e7a7'Derek Buitenhuis
* commit 'e481458bc308ee838deaeacac51929514762e7a7': h264: factor out pred weight table parsing into a separate file Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-25dxva2_h264: Unbreak compilation after 3176217c6Martin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-04-24Merge commit 'a7da517f6a5c472f46f67dd33bb6b95ccc919923'Derek Buitenhuis
* commit 'a7da517f6a5c472f46f67dd33bb6b95ccc919923': h264data: Move all data tables from a header to a .c file Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24h264: factor out calculating the POC count into a separate fileAnton Khirnov
This will allow decoupling the parser from the decoder.
2016-04-24h264: decouple h264_ps from the h264 decoderAnton Khirnov
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.
2016-03-28h264: factor out pred weight table parsing into a separate fileAnton Khirnov
This will allow decoupling the parser from the decoder.
2016-03-25h264data: Move all data tables from a header to a .c fileDiego Biurrun
2016-03-16dxva2_h264: fix size alignment assertsHendrik Leppkes
Convert them to av_assert0 in the process
2016-03-16lavc/dxva2_h264: Fix incorrect assert statement.Matt Oliver
Signed-off-by: Matt Oliver <protogonoi@gmail.com>
2016-01-23dxva2_h264: fix reference field marking in long slice structHendrik Leppkes
Fixes artifacts in interlaced decoding on old Intel GPUs.
2015-10-15Merge commit '08377f9c3bf6dbe216512a2e05c9fac837b13fc0'Hendrik Leppkes
* commit '08377f9c3bf6dbe216512a2e05c9fac837b13fc0': dxva: Include last the internal header Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-10-14dxva: Include last the internal headerLuca Barbato
It redefines _WIN32_WINNT, possibly causing problems with the w32pthreads.h header.
2015-05-26avcodec/dxva2_h264: Fix "may be used uninitialized" warningsMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-25Merge commit 'd8039ef8d221ea273aa4f1e62e5df21bf618c772'Michael Niedermayer
* commit 'd8039ef8d221ea273aa4f1e62e5df21bf618c772': D3D11va: add a Direct3D11 video decoder similar to DXVA2 Conflicts: Changelog configure libavcodec/Makefile libavcodec/allcodecs.c libavcodec/dxva2_vc1.c libavcodec/version.h libavutil/pixdesc.c libavutil/pixfmt.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-25D3D11va: add a Direct3D11 video decoder similar to DXVA2Steve Lhomme
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-29Merge commit 'a0f2946068c62e18cb05ac25c0df3d86077251a6'Michael Niedermayer
* commit 'a0f2946068c62e18cb05ac25c0df3d86077251a6': h264: use properly allocated AVFrames Conflicts: libavcodec/h264.c libavcodec/h264.h libavcodec/h264_refs.c libavcodec/h264_slice.c libavcodec/svq3.c libavcodec/vda_h264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-29h264: use properly allocated AVFramesAnton Khirnov
2015-03-23dxva2_h264: fix slice offset in long slice structsHendrik Leppkes
2015-03-23dxva2_h264: fix slice offset in long slice structsHendrik Leppkes
Fixes Ticket #4384 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-22Merge commit 'a12d3188cbec15e22070e139fa5cc541da07e2c3'Michael Niedermayer
* commit 'a12d3188cbec15e22070e139fa5cc541da07e2c3': h264: use a smaller struct for the ref lists Conflicts: libavcodec/h264_direct.c libavcodec/h264_mb.c libavcodec/h264_picture.c libavcodec/h264_refs.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977'Michael Niedermayer
* commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977': h264: move mb_{x,y} into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_cavlc.c libavcodec/h264_mb.c libavcodec/h264_slice.c libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '9951907f6fc37a8d41566dbee09f7c15ff587de6'Michael Niedermayer
* commit '9951907f6fc37a8d41566dbee09f7c15ff587de6': h264: move redundant_pic_count into the per-slice context Conflicts: libavcodec/h264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'a9b201cacf85d710b102010cb4baef97f00ea39b'Michael Niedermayer
* commit 'a9b201cacf85d710b102010cb4baef97f00ea39b': h264: move cabac_init_idc into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'e6c90ce94f1b07f50cea2babf7471af455cca0ff'Michael Niedermayer
* commit 'e6c90ce94f1b07f50cea2babf7471af455cca0ff': h264: move loopfilter parameters into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '95eb35f30513e335990ad0d5dca6ddc318477291'Michael Niedermayer
* commit '95eb35f30513e335990ad0d5dca6ddc318477291': h264: move the ref lists variables into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_direct.c libavcodec/h264_mb.c libavcodec/h264_picture.c libavcodec/h264_refs.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '066aafced4dc6c7c9e7b37082635472249f1e93e'Michael Niedermayer
* commit '066aafced4dc6c7c9e7b37082635472249f1e93e': h264: move direct_spatial_mv_pred into the per-slice context Conflicts: libavcodec/h264_mvpred.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '56febc993b928ccc039a32158ca60b234c311875'Michael Niedermayer
* commit '56febc993b928ccc039a32158ca60b234c311875': h264: move the slice type variables into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'd231e84b06a9964c840cff4e228509f706165fb6'Michael Niedermayer
* commit 'd231e84b06a9964c840cff4e228509f706165fb6': h264: move the quantizers into the per-slice context Conflicts: libavcodec/dxva2_h264.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '92c6c2a605f9b077b8fbc25b7ed6625541232b87'Michael Niedermayer
* commit '92c6c2a605f9b077b8fbc25b7ed6625541232b87': h264: split weighted pred-related vars into per-slice context Conflicts: libavcodec/h264.c libavcodec/h264.h libavcodec/h264_mb.c libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21h264: use a smaller struct for the ref listsAnton Khirnov
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.
2015-03-21h264: move mb_{x,y} into the per-slice contextAnton Khirnov