Commit Graph

19016 Commits

Author SHA1 Message Date
James Almer
3674a53d17 avformat/uncodedframecrc: fix incompatible pointer type warning
Signed-off-by: James Almer <jamrial@gmail.com>
2016-04-13 01:39:59 -03:00
Michael Niedermayer
e3111b1ff8 avformat/framehash: Add more information to the output
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-04-12 11:18:57 -03:00
Moritz Barsnick
f4a0236cbd avformat: add hash and framehash muxers
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Moritz Barsnick <barsnick@gmx.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-04-12 11:18:52 -03:00
Michael Niedermayer
196cfc278d avformat/utils: use av_codec_g/set_lowres()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-12 04:21:12 +02:00
Timo Rothenpieler
901b0f1a21 avformat/concatdec: Use correct stream count on close 2016-04-11 21:06:10 +02:00
Derek Buitenhuis
6586f62d1a Merge commit '3e8fd93b6ab219221e17fa2b6243cc72cf2d69dc'
* commit '3e8fd93b6ab219221e17fa2b6243cc72cf2d69dc':
  lavf: add a missing bump and APIchanges for the codecpar switch

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-11 15:09:00 +01:00
Derek Buitenhuis
8a1c79024d Merge commit 'fa55addd23c2f168163175aee17adb125c2c0710'
* commit 'fa55addd23c2f168163175aee17adb125c2c0710':
  img2: Drop av_ prefix for a static function

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-11 14:59:58 +01:00
Michael Niedermayer
15fa01786c avformat/hdsenc: Pass flags to child context
This is needed as the bitexact flag is not in the codecpar context, and thus not copied

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-11 04:34:00 +02:00
Michael Niedermayer
0c9ad94e97 avformat/dashenc: Pass flags to child context
This is needed as the bitexact flag is not in the codecpar context, and thus not copied

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-11 04:34:00 +02:00
Michael Niedermayer
4104f18358 avformat/segment: Pass flags to child context
This is needed as the bitexact flag is not in the codecpar context, and thus not copied

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-11 04:34:00 +02:00
Derek Buitenhuis
6f69f7a8bf Merge commit '9200514ad8717c63f82101dc394f4378854325bf'
* commit '9200514ad8717c63f82101dc394f4378854325bf':
  lavf: replace AVStream.codec with AVStream.codecpar

This has been a HUGE effort from:
    - Derek Buitenhuis <derek.buitenhuis@gmail.com>
    - Hendrik Leppkes <h.leppkes@gmail.com>
    - wm4 <nfxjfg@googlemail.com>
    - Clément Bœsch <clement@stupeflix.com>
    - James Almer <jamrial@gmail.com>
    - Michael Niedermayer <michael@niedermayer.cc>
    - Rostislav Pehlivanov <atomnuker@gmail.com>

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-10 20:59:55 +01:00
Carl Eugen Hoyos
7e1e25c2dc lavf/avio: Remove linebreak from https warning. 2016-04-10 15:39:13 +02:00
Michael Niedermayer
38a6242b27 avformat/mpegts: Remove unused argument from analyze()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-10 13:32:26 +02:00
Michael Niedermayer
ee7a642b0e avformat/mpegts: Check adaption field control in analyze() more instead of transport_error_indicator
transport_error_indicator is not required to be 0

