Commit Graph

17693 Commits

Author SHA1 Message Date
Michael Niedermayer
f07376402c avformat/mxfenc: Add mxf muxer avclass
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-06 02:39:01 +02:00
Michael Niedermayer
42c41e96ff avformat/utils: Do not select audio streams with unknown sample rate in av_find_best_stream()
Together with the next commit this prevents non-PCM S302M from being selected unless either
it can be decoded or the user selects passthrough/copy

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-06 01:02:43 +02:00
Ganesh Ajjanagadde
a86928d2ab flvdec: fix lack of duration for some files
Fixes #4579

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 21:56:09 +02:00
Michael Niedermayer
108b738db1 avformat/flvdec: Show unknown tags at debug level
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 21:56:09 +02:00
Michael Niedermayer
790a3cdf76 avformat/flvdec: Add TYPE_ONCAPTIONINFO
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 21:56:09 +02:00
Michael Niedermayer
b2fecce3c1 avformat/flvdec: increase buffer size for parsing metadata string key
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 21:55:45 +02:00
Vignesh Venkatasubramanian
7be0f48a32 lavf/matroskaenc: Write Block Keyframe correctly
Per matroska Block Structure [1], for keyframes 0th bit of the flag
should not be set (unlike SimpleBlocks). For Blocks, keyframes is
inferred by the absence of ReferenceBlock element (as done by
matroskadec). This CL writes the flag correctly and inserts the
ReferenceBlock element for non-keyframes. The timestamp inserted is
that of the immediately preceding frame (which is true for VP8 and VP9
- the only 2 codecs using the matroska block element as of now). It
also considers all non-video frames (audio, subtitles, metadata) to
be keyframes.

[1] http://www.matroska.org/technical/specs/index.html#block_structure

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 02:48:04 +02:00
Juanjo
a213e57cef lavf/riffenc: Set correct block align for mp2.
Rounding by Michael.

Fixes ticket #4565.
2015-06-04 17:03:34 +02:00
Michael Niedermayer
3e34b7498f Revert "avformat/rtpenc: check av_packet_get_side_data() return, fix null ptr dereference"
This was simply wrong

Found-by: Martin Storsjö
This reverts commit 5d8e4f6da0.
2015-06-03 22:39:27 +02:00
Michael Niedermayer
9614df4b15 avformat/mov: Retry same packet on IO failure to avoid loosing a packet
Based on patch by: Zhang Rui <bbcallen@gmail.com>
Reviewed-by: Zhang Rui <bbcallen@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-03 17:37:09 +02:00
Michael Niedermayer
d7a762553c avformat/mxfenc: Accept MXF D-10 with 49.999840 Mbit/sec
This is the maximum rate possible based on the frame size limit of MXF D-10

Previous version reviewed by tim nicholson <nichot20@yahoo.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-03 12:12:34 +02:00
Michael Niedermayer
ce4e57dbb5 avformat/sbgdec: Check alloc_array_elem() return value
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-02 16:42:33 +02:00
Michael Niedermayer
e43f3c8858 avformat/mxfdec: return error instead of segfaulting if there are no streams
Fixes segfault from ticket 4350

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-02 13:45:47 +02:00
Michael Niedermayer
627dd7fe7e avformat/movenc: Fix potential signed overflows
Fixes CID1302838

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 17:54:58 +02:00
Michael Niedermayer
2e92a27a90 avformat/mxfenc: Correct klv_fill_key
See SMPTE 377-1-2009 6.3.3 KLV Fill Items

Reviewed-by: tim nicholson <nichot20@yahoo.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 15:31:04 +02:00
Michael Niedermayer
589d39c768 Merge commit '63ce9fd23cfa5ac0d9a862be0da138108dc1c505'
* commit '63ce9fd23cfa5ac0d9a862be0da138108dc1c505':
  rtmpdh: Use GMP functions directly, instead of nettle wrappers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 11:29:05 +02:00
