* commit '3399a26d3f57d462e839c0ee51223ae9aca20852':
nvenc: allow setting the number of slices
nvenc: De-compensate aspect ratio compensation of DVD-like content.
nvenc: list the major contributors in the copyright header
configure: Don't require nonfree for nvenc
nvenc: drop the hard dependency on CUDA
nvenc: only support HW frames when CUDA is enabled
nvenc: write the VUI signal properties for HEVC
nvenc: only write the VUI signal type fields if they are set
nvenc: Generate bufferingPeriod/pictureTiming SEI
nvenc: Delay frame output to increase encoding speed
nvenc: add support for lossless encoding
nvenc: Generate AUD NAL units for better compatiblity
nvenc: fix the rc option definitions
All these commits are noop as requested by Timo Rothenpieler.
<BtbN> andrey_turkin, ubitux, yeah, I like the current state of nvenc in
ffmpeg, I think most remaining differences should be merged on the libav
side of things. At least I'm not aware of anything that's missing in
ffmpeg.
Merged-by: Clément Bœsch <u@pkh.me>
* commit '65dc7ca4c8e7e56362626a5d31e563e80108f104':
Add release notes for 12.
This commit is a noop, but we absolutely need someone to write the
release notes.
Merged-by: Clément Bœsch <u@pkh.me>
* commit 'c0f4c7db9fea1c07d290a298b8db858b7ceed96d':
configure: move the hardware accel libs' entries in the help text
Merged-by: Clément Bœsch <u@pkh.me>
* commit '5e2203448ab4cc8ea1d933b87f1b39b009201044':
configure: improve the help text for external libraries
Only merged the explanation paragraphs. The removal of "enable/disable"
and "[no]" would create too much inconsistency and might cause
confusion.
Merged-by: Clément Bœsch <u@pkh.me>
This is definitely not complete.
Anton, Diego and Luca are still maintaining their code in Libav, but are
unwilling to do so in FFmpeg, so removing these entries will prevent
them from getting poked by our users.
Måns, Justin, Kostya and Jason left both projects a while ago.
* commit '393596f9d51134d6e45d81ae129223f4faea1232':
mpegtsenc: stop impersonating ses in sdt
This commit also includes the needed FATE updates later spotted by
Martin Storsjö and fixed in 34effe816f on
Libav side.
Merged-by: Clément Bœsch <u@pkh.me>
* commit 'ffa190d0479d2370dd89c95692f822cbff2cc24c':
Move VLC and RL_VLC_ELEM structure definitions to a separate header
Merged-by: Clément Bœsch <u@pkh.me>
* commit 'd338abb664febbc2c7266af7818aab1f12dbc161':
mpeg4videodec: Call av_log() in check_marker() with AVCodecContext instead of NULL
This commit is a noop.
Since check_marker() is still in get_bits.h in FFmpeg and shared amongst
decoders, a similar but different change will be committed in the next
commit in to serve the same purpose of this one (that is, passing a
logging context to the av_log() in that function).
Merged-by: Clément Bœsch <u@pkh.me>
* commit 'e4b38878da6b38ef5ca54ce14be985d6ae088834':
Move check_marker() from get_bits to mpeg4videodec
Not merged, check_marker() is used in various other places in FFmpeg.
Merged-by: Clément Bœsch <u@pkh.me>
* commit '2fb1d17a5a6b6ff8da2434cde0fda821f06f608c':
x86inc: Enable AVX emulation in additional cases
This commit is a noop, see e428f3b30c
Merged-by: Clément Bœsch <u@pkh.me>
* commit '300fb0df84e9a563ed3b8a9b3d365abb6cf34600':
x86inc: Improve handling of %ifid with multi-token parameters
This commit is a noop, see 4bd5583ace
Merged-by: Clément Bœsch <u@pkh.me>
* commit '8d02579fae756336ae2a88d521e8cf2f6b436a2f':
x86inc: Fix AVX emulation of some instructions
This commit is a noop, see 42be240ad6
Merged-by: Clément Bœsch <u@pkh.me>
* commit 'ba3eb745cc236765c916b74b39c1874da5c3aefc':
x86inc: Fix AVX emulation of scalar float instructions
This commit is a noop, see 8dd3ee9ddd
Merged-by: Clément Bœsch <u@pkh.me>
* commit '8996515b137f962e3a8691241c285c96437b6c53':
avpacket: fix setting AVPacket.data in av_packet_ref()
This commit is a noop, see ed3a02547c
Merged-by: Clément Bœsch <u@pkh.me>
* commit 'e62ff72fc1052273deb708ba715f73e5187281d4':
lavc: make avcodec_open2() fail when the timebase is not set for encoding
Merged-by: Clément Bœsch <u@pkh.me>
* commit '755f79f84cbeb5d749fb120e55e0098a2d7663a0':
h264_refs: make the H264Context const where possible
ff_h264_decode_ref_pic_list_reordering() and h264_initialise_ref_list()
do not have a const H264Context * as they modify the default_ref inside
that context.
Merged-by: Clément Bœsch <u@pkh.me>
* commit '0ba471d7d864c712f45d7ac6aca4829aba025adc':
h264: eliminate copy_fields
Added a copy of default_ref which isn't present in Libav.
Merged-by: Clément Bœsch <u@pkh.me>
* commit '98c97994c5b90bdae02accb155eeceeb5224b8ef':
h264: decouple extradata parsing from the decoder
Main changes:
- move get_avc_nalsize() inside h264_parser.c and make it use
H264ParseContext instead of H264Context. This helps fixing
fate-flv-demux.
- Also use is_avc/nal_length_size from the H264ParseContext in various
places instead of the H264Context one as that's the fields now filled
by ff_h264_decode_extradata()
- h264_parse: dont fail decode_extradata_ps() due to nal split failure.
Change by Michael to fix decoding of h264/ref_10.avi.
Merged-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* commit '728d90a0c1973661a9e73da697bf4f90c9d19577':
h264: decouple h264_sei from the h264 decoder
Main changes:
- SEI decoding doesn't have access to the debug flag in the codec context so a
few logging are dropped.
- naming of quincunx_sampling_flag and frame_packing_arrangement_type are kept
as they are in FFmpeg instead of respectively quincunx_subsampling and
arrangement_type used in Libav because the former match the specifications.
- don't reset the x264 build info once read in order to fix
fate-h264-lossless (change by Hendrik)
- H264Context.has_recovery_point and deprecated
AVCodecContext.dtg_active_format are set after ff_h264_sei_decode()
based on the SEI state since ff_h264_sei_decode() doesn't have access
to H264Context anymore.
- frame_packing_arrangement_type is not checked against <= 0 in
decode_postinit() since it is always read as a positive value with
get_bits(). This fixes a -Wtype-limits warning by GCC spotted by
Michael.
Side Notes:
- tested that ffprobe on the file from ticket #3652 still returns 4
keyframes
- tested that playback from ticket #3063 still works
Merged-by: Clément Bœsch <clement@stupeflix.com>
Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com>
* commit 'c8dcff0cdb17d0aa03ac729eba12d1a20f1f59c8':
h264: factor out calculating the POC count into a separate file
Merged-by: Clément Bœsch <u@pkh.me>
* commit '113aeee6aed35cb786a9f6d69b0cb210f498b9da':
h264_parser: move the H264DSPContext to the parser context
H264Context is kept locally as it is currently needed for logging
(h->avctx as log context) and for is_avc and nal_length_size. These
later fields will later be obtained when the extradata parsing is
decoupled from the decoder. This code will be updated accordingly when
that commit is merged.
Merged-by: Clément Bœsch <u@pkh.me>
* 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 #631http://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 #4074http://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>
lavc/utils already rescales avpkt->pts to sub->pts in AV_TIME_BASE_Q
before calling the decode callback. This prevents from rescaling again
into the decoder, and avoid the use of avctx->time_base which will
disappear in the incoming codecpar merge.
This commit also replaces the use of "20 centisecond" (ass time base)
with "200 ms".
dv_frame_offset() is static and called only from dv_read_seek(), where
c->sys->frame_size is already used.
This simplifies the incoming codecpar merge where
avctx->{coded_width,coded_height,time_base} are not accessible anymore.
Example found in the wild:
0:00:03:25.000
0:01:47:A legend is sung
0:01:50:Of when England was young
0:01:53:And knights|were brave and bold
0:01:59:The good king had died
Reported-by: wm4