Fixes probing
Fixes Ticket 4862

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-10 13:32:25 +02:00
Carl Eugen Hoyos
b0c026a27f lavf/rawenc: Add a raw gsm muxer. 2016-04-09 11:44:50 +02:00
Carl Eugen Hoyos
56cb465b38 lavf/gsmdec: Add raw gsm autodetection.
Fixes bug 555.
2016-04-09 11:38:46 +02:00
Paul B Mahol
a4790e1890 avformat/nistshperedec: add support for mu-law as sample-byte-format
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-08 22:34:38 +02:00
Paul B Mahol
259879d32d avformat/nistspheredec: fix silly bug
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-08 13:19:00 +02:00
Paul B Mahol
0c9490609d avformat: support shorten in nistshpere demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-07 22:15:41 +02:00
Diego Biurrun
d12b5b2f13 build: Split test programs off into separate files
This avoids spurious library rebuilds when only the test program
code is changed and simplifies the build system.
2016-04-07 16:14:42 +02:00
Diego Biurrun
01621202aa build: miscellaneous cosmetics
Restore alphabetical order in lists, break overly long lines, do some
prettyprinting, add some explanatory section comments, group parts
together that belong together logically.
2016-04-07 15:26:08 +02:00
Paul B Mahol
2d720069a9 avformat: add aix demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-07 09:08:53 +02:00
Paul B Mahol
56a3a3f01c avformat: add musx demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-05 10:49:34 +02:00
Luca Barbato
e3453fd444 matroska: Write the field order information
And bump the document version to 4.
2016-04-03 19:36:57 +02:00
Paul B Mahol
76466ab214 avformat/brstm: lower magic number, fixes decoding of some files
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-03 19:20:44 +02:00
Hendrik Leppkes
6518cbc52a lavc/utils: Introduce ff_bprint_to_codecpar_extradata for avformat
It will be used by text subtitle demuxers to construct format instructions
straight into extradata. They all currently a similar function that accepts
an AVCodecContext instead.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-03 13:04:17 -04:00
Michael Niedermayer
06c4ed0c0e avformat/wavdec: fix typo with len
Found-by: carl
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-03 17:56:02 +02:00
Michael Niedermayer
cf4d050b72 avformat/wavdec: Remove direct s->pb->buffer access
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-03 03:25:28 +02:00
Derek Buitenhuis
fcbdc44f4e wavdec: Only set the codec ID in read_header
WAV is not a NOHEADER format, and thus should not be changing
stream codec IDs and probing in read_packet.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-03 01:55:57 +02:00
Rodger Combs
4b150fbe1f lavf/segment: add option to write empty filler segments as needed 2016-04-02 13:31:26 -05:00
Rodger Combs
5b4f44f66a lavf/segment: slight refactor to seg_write_packet
This reduces some code duplication, and ensures that cur_entry.last_duration is
always set.
2016-04-02 13:31:26 -05:00
Rodger Combs
44a9395b5a lavf/segment: style nit 2016-04-02 13:31:26 -05:00
Rodger Combs
d38fe9f493 lavf/segment: support automatic bitstream filtering
Most useful for MPEG-TS. Works by having the underlying muxer configure the
bitstream filters, then moving them to our own AVStreams.
2016-04-02 03:03:13 -05:00
Derek Buitenhuis
54ccaaeb2b psxstr: Remove some commented out code
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:46:14 +01:00
Luca Barbato
5f02266681 matroska: Support interlaced content correctly
The matroska specification now has two elements for it.
2016-03-31 18:03:21 +02:00
James Almer
9bf3d01d91 avformat/latmenc: auto-insert aac_adtstoasc bitstream filter when needed
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-03-30 21:58:48 -03:00
James Almer
d5a3578350 avformat/svag: fix division by zero
Fixes ticket #5386

Signed-off-by: James Almer <jamrial@gmail.com>
2016-03-28 21:34:08 -03:00
Lou Logan
06eef96b69 fix some a/an typos
Signed-off-by: Lou Logan <lou@lrcd.com>
2016-03-28 14:13:17 -08:00
Marton Balint
8ff0f6ae82 avformat/segment: set format options for all segments
Fixes ticket #5318.

Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-03-26 23:26:27 +01:00
Michael Niedermayer
c06bdc60c9 avformat/rtpdec: Remove stray debug av_log()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-26 11:02:58 +01:00
Ico Doornekamp
edf54887e2 rtpdec_jpeg: fix low contrast image on low quality setting
The problem is that the argument 'q' is of the type uint8_t.
According to the JPEG standard, if 1 <= q <= 50, the scale factor
'S' should be 5000 / Q. Because the create_default_qtables() reuses
the variable 'q' to store the result of this calculation, for small
values of q < 19, q wil subsequently overflow and give wrong results
in the calculated quantization tables.