Michael Niedermayer
8939667b70 Merge commit '84c5ff911f3f0557c8f97a964f74ceb01dd6d214'
* commit '84c5ff911f3f0557c8f97a964f74ceb01dd6d214':
  rtmpdh: Fix the indentation in a struct

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 11:28:01 +02:00
Martin Storsjö
63ce9fd23c rtmpdh: Use GMP functions directly, instead of nettle wrappers
mpz_import and mpz_export were added in GMP 4.1, in 2002.

This simplifies the DH code by clarifying that it only uses pure
bignum functions, no other parts of nettle/hogweed.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 10:38:54 +03:00
Martin Storsjö
84c5ff911f rtmpdh: Fix the indentation in a struct
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 10:38:54 +03:00
Michael Niedermayer
1e0c34fe71 avformat/utils: Simplify get_std_framerate() check
This also avoids using a floating point operation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 04:31:37 +02:00
Michael Niedermayer
9e1cdfb89b Merge commit '5c720657c23afd798ae0db7c7362eb859a89ab3d'
* commit '5c720657c23afd798ae0db7c7362eb859a89ab3d':
  mov: always check avio_read return value

Conflicts:
	libavformat/mov.c

See: b71528d896
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 00:59:44 +02:00
Michael Niedermayer
ebab902a1c Merge commit 'bff0349d9da527084e1433167466d8afc9e25c7f'
* commit 'bff0349d9da527084e1433167466d8afc9e25c7f':
  avio: Add avio_read wrapper to simplify error checking

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 00:43:50 +02:00
Michael Niedermayer
348319f543 Merge commit 'a8a90906fb0ad0f8d3c68a97f182528ee3b5198c'
* commit 'a8a90906fb0ad0f8d3c68a97f182528ee3b5198c':
  mov: Correctly allocate ctts_data

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 00:35:39 +02:00
Gilles Chanteperdrix
d61386a690 avformat/libquvi: fix error handling
avoid calling cleanup functions on uninitialized variables

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-31 19:04:52 +02:00
Andreas Cadhalpun
5c720657c2 mov: always check avio_read return value
If avio_read fails, the buffer can contain uninitialized data.

This fixes 'Conditional jump or move depends on uninitialised value(s)'
valgrind warnings, and addresses a few memleaks.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-31 13:05:13 +02:00
Vittorio Giovara
bff0349d9d avio: Add avio_read wrapper to simplify error checking
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-31 13:05:13 +02:00
Luca Barbato
a8a90906fb mov: Correctly allocate ctts_data
It can be reallocated.

CC: libav-stable@libav.org
2015-05-31 13:05:12 +02:00
Andreas Cadhalpun
cffb9ea81b mov: reject zero bytes_per_frame with non-zero samples_per_frame
In this case the mov demuxer can return a large number of empty packets.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-31 13:05:12 +02:00
Andreas Cadhalpun
f261a55d72 mov: Fix two memleaks
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>

