summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
* API: add AV_PKT_DATA_ICC_PROFILE to AVPacketSideDataTypevectronic2020-03-10
| | | | Signed-off-by: vectronic <hello.vectronic@gmail.com>
* avformat/libzmq: Make default pkt_size value consistent with amqpAndriy Gelman2020-03-09
| | | | | Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat: Add AMQP version 0-9-1 protocol supportAndriy Gelman2020-03-09
| | | | | | | Supports connecting to a RabbitMQ broker via AMQP version 0-9-1. Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/alp: tweak probe function to return MAX-1Zane van Iperen2020-03-09
| | | | Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat: add demuxer for LEGO Racers' ALP formatZane van Iperen2020-03-09
| | | | | | Signed-off-by: Zane van Iperen <zane@zanevaniperen.com> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/udp: support w32pthreads compatphunkyfish2020-03-08
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* lavf/dashdec: add 3GPP TS26.247 probe in dash demuxerJun Zhao2020-03-05
| | | | | | | Enabled the 3GP-DASH Release-10/Relase-11(3GPP TS26.247) profile to dash demuxer probe. Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* lavf/dashdec: Add ts to the list of allowed extensions.Jun Zhao2020-03-05
| | | | | | | | Dashdec can able to handle MPEG-2 TS streams by default as well, used MP4Box to create the segmented MPEG-2 TS files for verification. Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* avformat/segment: Don't set extradata size twiceAndreas Rheinhardt2020-03-02
| | | | | | | | | ff_alloc_extradata() already sets the size of the extradata so doing it again is unnecessary. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mxfenc: use a zero based continuity counterMarton Balint2020-03-02
| | | | | | | | | | The standard does not seem to require the counter to be zero based, but some checker tools (MyriadBits MXFInspect, Interra Baton) have validations against 0 start... Fixes ticket #6781. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/mp3dec: Count last partial frame in probe.Michael Niedermayer2020-02-28
| | | | | | | | Fixes: regression Fixes: Ticket8511 Reviewed-by: Anton Khirnov <anton@khirnov.net> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/ivfenc: Don't use size_t for size of fileAndreas Rheinhardt2020-02-28
| | | | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libavformat/avienc: Check bits per sample for PAL8Michael Niedermayer2020-02-27
| | | | | | | Fixes: assertion failure Fixes: Ticket 8172 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mpegts: Improve the position determination for ↵Michael Niedermayer2020-02-27
| | | | | | | | | avpriv_mpegts_parse_packet() Fixes: assertion failure Fixes: Ticket 8005 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/dashenc: use a quieter log lever when informing prft was ↵James Almer2020-02-26
| | | | | | | automatically enabled Suggested-by: Anton Khirnov <anton@khirnov.net> Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/mvdec: Check stream numbersMichael Niedermayer2020-02-25
| | | | | | | | | Fixes: null pointer dereference Fixes: 20768/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5638648978735104.fuzz Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mux: CosmeticsAndreas Rheinhardt2020-02-25
| | | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/segafilmenc: Add deinit functionAndreas Rheinhardt2020-02-25
| | | | | | | | Prevents memleaks when the trailer is never written or when shifting the data fails when writing the trailer. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/segafilmenc: Combine several checksAndreas Rheinhardt2020-02-25
| | | | | | | by moving them around. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/utvideodec: add support for UQY0Paul B Mahol2020-02-25
|
* avformat/libsrt: make avformat connect timeout 0 by defaultMarton Balint2020-02-24
| | | | | | | Otherwise the user is not able to override the SRT API connect timeout above 5 sec without also setting the timeout option. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: use listen_timeout for listeningMarton Balint2020-02-24
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: send non-blocking mode on both the listen and the connect ↵Marton Balint2020-02-24
| | | | | | socket Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: small fixes in libsrt_neterrno()Marton Balint2020-02-24
| | | | | | | | Return os error code if available, check for both SRT_EASYNCRCV and SRT_EASYNCSND when transforming them to EAGAIN and only display error if it is not EAGAIN. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: poll for error conditions as wellMarton Balint2020-02-24
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: fix checking connection result in non-blocking modeMarton Balint2020-02-24
| | | | | | | | | | | | After f8990c5f414d4575415e2a3981c3b142222ca3d4 we properly set non-blocking mode which makes the connect() call return always 0 even if no connection can be established. Fix this by always doing a poll after calling connect(). Also there was some leftover copy paste code which checks for various errors which are simply not possible with SRT. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: fix name of timeout optionMarton Balint2020-02-24
| | | | | | | rw_timeout is the generic URLcontext option, not the protocol specific timeout option, also ?rw_timeout never worked because ?timeout was parsed instead. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: fix timeout unit confusion between milisec and microsecMarton Balint2020-02-24
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/dashenc: always attempt to enable prft in ldash modeJames Almer2020-02-22
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: write a capture time Producer Reference Time element when ↵James Almer2020-02-22
| | | | | | | | none is provided by the encoder This way, the element will be present in any scenario when the write_prft option is used. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: write the styp box when the first frame of a segment is readyJames Almer2020-02-22
| | | | | | | This ensures it's written at the beginning of a segment in non streaming mode when segment duration differs from fragment duration. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/utils: Don't trigger errors for multiple id3 tags.Dale Curtis2020-02-22
| | | | | | | | | | | | Such errors may make sense for specific formats, but general parsing logic shouldn't be treating these as errors regardless of the error recognition mode. Fixes loading of the following wave when using -err_detect explode: https://cs.chromium.org/chromium/src/third_party/blink/web_tests/external/wpt/webaudio/resources/4ch-440.wav Signed-off-by: Dale Curtis <dalecurtis@chromium.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/segafilmenc: Remove redundant checksAndreas Rheinhardt2020-02-22
| | | | | | | | | | | | | | | | | | If an audio stream is present, the Sega FILM muxer checks for its compability with the container during init, so that the very same check needn't be repeated during writing the trailer. Essentially the same is true for the presence of a video stream: It has already been checked during init. Furthermore, after the check for the presence of a video stream succeeded, a pointer is set to point to the video stream. Yet said pointer (which was NULL before) will be derefenced anyway regardless of the result of the check. Coverity thus complained about this in CID 1434155 and removing this pointless check will also fix this issue. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat: add demuxer for Rayman 2's APM formatZane van Iperen2020-02-21
| | | | | | Adds support for the APM file format used by Ubisoft's Rayman 2. Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat/spdifenc: fix TrueHD streams over 48kHzAnssi Hannula2020-02-20
| | | | | | | | Commit 36e156bef02 ("avformat/spdifenc: fix handling of large TrueHD frame") added an obviously incorrect bitshift that caused incorrect samples-per-frame calculation for TrueHD streams over 48kHz. Fix that.
* avformat/spdifenc: fix handling of large TrueHD framesAnssi Hannula2020-02-20
| | | | | | | | | | | | | | | | | | | | | The TrueHD IEC 61937 encapsulation code uses a very naive method of always inserting 24 TrueHD frames evenly in a MAT frame. This does not work for larger frames as they may exceed the size of 1/24th of a MAT frame. To fix that, use the input_timing field in the TrueHD frame to determine the proper position of the TrueHD frame in the MAT frame. That field is basically a dts field, telling the time to feed this frame to the decoder in sample count units. This can cause a TrueHD frame to be split between two MAT frames, so a second concatenation hd_buf is added, alternating with the first buffer. Large frames are preceded by smaller frames that have input_timing values that cause the frames to be sent out faster than the nominal rate (i.e. increasing decoder latency, long decoder buffer), allowing the larger frames to then be sent out slower than the nominal rate as the decoder has enough data buffered to keep it busy.
* avformat/spdifenc: make hd_buf an arrayAnssi Hannula2020-02-20
| | | | | | | | This is preparation for adding a second hd_buf in a followup commit. Also, slightly improve the comments for hd_buf_x members to clarify which ones are actually used and kept up-to-date depending on which codec is being muxed.
* avformat/vivo: set packet durationPaul B Mahol2020-02-20
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/vivo: improve probing of some filesPaul B Mahol2020-02-20
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec: add siren audio decoderPaul B Mahol2020-02-20
|
* avformat/wtvdec: Forward errors when reading packetAndreas Rheinhardt2020-02-19
| | | | | | | | | | | | | | | wtvfile_read_packet did not abide by the requirements of an AVIOContext's read_packet-function: If it did not read anything, it returned zero, which currently leads to a warning in read_packet_wrapper in aviobuf.c. Said warning will be an av_assert2 as soon as FF_API_OLD_AVIO_EOF_0 is zero (probably the next major version bump). So instead forward the error code from the underlying protocol. This error/assert is triggered in the wtv-demux FATE test. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Peter Ross <pross@xvid.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/dashenc: warn if Producer Reference Time element option is missing ↵James Almer2020-02-17
| | | | | | when ldash mode is used Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: disable Resync elements when using DVB-DASH profileJames Almer2020-02-17
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: always set coding_dependency to 1 if a parser isn't usedJames Almer2020-02-16
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: include an availabilityTimeComplete element in all ↵James Almer2020-02-16
| | | | | | | | | streaming modes It's not exclusive for Low Latency streaming. The muxer will serve partial segments regardless of streaming mode. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: add Trick Mode support for AdaptationSetsJames Almer2020-02-16
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/dashenc: make AdaptationSet id an integer valueJames Almer2020-02-16
| | | | | | | Unlike Representation id, it's defined as an integer in the spec, and not as a string. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/utils: Fix integer overflow with complex time bases in ↵Michael Niedermayer2020-02-16
| | | | | | | | | | | avformat_find_stream_info() Fixes: signed integer overflow: 2045163756 * 2 cannot be represented in type 'int' Fixes: Ticket5132 Found-by: tsmith Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/avidec: Avoid integer overflow in NI switch checkMichael Niedermayer2020-02-16
| | | | | | | | | Fixes: signed integer overflow: 0 - -9223372036854775808 cannot be represented in type 'long' Fixes: Ticket8149 Found-by: Suhwan Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/utils: avoid unsigned integer overflowsPaul B Mahol2020-02-16
|