Instead, use a new variable 'S' (same name as in RFC2435) with the
proper range to store the result of the division.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-26 00:15:24 +02:00
Anton Khirnov
704a397697 rtmpdh: add an stdio.h include
The test uses printf.
2016-03-25 14:53:37 +01:00
Diego Biurrun
439929859a testprogs: Clean up #includes 2016-03-24 19:17:23 +01:00
Ico Doornekamp
e3e6a2cff4 avformat/rtpdec_jpeg: fix low contrast image on low quality setting
Original mail and my own followup on ffmpeg-user earlier today:

I have a device sending out a MJPEG/RTP stream on a low quality setting.
Decoding and displaying the video with libavformat results in a washed
out, low contrast, greyish image. Playing the same stream with VLC results
in proper color representation.

Screenshots for comparison:

  http://zevv.nl/div/libav/shot-ffplay.jpg
  http://zevv.nl/div/libav/shot-vlc.jpg

A pcap capture of a few seconds of video and SDP file for playing the
stream are available at

  http://zevv.nl/div/libav/mjpeg.pcap
  http://zevv.nl/div/libav/mjpeg.sdp

I believe the problem might be in the calculation of the quantization
tables in the function create_default_qtables(), the attached patch
solves the issue for me.

The problem is that the argument 'q' is of the type uint8_t. According to the
JPEG standard, if 1 <= q <= 50, the scale factor 'S' should be 5000 / Q.
Because the create_default_qtables() reuses the variable 'q' to store the
result of this calculation, for small values of q < 19, q wil subsequently
overflow and give wrong results in the calculated quantization tables. The
patch below uses a new variable 'S' (same name as in RFC2435) with the proper
range to store the result of the division.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-24 15:40:10 +01:00
Michael Niedermayer
26811fd946 avformat/mpegtsenc: Fix used service
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-24 12:35:19 +01:00
Michael Niedermayer
50d017a281 avformat/mpegtsenc: Keep track of the program for each service
Simplifies code

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-24 12:27:23 +01:00
Martin Storsjö
3ee2ec5ec1 unix: Use rw_timeout for setting the connect timeout
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-24 10:34:29 +02:00
Martin Storsjö
136c3438bb tcp: Use rw_timeout for setting the connect/listen timeouts
Apply the default value for timeout in code instead of via the
avoption, to allow distinguishing the default value from the user
not setting anything at all.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-24 10:34:24 +02:00
Martin Storsjö
fab8156b2f avio: Copy URLContext generic options into child URLContexts
Since all URLContexts have the same AVOptions, such AVOptions
will be applied on the outermost context only and removed from the
dict, while they probably make sense on all contexts.

This makes sure that rw_timeout gets propagated to the innermost
URLContext (to make sure it gets passed to the tcp protocol, when
opening a http connection for instance).

Alternatively, such matching options would be kept in the dict
and only removed after the ffurl_connect call.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-24 10:34:19 +02:00
Martin Storsjö
933dec0e29 file: Add an option for following a file that is being written
Using this requires setting the rw_timeout option to make it
terminate, alternatively using the interrupt callback (if used via
the API).

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-24 10:33:59 +02:00
Andrey Utkin
ccea588f83 avio: Add an option 'rw_timeout'
If set non-zero, this limits duration of the retry_transfer_wrapper()
loop, thus affecting ffurl_read*(), ffurl_write(). As soon as
one single byte is successfully received/transmitted, the timer
restarts.

This has further changes by Michael Niedermayer and Martin Storsjö.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-24 10:33:50 +02:00
Martin Storsjö
d44f3e4059 avio: Apply avoptions on the URLContext itself as well
Currently the list of avoptions for URLContext is empty though,
but such options will be added.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-24 10:33:37 +02:00
wm4
8bc4accc37 lavf: use new decode API
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-23 19:31:36 +01:00
wm4
05f66706d1 lavc: introduce a new decoding/encoding API with decoupled input/output
Until now, the decoding API was restricted to outputting 0 or 1 frames
per input packet. It also enforces a somewhat rigid dataflow in general.

This new API seeks to relax these restrictions by decoupling input and
output. Instead of doing a single call on each decode step, which may
consume the packet and may produce output, the new API requires the user
to send input first, and then ask for output.