CC: libav-stable@libav.org
2015-05-31 13:05:12 +02:00
Andreas Cadhalpun
8e9c39e81f mov: abort on EOF in ff_mov_read_chan
Otherwise the loop can take a lot of time if num_descr is very large.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-31 13:05:12 +02:00
wm4
881b80b329 network: prevent SIGPIPE on OSX
OSX does not know MSG_NOSIGNAL. BSD (which OSX is based on) has got
the socket option SO_NOSIGPIPE (even if modern BSDs also support
MSG_NOSIGNAL).

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-31 10:10:16 +03:00
wm4
c41e0aedf5 network: prevent SIGPIPE on OSX
OSX does not know MSG_NOSIGNAL, and provides its own non-standard
mechanism instead. I guess Apple hates standards.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 22:29:19 +02:00
Michael Niedermayer
a3ec1d6abd avformat/movenc: Add loction/xyz support to allow copying data between mov files
Fixes Ticket4337

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 16:44:05 +02:00
Michael Niedermayer
08b7d19def avformat/mov: Also export loci altitude
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 15:28:31 +02:00
Michael Niedermayer
1607f77494 avformat/mov: Append place name instead of overwriting for loci
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 15:23:19 +02:00
Rodger Combs
4dd22531fd lavf/tls_securetransport: add missing copyright notice
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 12:01:22 +02:00
Michael Niedermayer
aa9c6b6986 avformat/h264dec: Add ff_tlog() with trace information about h264 probing
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 03:57:20 +02:00
Michael Niedermayer
dae89802a6 avformat/h264dec: Fix detection of invalid h264 with 0x100 startcodes
Fies Ticket4325

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 03:53:32 +02:00
Michael Niedermayer
2e15f07cfd Merge commit 'b2f0f37d242f1194fe1f886557cf6cefdf98caf6'
* commit 'b2f0f37d242f1194fe1f886557cf6cefdf98caf6':
  rtmpdh: Generate the whole private exponent using av_get_random_seed() with nettle/gmp

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-30 00:59:57 +02:00
Martin Storsjö
b2f0f37d24 rtmpdh: Generate the whole private exponent using av_get_random_seed() with nettle/gmp
Don't use a PRNG for generating it; that defies the intended use
within the cryptograhic handshake.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 23:33:03 +03:00
Rodger Combs
f24d92bada lavf/tls: Support Secure Transport
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 21:52:27 +02:00
Andreas Cadhalpun
153639cb9c mov: fix DTS calculation for samples with negative stts duration
A negative sample duration is invalid according to the spec, but there
are samples that use it for the DTS calculation, e.g.:
http://files.1f0.de/samples/mp4-negative-stts-problem.mp4

These currently get out of A/V sync.

