20723 Commits

Author SHA1 Message Date
Marton Balint
ffabff1baa avformat/concatdec: add support for very long line sizes
Fixes ticket #6761.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-02-24 20:21:35 +01:00
Marton Balint
dcb2ef2211 avformat/aviobuf: add ff_read_line_to_bprint and ff_read_line_to_bprint_overwrite functions
To be able to read lines longer than a static buffer size.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-02-24 20:17:04 +01:00
Tomas Härdin
5655048c73 Add muxer/demuxer for raw codec2 and .c2 files 2018-02-24 17:06:31 +01:00
Vishwanath Dixit
28924f4b48 avformat/dashenc: chunk streaming support for low latency use cases 2018-02-24 10:55:28 +05:30
Vishwanath Dixit
ffe7cc89d0 avformat/dashenc: opening a segment file when its first frame is ready 2018-02-24 10:54:09 +05:30
James Almer
9482ec1b20 avformat/hvcc: zero initialize the nal buffers past the last written byte
Prevents use of uninitialized values.

Fixes ticket #7038.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-24 00:30:28 -03:00
Aman Gupta
4f40d64e00 avformat/mpegts: set AV_DISPOSITION_DEPENDENT for mix_type=0 supplementary audio
Signed-off-by: Aman Gupta <aman@tmm1.net>
2018-02-23 13:47:29 -08:00
Aman Gupta
61ecfbc32a avformat/dump: tag AV_DISPOSITION_DESCRIPTIONS streams
Signed-off-by: Aman Gupta <aman@tmm1.net>
2018-02-23 13:47:29 -08:00
Stefan Pöschel
8720d3ffdd lavf/mpegts: add supplementary audio descriptor
The supplementary audio descriptor is defined in ETSI EN 300 468 and
provides more details regarding accessibility audio tracks, especially
the normative annex J contains a detailed description of its use.

Its language code (if present) overrides the language code of an also
present ISO 639 language descriptor.

Note that this also changes the priority of multiple descriptors with
language from "the last descriptor with language within the ES loop" to
"specific descriptor over general ISO 639 descriptor".

Signed-off-by: Aman Gupta <aman@tmm1.net>
2018-02-23 08:30:06 -08:00
Bela Bodecs
85e6a33bdf hlsenc: Fixing HLS_TEMP_FILE usage with HLS_SECOND_LEVEL_SEGMENT_...
Currently using HLS_TEMP together with HLS_SECOND_LEVEL_SEGMENT_DURATION
or HLS_SECOND_LEVEL_SEGMENT_SIZE gives error at end of each segment
writing and the final segment file names do not contain the desired
data. This patch fixes this bug by delaying the initilization of
original segment filename after actual temp file renaming will skip the
interfering.

Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
2018-02-23 21:36:11 +08:00
Nikolas Bowe
ce8a12fb72 avformat/flvdec: Set broken_sizes for FlixEngine.
we found some very old videos which suffered from
corruption after 9e6a2427558a718be0c1fffacffd935f630a7a8d, but were fine
before.
These had "End of AC stream reached in vp6_parse_coeff" warnings in logs.
These also had flv Packet mismatch warnings.
Adding FlixEngine to the list of flv muxers which produce broken packet
sizes fixes this corruption.

FlixEngine is very old and not maintained or available anymore (since
2010), so we won't need to worry about newer versions fixing the issue.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-23 01:53:34 +01:00
Gyan Doshi
4f8c691040 avformat/mpegenc - log error msgs for unsupported LPCM streams
The MPEG-PS muxer only accepts PCM streams having up to 8 channels
and the following sampling rates: 32/44.1/48/96 kHz.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-22 00:29:27 +01:00
Vishwanath Dixit
a877d22d9a avformat/movenc: addition of flag to fragment at every frame
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-20 15:27:51 +01:00
James Almer
f4f39582e7 avformat/matroskadec: fix return value
err is already an AVERROR.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-20 10:26:21 -03:00
James Almer
88eb368f42 avformat/matroskadec: free the packet on webvtt side data allocation failure
Fixes potential memory leaks

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-20 10:25:54 -03:00
James Almer
acdea9e7c5 avformat/matroskadec: ignore CodecPrivate if the stream is VP9
Defined in a recent revision of https://www.webmproject.org/docs/container/