For now, there are no codecs supporting this API. The API can work with
codecs using the old API, and most code added here is to make them
interoperate. The reverse is not possible, although for audio it might.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-23 19:31:23 +01:00
Diego Biurrun
65a802401c build: Add component for the SRTP common code
This allows expressing the SRTP test code dependencies more clearly.
2016-03-23 09:35:41 +01:00
Vittorio Giovara
709c0f79d8 nuv: Use the correct context for av_image_check_size 2016-03-22 16:51:09 -04:00
Carl Eugen Hoyos
ef888de1c1 lavf/img2dec: Skip COM when auto-detecting jpeg.
It could theoretically contain invalid data that gets ignored by decoders.
2016-03-22 11:13:24 +01:00
Thomas Volkert
b4f32c42ab rtpdec: support for VC-2 HQ RTP payload format (draft v1) 2016-03-22 00:17:12 +01:00
Michael Niedermayer
6e65b9bb1f avformat/utils: scan a bit farther for a keyframe in mpeg/mpegts (7 sec instead of 5, we already scan 90sec in some cases by default)
Fixes Ticket5305

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-21 20:46:29 +01:00
Neil Birkbeck
e7e5c5e6c4 lavf/matroskaenc.c: add early support for colour elements
Adding early support for a subset of the proposed colour elements
according to the latest version of spec:
https://mailarchive.ietf.org/arch/search/?email_list=cellar&gbt=1&index=hIKLhMdgTMTEwUTeA4ct38h0tmE

Like matroskadec, I've left out elements for pix_fmt related things
 as there still seems to be some discussion around these.

The new elements are exposed under strict experimental mode.

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-21 00:10:18 +01:00
Marton Balint
65efcaeb84 avformat/mov: read start_pad from edit list start time if codec is aac
Related to ticket #2324, #2325.

Stream duration still need to be fixed...

Signed-off-by: Marton Balint <cus@passwd.hu>
2016-03-20 19:51:28 +01:00
Marton Balint
25f707694c avformat/utils: increase detected start_time with skip_samples
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-03-20 19:51:05 +01:00
Clément Bœsch
8284a4ba11 lavf/dv: use c->sys->frame_size in dv_frame_offset()
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.
2016-03-20 19:28:15 +01:00
Clément Bœsch
6c0cf11f38 lavf/dv: reindent after previous commit 2016-03-20 19:28:15 +01:00
Clément Bœsch
35ba5c424b lavf/dv: do not check for c->sys
dv_extract_video_info() is a static function called only from
avpriv_dv_produce_packet(), where c->sys is made sure to be set.
2016-03-20 14:25:16 +01:00
Luca Barbato
9765549f55 mpegts: Forward the errors on mpeg4 objects parsing
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-03-20 01:04:12 +01:00
Michael Niedermayer
0ffa9e6eba avformat/utils: Do not wait for more than 1 frame on attachments
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-19 22:58:34 +01:00
Michael Niedermayer
92dfeb5c31 avformat/wtvdec: Set AVFMTCTX_NOHEADER
Needed for noStreams.wtv unless something else forces continued parsing (like looking for more than 1
frame in attachments)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-19 22:58:34 +01:00
Michael Niedermayer
efa98cdc2f avformat/file: Add crypto to default whitelist
Fixes Ticket5287

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-19 18:56:59 +01:00
Clément Bœsch
7af3f27008 lavf/srtdec: do not be strict wrt timing digit lengths
Fixes a sample with 3-length digits for the seconds reported by wm4.
2016-03-18 16:42:07 +01:00
Mats Peterson
d8a1633ee4 lavf/avidec: Add blurb regarding the skipping of xxpc entries in the index
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-18 13:47:43 +01:00
Michael Niedermayer
7660c135a3 avformat/segment: Fix "occured" typo
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-17 16:50:15 +01:00
Michael Niedermayer
6b7ce0ea0d avformat/avio: Fix unknown protocol handling
Fixes regression since bb8cc89b29

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-17 02:09:39 +01:00
Hendrik Leppkes
c43d485811 matroskaenc: set the actual PCM bitdepth in the header
The actual bitdepth can be different to the storage format (ie. sample format).
Fixes the stored bitdepth for 24-bit formats like FLAC.
2016-03-16 12:52:35 +01:00
Hendrik Leppkes
eae2d89bf7 hls: handle crypto in the protocol checks
Fixes issue 5248
2016-03-16 10:31:41 +01:00
Hendrik Leppkes
0d4b8a2c16 hls: read protocol options through the AVIOContext
This reverts commit 9f9ed79d4c.