Also change the logging type to AV_LOG_WARNING, because decoding the
sample can continue.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-29 19:35:58 +02:00
Michael Niedermayer
061a592b9c avformat/movenc: Check that track_width_1616 fits within the available 32bit before storing it
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 12:54:37 +02:00
Michael Niedermayer
14bc570442 avformat/movenc: avoid floats in width/height/aspect ratio computations
This avoids the possibility for rounding/precision differences between platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 12:46:58 +02:00
Michael Niedermayer
3331213e2a avformat/concatdec: Enable auto_convert by default
Users have no means to find out from a failure how to make it work
or is it preferred to check and print a warning for h264 concat without auto_convert ?

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 12:19:47 +02:00
Michael Niedermayer
e1b0019568 avformat/mov: Avoid float usage in yuv_to_rgba()
This avoids the possibility for rounding/precision differences between platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 12:16:08 +02:00
Michael Niedermayer
4b8b3efb1e Merge commit 'e9e86d9ef637f5a600c76b352ffe5a82b71b25d1'
* commit 'e9e86d9ef637f5a600c76b352ffe5a82b71b25d1':
  rtmpdh: Create sufficiently long private keys for gcrypt/nettle

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:42:43 +02:00
Michael Niedermayer
42a6a38418 Merge commit '8016a1bd3b60e917e1b12748dd80c06c3462c286'
* commit '8016a1bd3b60e917e1b12748dd80c06c3462c286':
  rtmpdh: Remove an unnecessary check in the gcrypt/nettle dh_compute_key

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:42:22 +02:00
Michael Niedermayer
48e02e258c Merge commit '063f7467e4d14ab7fe01b2845dab60cc75df8b53'
* commit '063f7467e4d14ab7fe01b2845dab60cc75df8b53':
  rtmpdh: Add fate test for the DH handshake routine

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:38:37 +02:00
Michael Niedermayer
fbeb3fa999 Merge commit '0508faaa11bf7507ffdd655aee57c9dc5a8203f4'
* commit '0508faaa11bf7507ffdd655aee57c9dc5a8203f4':
  rtmpdh: Pass the actual buffer size of the output secret key

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:32:07 +02:00
Michael Niedermayer
beecbe13a2 Merge commit '9f1b3050d9e31e9283d818f3640f3460ac8cfb5b'
* commit '9f1b3050d9e31e9283d818f3640f3460ac8cfb5b':
  rtmpdh: Check the output buffer size in the openssl version of dh_compute_key

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:31:43 +02:00
Michael Niedermayer
4c0b30b07a Merge commit '127d813bcb5705202b7100cf1eccd1e26d72ba14'
* commit '127d813bcb5705202b7100cf1eccd1e26d72ba14':
  rtmpdh: Fix a local variable name in the nettle/gcrypt codepath

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:31:26 +02:00
Michael Niedermayer
392832fc3a Merge commit '78efc69e7c990226f4b913721ef1b308ca5bfa04'
* commit '78efc69e7c990226f4b913721ef1b308ca5bfa04':
  rtmpdh: Make sure ret is initialized in the nettle version of bn_hex2bn

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 11:21:35 +02:00
Martin Storsjö
e9e86d9ef6 rtmpdh: Create sufficiently long private keys for gcrypt/nettle
There was a misunderstanding betewen bits and bytes for the parameter
value for generating random big numbers.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:41 +03:00
Martin Storsjö
8016a1bd3b rtmpdh: Remove an unnecessary check in the gcrypt/nettle dh_compute_key
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:38 +03:00
Martin Storsjö
063f7467e4 rtmpdh: Add fate test for the DH handshake routine
This helps if these functions need to be implemented using another
crypto API.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:35 +03:00
Martin Storsjö
0508faaa11 rtmpdh: Pass the actual buffer size of the output secret key
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:32 +03:00
Martin Storsjö
9f1b3050d9 rtmpdh: Check the output buffer size in the openssl version of dh_compute_key
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:30 +03:00
Martin Storsjö
127d813bcb rtmpdh: Fix a local variable name in the nettle/gcrypt codepath
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:28 +03:00
Martin Storsjö
78efc69e7c rtmpdh: Make sure ret is initialized in the nettle version of bn_hex2bn
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:24 +03:00
Roman Savchenko
e85d91da48 avformat/avienc: Correct possible dereference of null
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-29 00:04:41 +02:00
Michael Niedermayer
f0b99112e3 Merge commit 'd4d90504a687d2c0ef77ccf11d831f24dcff9cf1'
* commit 'd4d90504a687d2c0ef77ccf11d831f24dcff9cf1':
  tls_gnutls: Add missing includes for the gcrypt thread safety callbacks

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-28 21:21:07 +02:00
Michael Niedermayer
b06e82e738 Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  lavc/x264: Support bgr0 as input pix_fmt.
  lavf: Use av_codec_get_tag2() in avformat_query_codec().

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-28 14:12:46 +02:00
Martin Storsjö
d4d90504a6 tls_gnutls: Add missing includes for the gcrypt thread safety callbacks
This fixes building with gcrypt-backed gnutls versions, broken
in 57cde2b180.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-28 15:05:52 +03:00
Michael Niedermayer
5a3d2541bd avformat/mxfenc: Support storing signal standard for D10 muxing
Reviewed-by: tim nicholson <nichot20@yahoo.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-28 12:36:08 +02:00
Carl Eugen Hoyos
57eecd9e4f lavf: Use av_codec_get_tag2() in avformat_query_codec().
av_codec_get_tag() can return 0 both in case of error and success.
2015-05-28 12:31:40 +02:00
Timothy Gu
7206b94fb8 network: Move variable declaration under an #if
Avoids an unused variable warning.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-28 03:06:05 +02:00
wm4
a9f1d584e5 lavf: move TLS-related ifdeffery to library specific files
There is no need to have this mess in network.c.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 22:24:00 +02:00
wm4
4a006b9eb7 lavf: split tls.c
Move the OpenSSL and GnuTLS implementations to their own files. Other
than the connection code (including options) and some boilerplate, no
code is actually shared.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 21:48:47 +02:00
Michael Niedermayer
07fc47909f avformat/mpsubdec: Use double instead of float for timestamp calculations
This provides higher precission

Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 17:29:18 +02:00
Michael Niedermayer
f722009ad9 avformat/mp3dec: Ensure the buffer is large enough to avoid seeks from the first frame search
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 17:06:24 +02:00
wm4
2b3e9bbfb5 avformat/mp3: skip junk at the beginning of mp3 files
Apparently it can happen that a mp3 file has junk data between id3 tag
and actual mp3 data. Skip this to avoid outputting nonsense timestamps.
(Two packets had the same timestamps, because the mp3 parser failed to
compute a frame duration.)

