Broadcast
  1. Broadcast

ffmpeg

Public

Network

 
AuthorCommitMessageCommit Date
Anton SchubertAnton Schubert
bf8864618b4reduce warning about pts difference
Peter GroßePeter Große
ed3194cd7b3ffmpeg.c: fix code style in seek_to_start Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
90741f3d263ffmpeg.c: fix calculation of input file duration in seek_to_start() Fixes looping files without audio or when using stream_copy, where ist->nb_samples is not set since no decoding is done. This fixes ticket #5719 and also fixes an endless loop with the sample in ticket #6139. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Jonas LichtJonas Licht
a5c61717d12libavformat/mov.c: use calculated dts offset when seeking in streams Subtract the calculated dts offset from the requested timestamp before seeking. This fixes an error "Error while filtering: Operation not permitted" observed with a short file which contains only one key frame and starts with negative timestamps. Then, av_index_search_timestamp() returns a valid negative timestamp, but mov_seek_stream bails out with AVERROR_INVALIDDATA. Fixes ticket #6139. Signed-off-by: Jonas Licht <jon...
Anton SchubertAnton Schubert
e9d644b30b3decklink: use device number as device_name for selecting decklink devices by index
Anton SchubertAnton Schubert
0943ec9cc0ddoc: add duplex_mode option for decklink output
Anton SchubertAnton Schubert
1bfcce293c4decklink_enc: Add option for setting the duplex_mode also on output
Anton SchubertAnton Schubert
d79cb1fa02adecklink_common: try to set duplex_mode for the paired device if the current one doesn't support duplex-configuration
Peter GroßePeter Große
755a5d613cadoc: add dash muxer Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Peter GroßePeter Große
c667ba79d7edashenc: copy stream frame rate to output stream Leads to setting of DefaultDuration in Matroska muxer based on frame rate instead of timebase. Fixes playback in Chrome. Signed-off-by: Peter Große <pegro@friiks.de>
Anton SchubertAnton Schubert
8181a19b944dashenc: Don't output frameRates at both AS and Representation-level. Only output maxFrameRate at AS-level. Fix conformance regarding section "3.2.4. Presence of Attributes and Element" of the "Guidelines for Implementation: DASH-IF Interoperability Points V4.1" (http://dashif.org/guidelines/) Signed-off-by: Anton Schubert <ischluff@mailbox.org> Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
67046e6968edashenc: allow AdaptaionSets to have different average frame rates Signed-off-by: Peter Große <pegro@friiks.de>
Peter GroßePeter Große
b35df556a44dashenc: don't write header data before the first packet arrives Fixes: 1b8ef01f04ab ("dashenc: add webm support") Signed-off-by: Peter Große <pegro@friiks.de>
Peter GroßePeter Große
998af56d15fdashenc: set DASH related options for the subsequent matroska muxer when using webm This patch is inspired by the ffmpeg webm_chunk muxer and fixes that all resulting tracks have the same track number. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Anton SchubertAnton Schubert
a85f5c15a4cdashenc: fix bitrate estimation with correct scaling Signed-off-by: Anton Schubert <ischluff@mailbox.org> Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
f4a6ff3fd74dashenc: move UTCTiming element to the end of the manifest Required by comformance XSD [1]. [1] https://github.com/Dash-Industry-Forum/Conformance-and-reference-source/blob/master/conformance/MPDValidator/schemas/DASH-MPD.xsd Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
6b1de4faa4bdashenc: use av_dict_set_int instead of static function Signed-off-by: Peter Große <pegro@friiks.de>
Mark ThompsonMark Thompson
01e291a5924hwcontext_vaapi: Remove use of vaExportSurfaceHandle() It is not present in libva 2.0.
Michael NiedermayerMichael Niedermayer
03351cce884Update versions for 3.4 release Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael NiedermayerMichael Niedermayer
46abeb1c322avcodec/snowdec: Check mv_scale Fixes: runtime error: signed integer overflow: 2 * -1094995530 cannot be represented in type 'int' Fixes: 3512/clusterfuzz-testcase-minimized-4812747210489856 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 393d6fc7395611a38792e3c271b2be42ac45e672) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael NiedermayerMichael Niedermayer
35e36046f1aavcodec/pafvideo: Check for bitstream end in decode_0() Fixes: Timeout Fixes: 3529/clusterfuzz-testcase-5057068371279872 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 9c85329cd02e9284892bf263ce6133b2fc479792) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Sasi InguvaSasi Inguva
8500de89ea9ffmpeg.c: Fallback to duration_dts, when duration_pts can't be determined. This is required for FLV files, for which duration_pts comes out to be zero. Signed-off-by: Sasi Inguva <isasi@google.com> Reviewed-by: Thomas Mundt <tmundt75@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 2b006ccf8318d84101ed83b75df4c9682a963217) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Ivan KalvachevIvan Kalvachev
a11a18b284aFix visual glitch with XvMC, caused by wrong idct permutation. In the past XvMC forced simple_idct since it was using FF_IDCT_PERM_NONE. However now we have SIMD variants of simple_idct that are using FF_IDCT_PERM_TRANSPOSE and if they are selected XvMC would get coefficients in the wrong order. The patch creates new FF_IDCT_NONE that is used only for this kind of hardware decoding and that fallbacks to the old C only simple idct. Signed-off-by: Ivan Kalvachev <ikalvachev@gmail.com> Signed...
James AlmerJames Almer
7deb7e6acd4configure: force erroring out in check_disable_warning() if an option doesn't exists Should prevent some options from being added to cflags when they don't exist and the compiler only warns about it. Reviewd-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com> (cherry picked from commit ad56e8057d8af0201ed0cb65acc12e5889d4afcc)
Ivan KalvachevIvan Kalvachev
7fb85ad3607Fix crash if av_vdpau_bind_context() is not used. The public functions av_alloc_vdpaucontext() and av_vdpau_alloc_context() are allocating AVVDPAUContext structure that is supposed to be placed in avctx->hwaccel_context. However the rest of libavcodec/vdpau.c uses avctx->hwaccel_context as struct VDPAUHWContext, that is bigger and does contain AVVDPAUContext as first member. The usage includes write to the new variables in the bigger stuct, without checking for block size. Fix by always a...
Marton BalintMarton Balint
c8642473e0bconfigure: remove libdl dependency from libndi_newtek We are not using dynamic loading for libndi. Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu> (cherry picked from commit 58143b15adda6391ec07f3eb19e80ed91d801edd)
Michael NiedermayerMichael Niedermayer
b1ec41a64f2add release notes based on release 3.3 Name suggestion was from Helmut K. C. Tessarek Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 07e7ebf52de9257fef1398c1dc5edb847b78ab21) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
167f8c6c24bffmpeg.c: fix code style in seek_to_start Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
1c746e97f5fffmpeg.c: fix calculation of input file duration in seek_to_start() Fixes looping files without audio or when using stream_copy, where ist->nb_samples is not set since no decoding is done. This fixes ticket #5719 and also fixes an endless loop with the sample in ticket #6139. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Jonas LichtJonas Licht
866c32a6995libavformat/mov.c: use calculated dts offset when seeking in streams Subtract the calculated dts offset from the requested timestamp before seeking. This fixes an error "Error while filtering: Operation not permitted" observed with a short file which contains only one key frame and starts with negative timestamps. Then, av_index_search_timestamp() returns a valid negative timestamp, but mov_seek_stream bails out with AVERROR_INVALIDDATA. Fixes ticket #6139. Signed-off-by: Jonas Licht <jon...
Anton SchubertAnton Schubert
b66e5486100decklink: use device number as device_name for selecting decklink devices by index
Anton SchubertAnton Schubert
2c8a75fb931doc: add duplex_mode option for decklink output
Anton SchubertAnton Schubert
ca15c2e5725decklink_enc: Add option for setting the duplex_mode also on output
Anton SchubertAnton Schubert
331dc61fe3fdecklink_common: try to set duplex_mode for the paired device if the current one doesn't support duplex-configuration
Peter GroßePeter Große
4f505a50cd3dashenc: copy stream frame rate to output stream Leads to setting of DefaultDuration in Matroska muxer based on frame rate instead of timebase. Fixes playback in Chrome. Signed-off-by: Peter Große <pegro@friiks.de>
Peter GroßePeter Große
8f4f24abc06dashenc: move UTCTiming element to the end of the manifest Required by comformance XSD [1]. [1] https://github.com/Dash-Industry-Forum/Conformance-and-reference-source/blob/master/conformance/MPDValidator/schemas/DASH-MPD.xsd Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Anton SchubertAnton Schubert
1d4bd37b598dashenc: fix bitrate estimation with correct scaling Signed-off-by: Anton Schubert <ischluff@mailbox.org> Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Peter GroßePeter Große
0426c5ac3cadoc: add dash muxer Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Peter GroßePeter Große
41a1952baf2dashenc: add webm support Use webm muxer for VP8, VP9 and Opus codec, mp4 muxer otherwise. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Peter GroßePeter Große
38b72835ac4dashenc: use avio_dynbuf instead of packet_write callback The dash_write function drops data, if no IOContext is initialized. Since the mp4 muxer is used in "frag_custom" mode, data is only written when calling av_write_frame(NULL) explicitly and thus there will be no data loss. To add support for webm as subordinate muxer, which doesn't have such a mode, a dynamic buffer is required to provide an always initialized IOContext. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Ma...
Peter GroßePeter Große
aa8d66e932adashenc: copy language and role metadata from streams assigned to sets Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Peter GroßePeter Große
2dbb74146b9dashenc: default to one AdaptationSet per stream Previously all mapped streams of a media type (video, audio) where assigned to a single AdaptationSet. Using the DASH live profile it is mandatory, that the segments of all representations are aligned, which is currently not enforced. This leads to problems when using video streams with different key frame intervals. So to play safe, default to one AdaptationSet per stream, unless overwritten by explicit assignment. To get the old assignment ...
Peter GroßePeter Große
bfb3124c412dashenc: allow assigning all streams of a media type to an AdaptationSet Using the characters "v" or "a" instead of stream index numbers for assigning streams in the adaption_set option, all streams matching that given type will be added to the AdaptationSet. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Peter GroßePeter Große
ff0a7492791dashenc: add support for assigning streams to AdaptationSets Also makes sure all streams are assigned to exactly one AdaptationSet. This patch is originally based partially on code by Vignesh Venkatasubramanian. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Peter GroßePeter Große
e216f0b091ddashenc: calculate stream bitrate from first segment if not available Bandwidth information is required in the manifest, but not always provided by the demuxer. In that case calculate the bandwith based on the size and duration of the first segment. Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
Clément BœschClément Bœsch
04c38887c5aMerge commit 'e519dcd937c7c98815ba9884867590e302272016' * commit 'e519dcd937c7c98815ba9884867590e302272016': dashenc: separate segments based on current segment duration Merged-by: Clément Bœsch <u@pkh.me>
Clément BœschClément Bœsch
6af5b31e8dcMerge commit '1920382aa9f21d7ed1a3c2214990da8d2b067a92' * commit '1920382aa9f21d7ed1a3c2214990da8d2b067a92': dashenc: add option to provide UTC timing source Also use E instead of AV_OPT_FLAG_ENCODING_PARAM to be consistent with the other AVOption. Merged-by: Clément Bœsch <u@pkh.me>
Clément BœschClément Bœsch
507bf199916Merge commit '3c2717e48dd8c5115f2be35c2afcabd8a1f67aee' * commit '3c2717e48dd8c5115f2be35c2afcabd8a1f67aee': dashenc: increase buffer time hint in the manifest Merged-by: Clément Bœsch <u@pkh.me>
Clément BœschClément Bœsch
d21c4d2aff4Merge commit '95f1004bdfdf2d26c330c1d4b7c4ac9352d60b18' * commit '95f1004bdfdf2d26c330c1d4b7c4ac9352d60b18': dashenc: add mandatory id to AdaptationSet and Period in manifest Merged-by: Clément Bœsch <u@pkh.me>
Clément BœschClément Bœsch
45f5cff5d68Merge commit '1ae6cb7d6e4fee30754a46bc91f40ff75ac4412a' * commit '1ae6cb7d6e4fee30754a46bc91f40ff75ac4412a': dashenc: fix ISO8601 UTC parsing Merged-by: Clément Bœsch <u@pkh.me>