The hlsopts member was never set anywhere and always NULL, furthermore
the HLS demuxer needs to retrieve the proper options from the underlying
http protocol (cookies, user-agent, etc), so a dummy context won't help.

Instead, use the AVIOContext directly to access the options.
2016-03-16 10:31:36 +01:00
Stefano Sabatini
7725210e71 lavf/segment: change type of increment_tc to BOOL 2016-03-15 17:50:00 +01:00
Martin Vignali
69638517d1 lavf/segment: add increment_tc option
For example you can split a file, keeping a continuous timecode between
each segment:
ffmpeg -i src.mov -timecode 10:00:00:00 -vcodec copy -f segment \
-segment_time 2 -reset_timestamps 1 -increment_tc 1 target_%03d.mov

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2016-03-15 17:44:13 +01:00
Luca Barbato
8b4b1c1eea matroska: Support V_QUICKTIME as written in the specification
Check if the size is written the first 4 bytes and read the next 4
as fourcc candidate, fallback checking the initial for 4 bytes.

"The CodecPrivate contains all additional data that is stored in the
'stsd' (sample description) atom in the QuickTime file after the
mandatory video descriptor structure (starting with the size and FourCC
fields)"

CC: libav-stable@libav.org
2016-03-15 16:06:35 +01:00
Carl Eugen Hoyos
f1a3677c0f lavf/mxfdec: Fix Canopus essence element size. 2016-03-14 16:37:48 +01:00
Carl Eugen Hoyos
58fa694978 lavf/http: Add httpproxy to the default protocol whitelist. 2016-03-14 16:33:57 +01:00
Mats Peterson
bdc798cc8d lavf/avienc: Clear whole tag in avi_add_ientry()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-13 16:26:39 +01:00
Mats Peterson
77bc3e1944 lavf/avienc: Add xxpc entries to index
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-13 16:06:09 +01:00
Mats Peterson
9ee5b40964 avformat/avienc: factor out avi_add_ientry()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-13 16:06:09 +01:00
Mats Peterson
ed5d295a69 lavf/riffenc: Improve spec compliance; Fix WMP playback of AVI with xxpc chunks
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-13 13:12:13 +01:00
Adam Kent
77e355ffb1 avformat/hlsenc: Add support for HLS PLAYLIST types EVENT and VOD
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-12 22:22:08 +01:00
Sasi Inguva
895dd09671 lavf/utils: Fix DTS for short H264 streams.
Fill DTS if all packets have been read in avformat_find_stream_info, and still
has_decode_delay_been_guessed returns false.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-12 14:48:07 +01:00
Sasi Inguva
e939dde48d avformat/utils: factor update_dts_from_pts() out
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-12 14:47:43 +01:00
Michael Niedermayer
9d4ab1380a Use avpriv_tempfile()
Should fix xvid/cache on windows with --enable-shared

May be related to Ticket 4780

Tested-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-12 02:08:45 +01:00
Ronald S. Bultje
2e6636aa87 vp9: add superframe merging bitstream filter.
Fixes ticket 4313.
2016-03-11 11:19:14 -05:00
Ronald S. Bultje
6d8ab358a3 lavf: allow BSFs to drop packets.
If pkt->size == 0 && pkt->side_data_elems == 0 after bsf->filter()
returns, the packet is considered dropped.
2016-03-11 11:19:10 -05:00
Luca Barbato
7e01d48cfd mov: Check the entries value when parsing dref boxes
And properly reset the entries count when resetting the entries.

CC: libav-stable@libav.org