In this case, the junk consisted of 1044 bytes of zero, which
incidentally is the same size as normal mp3 frames in this stream. I
suspect the mp3 was edited with some tool which wiped the Xing/LAME
headers. Data near the end of the file suggests it was encoded with
"LAME3.97", but the normal Xing/LAME headers are missing. So this could
be "normal". mpg123 also attempts to skip at least 64KB of junk data by
scanning for headers.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 15:50:04 +02:00
Michael Niedermayer
2ae0396814 avformat/mpsubdec: change multipler to int, it only stores 1 and 100
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 15:24:34 +02:00
Michael Niedermayer
023040ed0d avformat/movenc: Allow muxing mp3 with samplerate < 16khz if the user sets strict to -1
Fixes Ticket4267

Approved-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-27 01:47:59 +02:00
wm4
57cde2b180 lavf: move TLS-related ifdeffery to library specific files
There is no need to have this mess in network.c.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-26 21:48:51 +03:00
wm4
d8ffb2055f lavf: split tls.c
Move the OpenSSL and GnuTLS implementations to their own files. Other
than the connection code (including options) and some boilerplate, no
code is actually shared.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-26 21:48:32 +03:00
Michael Niedermayer
cf86fd0069 avformat/matroskaenc: Avoid floats in default duration calculation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-26 20:42:05 +02:00
Michael Niedermayer
8aa9853093 avformat/ircamenc: Avoid floats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-26 19:54:41 +02:00
Michael Niedermayer
894d8cf418 avformat/movenc: Avoid floats & float rounding in tmcd nb_frames calculation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-26 14:51:00 +02:00
Michael Niedermayer
f902b0b2cb avformat/asfdec: Avoid float usage in duration calculation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-26 13:51:29 +02:00
Michael Niedermayer
db07fc2020 avformat/mpegts: Avoid float in bitrate calculation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-26 12:02:44 +02:00
Carl Eugen Hoyos
5193407cf6 lavf/dnxhd: Autodetect more files that can be decoded. 2015-05-26 00:29:36 +02:00
Andreas Cadhalpun
83a04f8cc1 mov: reject zero bytes_per_frame with non-zero samples_per_frame
In this case the mov demuxer can return a large number of empty packets.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-26 00:28:02 +02:00
Carl Eugen Hoyos
860ac0a5bb lavf/riff: Add 0x729A as TwoCC for G.729.
Reported by forum user muchuan.
2015-05-25 23:39:56 +02:00
Michael Niedermayer
cf401cd12b avformat/rmenc: Avoid floats in duration calculation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-25 13:34:43 +02:00
Michael Niedermayer
343654c288 avformat/mpegenc: Replace *0.7 by *7/10
This avoids another float computation, avoiding a potential source of
rounding issues

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-25 13:34:34 +02:00
Michael Niedermayer
73f7179924 avformat/mpegenc: Do not use floats for vcd_padding_bitrate
This reduces the risk for rounding differences.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-25 12:43:51 +02:00
Michael Niedermayer
8ce564ea28 avformat/mov: Mark avio context of decompressed atoms as seekable
Fixes Ticket4329

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-25 01:26:55 +02:00
Andreas Cadhalpun
b71528d896 mov: always check avio_read return value
If avio_read fails, the buffer can contain uninitialized data.