This prevents storing the contents of CodecPrivate into extradata for
a codec that doesn't need nor expect any. It will among other things
prevent matroska specific binary data from being dumped onto other
formats during remuxing.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-19 22:13:13 -03:00
Gyan Doshi
f0809bc0fa avformat/mpegenc - accept PCM_DVD streams
PCM_S16BE stream packets in MPEG-PS have a 3-byte header and
are recognized as PCM_DVD by the demuxer which prevents their
correct remuxing in MPEG-1/2 PS.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-16 21:53:22 +01:00
James Almer
aa6280805e avformat/aviobuf: zero initialize the AVIOContext in ffio_init_context()
This makes sure no field is ever used uninitialized.

Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-14 20:56:51 -03:00
Carl Eugen Hoyos
dc77e64f2d lavf/rtpdec*: Constify all RTPDynamicProtocolHandler.
Reviewed-by: Muhammad Faiz
2018-02-14 01:14:35 +01:00
Carl Eugen Hoyos
d401ba6b3d lavf/matroskaenc: Force the minimum value for -reserve_index_space to 2.
Fixes an assertion failure:
Assertion size >= 2 failed at libavformat/matroskaenc.c:298
2018-02-12 22:50:52 +01:00
Richard Shaffer
e023334661 libavformat/aac: Parse ID3 tags between ADTS frames.
While rare, ID3 tags may be inserted between ADTS frames. This change enables
parsing them and setting the appropriate metadata updated event flag.
2018-02-12 22:08:49 +01:00
James Almer
192ea5bb77 avformat/Makefile: use individual dependencies for librtmp protocols
Fixes compilation of libavformat when librtmp is enabled but all the
relevant protocols are disabled.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-12 11:29:20 -03:00
James Almer
35347e7e9b Merge commit '4cf84e254ae75b524e1cacae499a97d7cc9e5906'
* commit '4cf84e254ae75b524e1cacae499a97d7cc9e5906':
  Drop some unnecessary config.h #includes

Merged-by: James Almer <jamrial@gmail.com>
2018-02-11 23:08:48 -03:00
Carl Eugen Hoyos
dced1f6cdf lavf/rtpdec: Constify several pointers.
Fixes two warnings:
libavformat/rtpdec.c:155:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
libavformat/rtpdec.c:168:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
2018-02-11 20:03:33 +01:00
Jan Ekström
063be4fe2c lavf/aptxdec: fix the limit on the APTX demuxer definition
Fixes breakage with --disable-muxers as it was originally limited
to the muxer, and not the demuxer.
2018-02-10 18:20:18 +02:00
Xiaohan Wang
dd5208aaf5 avformat/mov: Fix ctts_index calculation
An index should never be equal to the count. Hence we must make sure
*ctts_index < ctts_count.

Reviewed-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-10 03:57:13 +01:00
Muhammad Faiz
909e00ae81 avformat/format: temporarily use old next api
Should fix https://ffmpeg.org/pipermail/ffmpeg-devel/2018-February/225066.html

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2018-02-10 07:23:41 +07:00
Aurelien Jacobs
d8258489c8 aptx: add raw muxer and demuxer for aptX HD 2018-02-09 22:10:55 +01:00
sfan5
e752da5464 dashdec: Support SegmentTimeline inside Period
Reviewed-by: Steven Liu <lq@onvideo.cn>
2018-02-09 10:54:24 +08:00
James Almer
cf666651b4 avformat: fix stream_segment muxer build dependencies
Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-07 16:42:11 -03:00
Richard Shaffer
651d5f9639 avformat/hls: Support metadata updates from subdemuxers
If a subdemuxer has the updated metadata event flag set, the metadata is copied
to the corresponding stream. The flag is cleared on the subdemuxer and the
appropriate event flag is set on the stream.