Bug-Id: 929
Bug-Id: CVE-2016-3062
2016-03-11 14:29:13 +01:00
Michael Niedermayer
b2ab3398f5 avformat/hlsenc: Fix passing options, regression since bc9a5965c8
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-11 00:45:28 +01:00
Carl Eugen Hoyos
bd2cc3c42c lavf/movenc: Fix help output.
Fixes ticket #5323.
2016-03-10 18:42:27 +01:00
Carl Eugen Hoyos
ac1974652b lavf/mxfdec: Support Canopus codecs.
Fixes ticket #5316.
2016-03-10 09:59:35 +01:00
Michael Niedermayer
689211d572 avformat/concatdec: set safe mode to enabled instead of auto
This is safer, as a selected demuxer could still mean that it was auto-detected
by a user application

Reviewed-previously-by: Nicolas George <george@nsup.org>
Reviewed-previously-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-10 02:54:59 +01:00
Mats Peterson
caeed0479f lavf/avidec: Skip xxpc entries in index; fixes trac #5311
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-10 00:30:39 +01:00
Carl Eugen Hoyos
fb9036b314 lavf/mpeg: Identify sub-stream ID 0xa1 as mlp.
Fixes ticket #4786.
Auto-detection seems difficult, patch mostly confirmed by
http://dvd-audio.sourceforge.net/spec/aob.shtml
2016-03-09 14:12:18 +01:00
Carl Eugen Hoyos
144ef773c7 Use correct msvc type specifiers for ptrdiff_t and size_t. 2016-03-09 14:00:22 +01:00
Moritz Barsnick
8a90e0fd21 lavf/mp3dec: avoid printing useless message in default log level
"Skipping 0 bytes of junk" is useless to the user, and essentially
indicates a NOP. At 0 bytes, this message is now pushed back to
the verbose log level.

Signed-off-by: Moritz Barsnick <barsnick@gmx.net>
2016-03-08 17:02:32 +01:00
Mats Peterson
e1aa88dc09 lavf/avienc: Palette changing code only concerns AV_PIX_FMT_PAL8
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-08 15:33:17 +01:00
Michael Niedermayer
de1de49324 avformat/utils: fix dts from pts code in compute_pkt_fields() during ascending delay
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-08 02:56:33 +01:00
Carl Eugen Hoyos
51bcc0bf38 lavf/riff: Add fourcc GTM4 from Telefactor digital audio for ASP. 2016-03-07 23:57:14 +01:00
Clément Bœsch
920f592b81 lavf/vplayerdec: support time durations with no ms specified
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
2016-03-07 12:52:11 +01:00
Zhao Zhili
6f5048f4a0 rtp: Fix play multiple multicast streams with the same port
We cannot play multiple multicast streams with the same port at the
same time. This is because both rtp and rtcp port are opened in
read-write mode, so they will not bind to the multicast address. Try
to make rtp port as read-only by default to solve this bug.

Signed-off-by: Zhao Zhili <wantlamy@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-07 02:29:41 +01:00
Raymond Hilseth
86db71b402 avformat/ftp: Support response code 125 for STOR and RETR commands
This fixes a problem where ffmpeg would hang if there is already an open
data connection, and the server sends a 125 response code in reply to a
STOR or RETR command.

Signed-off-by: Raymond Hilseth <rhi@vizrt.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-07 02:13:13 +01:00
Carl Eugen Hoyos
e356487fda lavf/img2dec: Use jpeg constants in jpeg_probe(). 2016-03-06 22:28:22 +01:00
Carl Eugen Hoyos
aebfbe5c13 lavf/riffdec: Remove \n from avpriv_report_missing_feature().
Found-by: Clément Bœsch
2016-03-06 21:39:57 +01:00
Boris Nagels
1109ed7973 avformat/rtpenc: Fix integer overflow in NTP_TO_RTP_FORMAT
RTCP synchronization packet was broken since commit in ffmpeg version > 2.8.3
(commit: e04b039b15) Since this commit (2e814d0329)
"rtpenc: Simplify code by introducing a macro for rescaling NTP timestamps", NTP_TO_RTP_FORMAT
uses av_rescale_rnd() function to add the data to the packet.

This causes an overflow in the av_rescale_rnd() function and it will return INT64_MIN.
Causing the NTP stamp in the RTCP packet to have an invalid value.

Github: Closes #182