This fixes 'Conditional jump or move depends on uninitialised value(s)'
valgrind warnings.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-24 15:08:21 +02:00
Andreas Cadhalpun
8e77f8ab4a mov: fix two memleaks
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-24 15:08:21 +02:00
Andreas Cadhalpun
a5718863da mov: abort on EOF in ff_mov_read_chan
Otherwise the loop can take a lot of time if num_descr is very large.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-24 15:07:52 +02:00
Michael Niedermayer
0c3b4efc76 avformat/movenc: Remove float use from rgb_to_yuv()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-24 13:32:53 +02:00
Michael Niedermayer
28134d6a0e avformat/swfenc: Remove another unneeded float computation
fewer chances for rounding differences between platforms is better

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-24 13:32:53 +02:00
Michael Niedermayer
5d4ff4a31e avformat/swfenc: Remove unneeded floats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-24 03:59:26 +02:00
Michael Niedermayer
17264cd281 avformat/avienc: Avoid float usage
reduces risk for rounding differences between platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-23 23:42:51 +02:00
Michael Niedermayer
3bf57acb9c avformat/4xm: Change fps to AVRational
This fixes the video timebase as well

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-23 22:36:02 +02:00
Andreas Cadhalpun
ed4932a694 nutdec: fix various memleaks on failure
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-23 17:42:35 +02:00
Rodger Combs
40a3e1e9c5 avformat/wavdec: Increase dts packet threshold to fix more misdetections
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-23 16:04:19 +02:00
Michael Niedermayer
9f5769437a avformat/wavdec: Increase probe_packets limit
Fixes DTS detection of b2429e5ba9.dts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-23 12:07:23 +02:00
Andreas Cadhalpun
0b79a389ba nutdec: always check the get_str return value
If it fails, the buffers can be (partially) uninitialized.

This fixes 'Conditional jump or move depends on uninitialised value(s)'
valgrind warnings.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-23 10:36:44 +02:00
Michael Niedermayer
ebb0ca3d70 avformat/nutdec: Check X in 2nd branch of index reading
Prevents read of uninitialized variable

Based on patch by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-23 00:23:05 +02:00
Michael Niedermayer
3b176af001 avformat/mxfenc: Add color siting element
Previous version Reviewed-by: tim nicholson <nichot20@yahoo.com>
Previous version Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-22 15:30:31 +02:00
Michael Niedermayer
a45cf639e6 libavformat/mux: Add ff_choose_chroma_location()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-22 15:30:31 +02:00
James Almer
29216d7fd1 tls: fix compilation when both gnutls and openssl are enabled
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-22 12:21:38 +03:00
James Almer
e91fbfd9cf tls: fix compilation when both gnutls and openssl are enabled
Signed-off-by: James Almer <jamrial@gmail.com>
2015-05-22 00:33:33 -03:00
Michael Niedermayer
a0124b89e3 Merge commit '94599a6de3822b13c94096d764868128f388ba28'
* commit '94599a6de3822b13c94096d764868128f388ba28':
  tls: Remove all the local polling loops

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-22 02:49:38 +02:00
Michael Niedermayer
9221e362fd Merge commit 'd13b124eaf452b267480074b2e6946538ed03a6e'
* commit 'd13b124eaf452b267480074b2e6946538ed03a6e':
  tls: Remove the nonblocking code

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-22 02:38:11 +02:00
Michael Niedermayer
162644c833 Merge commit 'd15eec4d6bdfa3bd4c4b5b7dd2dbd699ba253d02'
* commit 'd15eec4d6bdfa3bd4c4b5b7dd2dbd699ba253d02':
  tls: Use custom IO to read from the URLContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-22 02:28:27 +02:00
Urvang Joshi
6b56fcbd10 WebP muxer: support a packet containing animated WebP.
This is the 1st patch in preparation for using WebPAnimEncoder API for encoding
and muxing WebP images.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-22 00:17:53 +02:00
Martin Storsjö
94599a6de3 tls: Remove all the local polling loops
These aren't necessary any longer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-22 00:06:11 +03:00
Martin Storsjö
d13b124eaf tls: Remove the nonblocking code
Since the underlying URLContext read functions are used,
they handle interruption, without having to handle it at
this level.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-22 00:05:01 +03:00
Martin Storsjö
d15eec4d6b tls: Use custom IO to read from the URLContext
This avoids hijacking the fd, by reading using the normal
URLContext functions instead. This allowing reading data that has
been buffered in the underlying URLContext.