Signed-off-by: wm4 <nfxjfg@googlemail.com>
2018-02-07 12:33:37 +01:00
James Almer
8318bf1751 avformat/fifo_test: remove network.h include
It's not needed, and fixes compilation with network disabled.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-07 00:30:00 -03:00
James Almer
36c85d6e77 api: add missing version bumps and APIChanges entries
avcodec bump missed in 7e8eba2d8755962d9dca5eade57bf8f591a73c0c
avformat bump missed in ff46124b0df17a1d35249e09ae8eae9a61f16e04 and
0694d8702421e7aff1340038559c438b61bb30dd
avdevice bump missed in 0fd475704e871ef3a535947596a012894bae3cbd

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-06 23:43:01 -03:00
James Almer
f7aacf4ab7 avformat/mov: add VP8 codec support
Demuxing only. Muxing is disabled as altref frame handling is not
defined in the spec, and there's no way to know the presence of
such frames during stream initialization.

Based on a patch by Steven Liu.

Fixes ticket #7000

Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-06 23:08:42 -03:00
James Almer
8885a29e5d avformat/Makefile: fix fifo and fifo_test muxer build objects
Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-06 20:02:23 -03:00
Michael Niedermayer
8f6a71f7f1 avformat/bintext: Implement bin_probe()
Fixes misdetection of sbQ9.bin

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-06 23:07:10 +01:00
Josh de Kock
0fd475704e lavd: add new API for iterating input and output devices
This also adds an avpriv function to register devices in
libavformat
2018-02-06 18:57:42 +00:00
Josh de Kock
0694d87024 lavf: add new API for iterating muxers and demuxers 2018-02-06 18:57:42 +00:00
Josh de Kock
598d5f8579 lavf: move fifo test muxer into separate file
This fixes the fate-fifo-muxer test with the clarified
removal of registering external formats.
2018-02-06 18:57:31 +00:00
Josh de Kock
6197453761 lavf/rtp: replace linked list with array 2018-02-06 18:50:27 +00:00
Diego Biurrun
4cf84e254a Drop some unnecessary config.h #includes 2018-02-06 10:03:15 +01:00
wm4
48bc9fffd1 id3v2: fix unsynchronization
The ID3v2 "unsynchronization scheme" requires replacing any 0xFF 0x00
sequences with 0xFF. This has to be done on every byte of the source
data, while the current code skipped a byte after a replacement. This
meant 0xFF 0x00 0xFF 00 was translated to 0xFF 0xFF 0x00 instead of 0xFF
0xFF. It feels a bit messy to do this correctly with the avio use. But
fortunately, this translation can be done in-place, so we can just do it
in memory.

Inspired by what taglib does.

Also see 9ae80e6a9cefcab61e867256ba19ef78a4bfe0cb. (The sample file for
that commit is gone, so it could not be retested.)
2018-02-04 15:19:41 +01:00
wm4
ff46124b0d rtsp: rename certain options after a deprecation period
The "timeout" option name inherently clashes with the meaning of the
HTTP libavformat protocol option with the same name. Rename it after a
deprecation period to make it compatible with the HTTP one.
2018-02-04 15:08:48 +01:00
Steven Liu
b1af0e23a3 avformat/hls: store referer message in HLS http request
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2018-02-01 10:57:29 +08:00
Steven Liu
44f3430674 avformat/http: add referer option into http
add Referer message if referer have been set.
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2018-02-01 10:56:51 +08:00
Gyan Doshi
b99e77b9f7 avformat/mpegenc - fix typo in VBV warning
Default VBV buffer size is 230KB, not 130KB.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-01-30 05:28:22 +01:00
James Almer
63b5d04e33 avformat/matroskadec: force full frame parsing of MLP/TrueHD streams
There's at least one known file with a TrueHD stream that hasn't
been correctly muxed, and requires full frame parsing and repack.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-01-29 23:09:08 -03:00
Brendan McGrath
4e3e8980b5 dashdec: Fix segfault on decoding segment timeline
If first_seq_no is not within the bounds of timelines then a segfault
will occur.
This patch removes the use of first_seq_no within the timelines array
It also adds first_seq_no to the value returned by calc_next_seg_no_from_timelines
(which allows for different values of 'startNumber')

Signed-off-by: Brendan McGrath <redmcg@redmandi.dyndns.org>
2018-01-29 10:46:50 +08:00
Marton Balint
fa8308d3d4 avformat: deprecate AVFormatContext filename field
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-28 23:06:43 +01:00
Marton Balint
18ac642359 avformat: migrate to AVFormatContext->url
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-28 23:06:43 +01:00