Reverting commit '2e814d0329aded98c811d0502839618f08642685' solves the problem.
2016-03-06 21:19:18 +01:00
erankor
dd34e89f31 mov - support seek in encrypted mp4
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-06 17:29:32 +01:00
Michael Niedermayer
40aeff5f02 avformat/avienc: Remove unneeded seekable tests
Reviewed-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-06 12:21:02 +01:00
Mark Harris
238ddd6482 avformat/dump: Fix context/level for payload dump
Use the context and level specified to av_pkt_dump_log2(),
instead of panic level (0), for dumping packet payload.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-06 03:32:04 +01:00
Michael Niedermayer
e0f5f9267a avformat/avienc: assert that bits_per_coded_sample is within the supported range (out of array access otherwise)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-05 18:18:07 +01:00
Mats Peterson
2df0bbaca5 lavf/avienc: Add support for palette side data
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-05 18:05:47 +01:00
Mats Peterson
698fdc8547 lavf/riffenc: Handle palette for non-raw codecs
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-05 18:05:47 +01:00
Vittorio Giovara
d40cb726d2 mov: Trim dref absolute path
Samples produced by Omneon (Harmonic) store external references with
paths ending with 0s. Such movs cannot be loaded properly since every
0 is converted to '/', to keep the same parsing code for dref type 2
and type 18: this makes the external reference point to a non-existing
direactory, rather than to the actual referenced file.

Add a brief trimming loop that drops all ending 0s before trying to
parse the external reference path.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-03-05 08:23:18 -05:00
Anton Khirnov
84b5dcf275 asfenc: remove an unused variable 2016-03-05 08:45:01 +01:00
Anton Khirnov
ff3db937ef asfenc: fix some possible integer overflows
Store the file duration in the same timebase it arrives (i.e.
milliseconds) and only convert it to the file duration units (100ns)
when it's actually written, thus simplifying some calculations. Also,
store the duration as unsigned, since it cannot be negative.

CC: libav-stable@libav.org
Bug-ID: CVE-2016-2326
2016-03-05 08:43:04 +01:00
Neil Birkbeck
3c658e2655 lavf/dump.c: Print mastering display metadata
Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-04 23:11:51 +01:00
Neil Birkbeck
bbda13a771 lavf/matroskadec: Add early support for some of the new colour elements.
Adding early support for a subset of the proposed colour elements
according to the latest version of spec:
https://mailarchive.ietf.org/arch/search/?email_list=cellar&gbt=1&index=hIKLhMdgTMTEwUTeA4ct38h0tmE

I've left out elements for pix_fmt related things as there still
seems to be some discussion around these, and the max_cll/max_fall
are currently not propagated as there is not yet side data for them.

The new elements are exposed under strict experimental mode.

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-04 23:11:51 +01:00
Derek Buitenhuis
fb2f164598 avformat: Fix member name 10L
The wrong member was remove/moved after review of the blacklist API.

10L cola.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-04 16:33:10 +00:00
Derek Buitenhuis
93629735d7 avformat: Add a protocol blacklisting API
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-04 16:13:42 +00:00
Anton Khirnov
1ceb07eb31 avformat_find_stream_info: move duration guessing after updating codec parameters
This bitrate might not be known otherwise.

Bug-Id: 926
2016-03-04 08:26:34 +01:00
Mats Peterson
5111c1bef3 lavf/movenc: Add support for palette side data
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-04 04:02:27 +01:00
Mats Peterson
ba40b3520d lavf/utils: Normalize AVPacket.data to native endian in ff_get_packet_palette()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-04 04:02:19 +01:00
Paul B Mahol
dd2ea5cbfb avformat/yuv4mpegdec: fix seeking for partial files
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-03-03 09:28:15 +01:00
Marton Balint
28fbdece79 avformat: use ff_standardize_creation_time for formats writing all format string metadata
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-03-03 01:37:18 +01:00
Marton Balint
e7dd97b5d8 avformat/utils: add a function to standardize creation time
This can be used for formats which write all format metadata as string to
files, therefore non-standard creation times such as 'now' will be parsed.