This avoids using the libraries own send functions that can
cause SIGPIPE.

The fd is still used for polling the lowlevel socket, for
waiting for retries.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-22 00:04:32 +03:00
Zhang Rui
c886dd2f58 avformat/mov: check result of avio_seek
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-21 18:48:18 +02:00
Carl Eugen Hoyos
4fb3efd2c1 lavf/mov: Use AVCOL_SPC constants when checking color_space.
Suggested-by: Ronald Bultje
2015-05-21 01:04:57 +02:00
Carl Eugen Hoyos
c4f864193f lavf/mov: Write colour matrix "6" for color_space bt470bg.
This matches the demuxer's behaviour.
2015-05-21 01:04:45 +02:00
Carl Eugen Hoyos
8f6b919d99 lavf/mkv: Only skip prores header if the packet is large enough.
Fixes a possible endless loop.
2015-05-21 00:43:38 +02:00
Andreas Cadhalpun
bb23a15df5 nutdec: abort if EOF is reached in decode_info_header/read_sm_data
These loops can take a lot of time if count is very large.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-20 20:43:54 +02:00
Andreas Cadhalpun
fa7dec8cb0 nutdec: stop skipping bytes at EOF
This can unnecessarily waste a lot of time.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-20 19:07:26 +02:00
Andreas Cadhalpun
37e679881d nutdec: fix infinite resync loops
nut->last_syncpoint_pos doesn't necessarily change between resync
attempts, so find_any_startcode can return the same startcode again.

Thus remember where the last resync happened and don't try to resync
before that.

This can't be done locally in nut_read_packet, because this wouldn't
prevent infinite resync loops, where after the resync a packet is
returned and while reading a following packet the resync happens again.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-20 19:07:26 +02:00
Michael Niedermayer
b3496b4a33 avformat/nutdec: Fix recovery when immedeately after seeking a failure happens
Found-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-20 17:48:28 +02:00
Michael Niedermayer
6bbb2f8f4d avformat/nutdec: Return error on EOF from get_str()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-20 17:20:58 +02:00
Michael Niedermayer
e32d832a82 avformat/mxfenc: Set horizontal chroma subsample value from pixel format if available
Reviewed-by: tim nicholson <nichot20@yahoo.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-18 10:52:40 +02:00
Michael Niedermayer
58afb3128b avformat/mxfenc: Set the component depth from the pixel format if available
Reviewed-by: tim nicholson <nichot20@yahoo.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-18 10:49:28 +02:00
MrBoogs
4f2fcac290 avformat/hlsenc: do not append an endlist tag when the stream ends
Reviewed-by: Thomas Volkert <silvo@gmx.net>
2015-05-17 17:15:03 +02:00
MrBoogs
572a8292cb avformat/hlsenc: Add hls flag for starting a playlist with a discontinuity on startup
Reviewed-by: Thomas Volkert <silvo@gmx.net>
2015-05-17 17:14:00 +02:00
MrBoogs
8fd01b4a79 avformat/hlsenc: Add hls flag for rounding m3u8 durations to whole numbers, problems with floats on some devices
Reviewed-by: Thomas Volkert <silvo@gmx.net>
2015-05-17 17:11:44 +02:00
Carl Eugen Hoyos
ee8c18387d lavf/mpeg: Do not detect unknown audio in Hikvision streams as alaw. 2015-05-17 12:57:27 +02:00
Carl Eugen Hoyos
2acc065653 lavf/wav: Read files >4G if no smaller filesize was written.
Fixes second part of ticket #4543.
2015-05-17 02:08:58 +02:00
Carl Eugen Hoyos
2608f11863 lavf/wav: Print an error if files >4G are written.
Additionally, don't write an incorrect shorter size for such files.