The standardized creation time is UTC ISO 8601 with microsecond precision.

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-03-03 01:37:12 +01:00
Mats Peterson
2be0366a7f lavf/utils: Add ff_get_packet_palette()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-02 18:11:18 +01:00
Michael Niedermayer
554f6e930c avformat/cache: Fix memleak of tree entries
Found-by: jamrial

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-02 14:27:57 +01:00
Michael Niedermayer
a870aa89bf avformat/seek-test: Support passing options to demuxers and protocols
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-02 02:12:56 +01:00
Carl Eugen Hoyos
2355b7458e lavf/mov: Set display aspect ratio for avid dv.
Fixes ticket #5271.
2016-03-02 02:03:46 +01:00
Mark Harris
c3bb6166dd sdp: fix opus sprop-stereo fmtp syntax
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-01 20:52:33 +01:00
Mark Harris
4d13bcceb9 sdp: fix opus sprop-stereo fmtp syntax
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-01 08:56:36 +02:00
Andrew Shulgin
1c7e2cf9d3 avformat/rtpdec_h264: Ignore invalid sprop-parameter-sets missing PPS
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-01 02:19:23 +01:00
Derek Buitenhuis
9f9ed79d4c hls: Add and use a memebr of AVIOInternal rather than abuse opaque
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 20:10:11 +00:00
Derek Buitenhuis
b9aa4ccff5 Merge commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d'
* commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d':
  aviobuf: add a private data struct for avio_open()ed contexts

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 18:43:16 +00:00
Michael Niedermayer
4899c02c38 avformat/protocols: Fix ff_urlcontext_child_class_next()
This fixes -read_ahead_limit

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-29 19:34:52 +01:00
Michael Niedermayer
a6cd817a54 avformat/msf: Also check the codec tag in probing
Fixes probing failure

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-29 19:25:01 +01:00
Derek Buitenhuis
bb8cc89b29 Merge commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2'
* commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2':
  protocols: make the list of protocols static

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 18:08:15 +00:00
Derek Buitenhuis
95cdc0a5c6 avformat: Remove async from TESTPROGS
It is current disabled.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 17:14:56 +00:00
Derek Buitenhuis
53025fe187 Merge commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56'
* commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56':
  lavf: move urlcontext_child_class_next() to protocols.c

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 17:00:44 +00:00
Derek Buitenhuis
8fd5342463 Merge commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6'
* commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6':
  lavf: move avio_enum_protocols() to protocols.c

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 16:56:47 +00:00
Derek Buitenhuis
9c75148e6e Merge commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d'
This commit also disables the async fate test, because it
used internal APIs in a non-kosher way, which no longer
exists.

* commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d':
  lavf: reorganize URLProtocols

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 16:51:10 +00:00
Derek Buitenhuis
f1e7c42f08 Merge commit '225e84e74544062706c0159ec0737b0e1d40915f'
* commit '225e84e74544062706c0159ec0737b0e1d40915f':
  hls: disallow opening nested files in child demuxers

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 15:50:32 +00:00
Derek Buitenhuis
6a8d05cb4d Merge commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728'
* commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728':
  smoothstreamingenc: do not open the files as read+write

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 15:43:00 +00:00
Derek Buitenhuis
48847ee357 Merge commit 'd082078a88da3b3e926197d0d2aa9fa322123b76'
* commit 'd082078a88da3b3e926197d0d2aa9fa322123b76':
  dashenc: eliminate ffurl_* usage

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 15:41:03 +00:00
Derek Buitenhuis
04747c5a73 Merge commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a'
* commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a':
  lavf: use the io_open callbacks for files opened from open_input() as well

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 15:39:19 +00:00
Derek Buitenhuis
14a69ae60c Merge commit 'dc6527ed908e4d330738f139074455ffbe56a2de'
FATE tests have been updated to patch. They do not differ in
any meaningful way.

* commit 'dc6527ed908e4d330738f139074455ffbe56a2de':
  nutenc: do not use AVCodecContext.frame_size

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 15:29:43 +00:00
Carl Eugen Hoyos
8c5092912b lavf: Add pcx auto-detection. 2016-02-29 15:49:52 +01:00