Fixes part of ticket #4543.
2015-05-17 02:08:58 +02:00
Carl Eugen Hoyos
caa41d1e4c lavf/mov: Tell users about the use_absolute_path option.
Fixes ticket #4539.
2015-05-17 02:08:58 +02:00
Michael Niedermayer
488383afd1 avformat/avidec: add mp2 to the list of exceptions instead of generally treating dshow_block_align==1 special
Fixes Ticket4552

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-17 01:46:09 +02:00
Michael Niedermayer
da4ef13cb2 avformat/mux: use <0 instead of != 0 for error check of init_muxer()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-16 18:37:21 +02:00
Michael Niedermayer
50393bce31 avformat/mov: Fix parsing short loci
Fixes Ticket4557

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-16 14:07:15 +02:00
Michael Niedermayer
9e4f0cfc8f avformat/mov: Print reason of loci parsing failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-16 14:06:25 +02:00
Michael Niedermayer
e6ec65d2d3 avformat/rtsp: print a debug level note if time parsing fails
Fixes CID733718 again

This partly reverts commit eb7ddb5066.
2015-05-15 20:21:37 +02:00
Vignesh Venkatasubramanian
b5508f74b9 lavf/webmdashenc: fix unchecked strftime
Fix unchecked strftime return value. This patch fixes Coverity
CID 1295086.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-15 00:56:43 +02:00
Michael Niedermayer
88f29406b7 avformat/nutdec: Remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-14 02:23:08 +02:00
Timothy Gu
eaeb632198 nutdec: Remove unused label
Added in 361702660d. Modified version that
doesn't use this label merged in 55231323b0,
thus obsoleting this label.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-14 02:08:12 +02:00
Michael Niedermayer
e5397513b9 Merge commit '8fc11abe1fea4f211cc7dbd58a173d1221627d90'
* commit '8fc11abe1fea4f211cc7dbd58a173d1221627d90':
  mkv: Print unsupported mov tags when found

Conflicts:
	libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-13 22:04:02 +02:00
Andreas Cadhalpun
cb7c4f73e5 cafdec: free extradata before allocating it
This fixes a memleak if read_kuki_chunk is executed more than once.

Reviewed-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-13 20:11:37 +02:00
Andreas Cadhalpun
a3ede6b742 cafdec: check avio_read return value
If avio_read fails, the buffer can contain uninitialized values.

Reviewed-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-05-13 20:09:25 +02:00
Michael Niedermayer
b62b3292d8 avformat/hevc: Check num_negative_pics and num_positive_pics
Fixes CID1238994

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 19:28:15 +02:00
Michael Niedermayer
2cddc0b19a avformat/hevc: Check cpb_cnt_minus1
Fixes CID1239014

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 19:09:06 +02:00
Michael Niedermayer
7a27aa15ec avformat/hls: Handle read_buffer allocation failure
Fixes CID1297576

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 19:03:18 +02:00
Michael Niedermayer
70e022cfc5 avformat/idcin: Remove redundant chunk size check
Fixes CID1138438

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 18:40:16 +02:00
Michael Niedermayer
171af59d58 avformat/matroskadec: Cleanup error handling for bz2 & zlib
Fixes CID703652

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 18:34:26 +02:00
Michael Niedermayer
56abf35151 avformat/nutdec: Fix use of uinitialized value
Fixes CID1041175

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 18:20:23 +02:00
Michael Niedermayer
a23379a0a6 avformat/rtpdec_xiph: Move pkt_len onto one side of the check
This is more correct
Fixes CID1271793

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 18:07:32 +02:00
Michael Niedermayer
aa5169935e avformat/rtpdec_xiph: Check upper bound on len in xiph_handle_packet()
Larger packets are not supported and would cause problems later

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 18:03:55 +02:00
Michael Niedermayer
81198a6837 avformat/rtpenc_jpeg: Check remaining buffer size for SOS
Fixes CID1238818

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-12 17:55:40 +02:00