ffmpeg.git
4 years agolavf: Use av_codec_get_tag2() in avformat_query_codec().
Carl Eugen Hoyos [Thu, 28 May 2015 10:31:40 +0000 (12:31 +0200)]
lavf: Use av_codec_get_tag2() in avformat_query_codec().

av_codec_get_tag() can return 0 both in case of error and success.

4 years agoavcodec/mips: Restructure as per avutil/mips/generic_macros_msa.h
Shivraj Patil [Thu, 28 May 2015 09:13:25 +0000 (14:43 +0530)]
avcodec/mips: Restructure as per avutil/mips/generic_macros_msa.h

This patch modifies H264 loopfilter, weighted & bi-weighted prediction MIPS-SIMD optimized code according to improved version of generic macros.
Also there are minor code alignment changes.

Overall, this patch is just upgrading the code with styling changes and will bring it in sync with MIPS-SIMD optimized latest codebase at our end.

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavutil/mips: Restructure of generic macros
Shivraj Patil [Thu, 28 May 2015 09:06:53 +0000 (14:36 +0530)]
avutil/mips: Restructure of generic macros

This patch includes restructuring of existing macros and addition of more generic macros.

This change was necessary to avoid repeated review comments in remaining patches which we were about to submit.
Also this patch reduces number of code lines due to maximum use of generic macros, allows better code alignment & readability etc.

These modifications in commonly used .libavutil/mips/generic_macros_msa.h. impacts the already accepted code, hence re-submitting it in 2/4,3/4 & 4/4.
Overall, this patch set is just upgrading the code with styling changes and will bring it in sync with MIPS-SIMD optimized latest codebase at our end.

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agonetwork: Move variable declaration under an #if
Timothy Gu [Wed, 27 May 2015 23:39:55 +0000 (16:39 -0700)]
network: Move variable declaration under an #if

Avoids an unused variable warning.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/ffv1dec: Fix skip_alpha
Michael Niedermayer [Wed, 27 May 2015 23:01:16 +0000 (01:01 +0200)]
avcodec/ffv1dec: Fix skip_alpha

Fixes Ticket4322

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agox86inc: Clear __SECT__
Timothy Gu [Mon, 25 May 2015 23:02:33 +0000 (16:02 -0700)]
x86inc: Clear __SECT__

This commit silences warning(s) like:

    libavcodec/x86/fft.asm:93: warning: section flags ignored on section
    redeclaration

The cause of this warning is that because `struc` and `endstruc` attempts to
revert to the previous section state [1]. The section state is stored in the
macro __SECT__, defined by x86inc.asm to be `.note.GNU-stack ...`, through the
`SECTION` directive [2].  Thus, the `.note.GNU-stack` section is defined twice
(once in x86inc.asm, once during `endstruc`), causing the warning.

That is the first part of the commit: using the primitive `[section]` format
for .note.GNU-stack etc., which does not update `__SECT__` [2].

That fixes only half of the problem. Even without any `SECTION` directives,
`__SECT__` is predefined as `.text`, which conflicting with the later
`SECTION_TEXT` (which expands to `.text align=16`).

[1]: http://www.nasm.us/doc/nasmdoc6.html#section-6.4
[2]: http://www.nasm.us/doc/nasmdoc6.html#section-6.3

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoRevert "Move struc FFTContext below SECTION_RODATA"
Timothy Gu [Mon, 25 May 2015 23:02:32 +0000 (16:02 -0700)]
Revert "Move struc FFTContext below SECTION_RODATA"

This reverts commit 599888a48040f4086c9086aae958b7231b37afcc.

The commit does not silence the warning on ELF-based systems, and will be
fixed in the subsequent commit.

Conflicts:
libavcodec/x86/fft_mmx.asm

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '57cde2b180fcec0eaf60aad65f436ab6420546f5'
Michael Niedermayer [Wed, 27 May 2015 20:37:05 +0000 (22:37 +0200)]
Merge commit '57cde2b180fcec0eaf60aad65f436ab6420546f5'

* commit '57cde2b180fcec0eaf60aad65f436ab6420546f5':
  lavf: move TLS-related ifdeffery to library specific files

Conflicts:
libavformat/network.c
libavformat/tls.h
libavformat/tls_openssl.c

See: a9f1d584e53fb39d983201585cb136986a85cac8
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolavf: move TLS-related ifdeffery to library specific files
wm4 [Wed, 27 May 2015 10:57:51 +0000 (12:57 +0200)]
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>
4 years agoMerge commit 'd8ffb2055f0e0fcb5d025bab72eb19c2a886c125'
Michael Niedermayer [Wed, 27 May 2015 20:17:04 +0000 (22:17 +0200)]
Merge commit 'd8ffb2055f0e0fcb5d025bab72eb19c2a886c125'

* commit 'd8ffb2055f0e0fcb5d025bab72eb19c2a886c125':
  lavf: split tls.c

Conflicts:
libavformat/tls.c
libavformat/tls_gnutls.c
libavformat/tls_openssl.c

See: 4a006b9eb7e7d736fd00e6045b5612978ef6404b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolavf: split tls.c
wm4 [Wed, 27 May 2015 10:57:50 +0000 (12:57 +0200)]
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>
4 years agoavformat/mpsubdec: Use double instead of float for timestamp calculations
Michael Niedermayer [Wed, 27 May 2015 13:25:28 +0000 (15:25 +0200)]
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>
4 years agoavformat/mp3dec: Ensure the buffer is large enough to avoid seeks from the first...
Michael Niedermayer [Wed, 27 May 2015 14:18:31 +0000 (16:18 +0200)]
avformat/mp3dec: Ensure the buffer is large enough to avoid seeks from the first frame search

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/mp3: skip junk at the beginning of mp3 files
wm4 [Wed, 27 May 2015 12:48:10 +0000 (14:48 +0200)]
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>
4 years agoavformat/mpsubdec: change multipler to int, it only stores 1 and 100
Michael Niedermayer [Wed, 27 May 2015 13:24:34 +0000 (15:24 +0200)]
avformat/mpsubdec: change multipler to int, it only stores 1 and 100

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec: loongson3 optimized h264dsp weighted mc with mmi
周晓勇 [Wed, 27 May 2015 03:11:29 +0000 (11:11 +0800)]
avcodec: loongson3 optimized h264dsp weighted mc with mmi

Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agodoc/build_system: Document GEN, text taken from the webpage
Michael Niedermayer [Wed, 27 May 2015 10:23:01 +0000 (12:23 +0200)]
doc/build_system: Document GEN, text taken from the webpage

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agofate: Update exif tests after 09ec31ce3aab41407965e7a95b7d145702434c26
Michael Niedermayer [Wed, 27 May 2015 09:56:19 +0000 (11:56 +0200)]
fate: Update exif tests after 09ec31ce3aab41407965e7a95b7d145702434c26

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoffprobe: print stream_index with frame data
Dave Rice [Tue, 26 May 2015 00:46:12 +0000 (20:46 -0400)]
ffprobe: print stream_index with frame data

This makes it easier to relate frame data to its associated stream.

4 years agox86/cpu: add AV_CPU_FLAG_AVXSLOW flag
James Almer [Wed, 27 May 2015 06:30:20 +0000 (03:30 -0300)]
x86/cpu: add AV_CPU_FLAG_AVXSLOW flag

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoavfilter/x86/vf_hqdn3d: Fix register types
Michael Niedermayer [Wed, 27 May 2015 02:31:30 +0000 (04:31 +0200)]
avfilter/x86/vf_hqdn3d: Fix register types

Fixes Ticket4301

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavfilter/vf_hqdn3d: Initialize the whole LUT
Michael Niedermayer [Wed, 27 May 2015 00:46:45 +0000 (02:46 +0200)]
avfilter/vf_hqdn3d: Initialize the whole LUT

With bps > 8 more than 255..255 are used
The initialized table content is left unchanged,
But it could also be adjusted for the slight difference of
the maximum

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/nvenc: Fix typo: 1204 -> 1024
Philip Langdale [Wed, 27 May 2015 01:35:15 +0000 (18:35 -0700)]
avcodec/nvenc: Fix typo: 1204 -> 1024

Fixes Ticket4508

Signed-off-by: Philip Langdale <philipl@overt.org>
4 years agoavformat/movenc: Allow muxing mp3 with samplerate < 16khz if the user sets strict...
Michael Niedermayer [Tue, 26 May 2015 23:42:23 +0000 (01:42 +0200)]
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>
4 years agoffmpeg: do not print misleading recommanditions on 1pass vpx encoding
Michael Niedermayer [Tue, 26 May 2015 21:42:44 +0000 (23:42 +0200)]
ffmpeg: do not print misleading recommanditions on 1pass vpx encoding

Fixes part of Ticket4295

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'cf1f3d837e1266034a487de5b575bd76426c6b10'
Michael Niedermayer [Tue, 26 May 2015 18:49:13 +0000 (20:49 +0200)]
Merge commit 'cf1f3d837e1266034a487de5b575bd76426c6b10'

* commit 'cf1f3d837e1266034a487de5b575bd76426c6b10':
  doc: Fix spelling of 'Transmission'

See: 9898bd9a82ad16f7ef2dcc26542827ff92255821
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolavf: move TLS-related ifdeffery to library specific files
wm4 [Tue, 26 May 2015 17:25:42 +0000 (19:25 +0200)]
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>
4 years agolavf: split tls.c
wm4 [Tue, 26 May 2015 17:25:41 +0000 (19:25 +0200)]
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>
4 years agoavformat/matroskaenc: Avoid floats in default duration calculation
Michael Niedermayer [Tue, 26 May 2015 18:09:40 +0000 (20:09 +0200)]
avformat/matroskaenc: Avoid floats in default duration calculation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/ircamenc: Avoid floats
Michael Niedermayer [Tue, 26 May 2015 17:54:41 +0000 (19:54 +0200)]
avformat/ircamenc: Avoid floats

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavutil: Add av_q2intfloat()
Michael Niedermayer [Sun, 24 May 2015 12:19:57 +0000 (14:19 +0200)]
avutil: Add av_q2intfloat()

This function allows writing AVRationals as IEEE floats without the need
of platform dependant float operations

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/movenc: Avoid floats & float rounding in tmcd nb_frames calculation
Michael Niedermayer [Tue, 26 May 2015 12:51:00 +0000 (14:51 +0200)]
avformat/movenc: Avoid floats & float rounding in tmcd nb_frames calculation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/asfdec: Avoid float usage in duration calculation
Michael Niedermayer [Tue, 26 May 2015 11:02:25 +0000 (13:02 +0200)]
avformat/asfdec: Avoid float usage in duration calculation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agodoc: Fix spelling of 'Transmission'
Sebastian Ramacher [Tue, 26 May 2015 02:37:13 +0000 (04:37 +0200)]
doc: Fix spelling of 'Transmission'

Signed-off-by: Sebastian Ramacher <sramacher@debian.org>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoavformat/mpegts: Avoid float in bitrate calculation
Michael Niedermayer [Tue, 26 May 2015 10:02:44 +0000 (12:02 +0200)]
avformat/mpegts: Avoid float in bitrate calculation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/h264: Fix HWACCEL_MAX for D3D11
Michael Niedermayer [Tue, 26 May 2015 03:08:32 +0000 (05:08 +0200)]
avcodec/h264: Fix HWACCEL_MAX for D3D11

Found-by: philipl
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/hevc: Fix HWACCEL_MAX for D3D11
Michael Niedermayer [Tue, 26 May 2015 03:08:32 +0000 (05:08 +0200)]
avcodec/hevc: Fix HWACCEL_MAX for D3D11

Found-by: philipl
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/dxva2_h264: Fix "may be used uninitialized" warnings
Michael Niedermayer [Tue, 26 May 2015 02:52:39 +0000 (04:52 +0200)]
avcodec/dxva2_h264: Fix "may be used uninitialized" warnings

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/vdpau: Re-factor pre-hwaccel helper functions into separate header
Philip Langdale [Mon, 25 May 2015 16:42:14 +0000 (09:42 -0700)]
avcodec/vdpau: Re-factor pre-hwaccel helper functions into separate header

h264.h and hevc.h are mutually exclusive due to defining some of the same
names. As such, we need to avoid forcing h264.h to be included if we want
hevc decode acceleration to be possible.

However, some of the pre-hwaccel helper functions need h264.h. To avoid
messy collisions, let's move the declaration of all those helpers to
a separate header which we will exclude for the hevc support (which will
be hwaccel-only).

Signed-off-by: Philip Langdale <philipl@overt.org>
4 years agoavcodec/dxva2: Fix "may be used uninitialized" warnings
Michael Niedermayer [Tue, 26 May 2015 02:40:04 +0000 (04:40 +0200)]
avcodec/dxva2: Fix "may be used uninitialized" warnings

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoconfigure: Check if ID3D11VideoDecoder exists, not just the header to enable d3d11va
Michael Niedermayer [Mon, 25 May 2015 22:14:58 +0000 (00:14 +0200)]
configure: Check if ID3D11VideoDecoder exists, not just the header to enable d3d11va

Fixes build with "mingw-w64-x86-64-dev 3.2.0-2"

Tested-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavfilter/x86/vf_fspp: Fix invalid combination of opcode and operands
Michael Niedermayer [Mon, 25 May 2015 23:37:39 +0000 (01:37 +0200)]
avfilter/x86/vf_fspp: Fix invalid combination of opcode and operands

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolavf/dnxhd: Autodetect more files that can be decoded.
Carl Eugen Hoyos [Mon, 25 May 2015 22:28:12 +0000 (00:28 +0200)]
lavf/dnxhd: Autodetect more files that can be decoded.

4 years agomov: reject zero bytes_per_frame with non-zero samples_per_frame
Andreas Cadhalpun [Mon, 25 May 2015 15:17:39 +0000 (17:17 +0200)]
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>
4 years agoconfigure: d3d11va is auto-detected like the others
Michael Niedermayer [Mon, 25 May 2015 21:31:51 +0000 (23:31 +0200)]
configure: d3d11va is auto-detected like the others

Fix the help text accordingly

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolavf/riff: Add 0x729A as TwoCC for G.729.
Carl Eugen Hoyos [Mon, 25 May 2015 21:39:56 +0000 (23:39 +0200)]
lavf/riff: Add 0x729A as TwoCC for G.729.

Reported by forum user muchuan.

4 years agoavcodec/dxva2: Fix build without D3D11
Michael Niedermayer [Mon, 25 May 2015 20:24:40 +0000 (22:24 +0200)]
avcodec/dxva2: Fix build without D3D11

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'd8039ef8d221ea273aa4f1e62e5df21bf618c772'
Michael Niedermayer [Mon, 25 May 2015 20:02:00 +0000 (22:02 +0200)]
Merge commit 'd8039ef8d221ea273aa4f1e62e5df21bf618c772'

* commit 'd8039ef8d221ea273aa4f1e62e5df21bf618c772':
  D3D11va: add a Direct3D11 video decoder similar to DXVA2

Conflicts:
Changelog
configure
libavcodec/Makefile
libavcodec/allcodecs.c
libavcodec/dxva2_vc1.c
libavcodec/version.h
libavutil/pixdesc.c
libavutil/pixfmt.h
libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoImprove upon dynamic arrays- movtext subtitles
Niklesh [Mon, 25 May 2015 17:16:04 +0000 (22:46 +0530)]
Improve upon dynamic arrays- movtext subtitles

Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
4 years agolibshine: fix support for shine 3.0
Andreas Cadhalpun [Sun, 24 May 2015 13:44:31 +0000 (15:44 +0200)]
libshine: fix support for shine 3.0

shine_encode_buffer expects written to be an int pointer, while the
previous shine_encode_frame expected it to be a long pointer.

Thus encoding with libshine currently always fails with
"internal buffer too small", because a negative return value of
shine_encode_buffer is interpreted as a very large long value.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agoavcodec/mjpegenc_common: Use ff_mpv_reallocate_putbitbuffer()
Michael Niedermayer [Mon, 25 May 2015 12:35:35 +0000 (14:35 +0200)]
avcodec/mjpegenc_common: Use ff_mpv_reallocate_putbitbuffer()

Fixes assertion failure
Fixes Ticket4396

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/mpegvideo: Factor ff_mpv_reallocate_putbitbuffer() out
Michael Niedermayer [Mon, 25 May 2015 02:12:13 +0000 (04:12 +0200)]
avcodec/mpegvideo: Factor ff_mpv_reallocate_putbitbuffer() out

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/rmenc: Avoid floats in duration calculation
Michael Niedermayer [Mon, 25 May 2015 11:00:14 +0000 (13:00 +0200)]
avformat/rmenc: Avoid floats in duration calculation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/mpegenc: Replace *0.7 by *7/10
Michael Niedermayer [Mon, 25 May 2015 10:57:22 +0000 (12:57 +0200)]
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>
4 years agoavformat/mpegenc: Do not use floats for vcd_padding_bitrate
Michael Niedermayer [Mon, 25 May 2015 10:43:51 +0000 (12:43 +0200)]
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>
4 years agoffmpeg_opt: Set the video VBV parameters only for the video stream from -target
Michael Niedermayer [Mon, 25 May 2015 10:13:53 +0000 (12:13 +0200)]
ffmpeg_opt: Set the video VBV parameters only for the video stream from -target

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoD3D11va: add a Direct3D11 video decoder similar to DXVA2
Steve Lhomme [Mon, 11 May 2015 08:52:47 +0000 (10:52 +0200)]
D3D11va: add a Direct3D11 video decoder similar to DXVA2

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoavcodec/put_bits: Assert that size in set_put_bits_buffer_size() does not cause integ...
Michael Niedermayer [Mon, 25 May 2015 03:31:26 +0000 (05:31 +0200)]
avcodec/put_bits: Assert that size in set_put_bits_buffer_size() does not cause integer overflows

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/bitstream: Assert that there is enough space left in avpriv_copy_bits()
Michael Niedermayer [Mon, 25 May 2015 01:48:45 +0000 (03:48 +0200)]
avcodec/bitstream: Assert that there is enough space left in avpriv_copy_bits()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/put_bits: Assert that there is enough space left in skip_put_bytes()
Michael Niedermayer [Mon, 25 May 2015 01:45:38 +0000 (03:45 +0200)]
avcodec/put_bits: Assert that there is enough space left in skip_put_bytes()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/mpegvideo_enc: Update the buffer size as more slices are merged
Michael Niedermayer [Mon, 25 May 2015 02:54:41 +0000 (04:54 +0200)]
avcodec/mpegvideo_enc: Update the buffer size as more slices are merged

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/put_bits: Update size_in_bits in set_put_bits_buffer_size()
Michael Niedermayer [Mon, 25 May 2015 02:53:09 +0000 (04:53 +0200)]
avcodec/put_bits: Update size_in_bits in set_put_bits_buffer_size()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/mov: Mark avio context of decompressed atoms as seekable
Michael Niedermayer [Sun, 24 May 2015 23:26:55 +0000 (01:26 +0200)]
avformat/mov: Mark avio context of decompressed atoms as seekable

Fixes Ticket4329

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/libutvideoenc: Fix memleak
Michael Niedermayer [Fri, 15 May 2015 21:53:24 +0000 (23:53 +0200)]
avcodec/libutvideoenc: Fix memleak

Fixes: CID1257657

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolibdcadec: search for frames that start late in a packet
James Almer [Sun, 24 May 2015 04:24:32 +0000 (01:24 -0300)]
libdcadec: search for frames that start late in a packet

Based on commit 4ae15605f6298d8369a1f1374596b52a3839c703

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoavcodec/ituh263enc: Pass PutBitContext into h263p_encode_umotion() instead of MpegEnc...
Michael Niedermayer [Sun, 24 May 2015 15:07:51 +0000 (17:07 +0200)]
avcodec/ituh263enc: Pass PutBitContext into h263p_encode_umotion() instead of MpegEncContext

This avoids the need to dereference MpegEncContext->pb if it is
already available outside h263p_encode_umotion()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec: Pass PutBitContext into ff_h263_encode_motion() instead of MpegEncContext
Michael Niedermayer [Sun, 24 May 2015 15:07:51 +0000 (17:07 +0200)]
avcodec: Pass PutBitContext into ff_h263_encode_motion() instead of MpegEncContext

This avoids the need to dereference MpegEncContext->pb if it is
already available outside ff_h263_encode_motion()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/h263: Remove unused argument of h263_get_motion_length()
Michael Niedermayer [Sun, 24 May 2015 14:58:55 +0000 (16:58 +0200)]
avcodec/h263: Remove unused argument of h263_get_motion_length()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/mpeg4video: Reorder operations to reduce accesses to err_recognition
Michael Niedermayer [Sun, 24 May 2015 13:03:45 +0000 (15:03 +0200)]
avcodec/mpeg4video: Reorder operations to reduce accesses to err_recognition

About 9 cpu cycle faster mpeg4_decode_mb()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agomov: always check avio_read return value
Andreas Cadhalpun [Sat, 23 May 2015 21:45:44 +0000 (23:45 +0200)]
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>
4 years agomov: fix two memleaks
Andreas Cadhalpun [Sat, 23 May 2015 21:35:42 +0000 (23:35 +0200)]
mov: fix two memleaks

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agomov: abort on EOF in ff_mov_read_chan
Andreas Cadhalpun [Sat, 23 May 2015 21:32:12 +0000 (23:32 +0200)]
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>
4 years agoavformat/movenc: Remove float use from rgb_to_yuv()
Michael Niedermayer [Sun, 24 May 2015 10:46:06 +0000 (12:46 +0200)]
avformat/movenc: Remove float use from rgb_to_yuv()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/swfenc: Remove another unneeded float computation
Michael Niedermayer [Sun, 24 May 2015 10:38:54 +0000 (12:38 +0200)]
avformat/swfenc: Remove another unneeded float computation

fewer chances for rounding differences between platforms is better

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/swfenc: Remove unneeded floats
Michael Niedermayer [Sun, 24 May 2015 01:59:26 +0000 (03:59 +0200)]
avformat/swfenc: Remove unneeded floats

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/avienc: Avoid float usage
Michael Niedermayer [Sat, 23 May 2015 20:46:51 +0000 (22:46 +0200)]
avformat/avienc: Avoid float usage

reduces risk for rounding differences between platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/4xm: Change fps to AVRational
Michael Niedermayer [Sat, 23 May 2015 20:08:13 +0000 (22:08 +0200)]
avformat/4xm: Change fps to AVRational

This fixes the video timebase as well

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/y41pdec: Avoid using float for size test
Michael Niedermayer [Sat, 23 May 2015 19:27:10 +0000 (21:27 +0200)]
avcodec/y41pdec: Avoid using float for size test

Floats are not bitexact

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolibwebp: simplify AVCodec.close functions
James Almer [Sat, 23 May 2015 17:24:34 +0000 (14:24 -0300)]
libwebp: simplify AVCodec.close functions

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoconfigure: simplify libwebp checks
James Almer [Sat, 23 May 2015 05:14:26 +0000 (02:14 -0300)]
configure: simplify libwebp checks

The libwebpmux pkg-config file already has an explicit dependecy on libwebp >= 0.2.0.
Also remove the warning and silently disable the anim encoder when libwebpmux is not new enough.
This is more in line with other library components, like libvpx-vp9

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agonutdec: fix various memleaks on failure
Andreas Cadhalpun [Fri, 22 May 2015 21:02:07 +0000 (23:02 +0200)]
nutdec: fix various memleaks on failure

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agoavcodec/dcadec: Search and decode frame in case it starts later in a packet
Michael Niedermayer [Sat, 23 May 2015 14:23:52 +0000 (16:23 +0200)]
avcodec/dcadec: Search and decode frame in case it starts later in a packet

This fixes decoding the first frame of some dts files

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/wavdec: Increase dts packet threshold to fix more misdetections
Rodger Combs [Sat, 23 May 2015 12:07:14 +0000 (14:07 +0200)]
avformat/wavdec: Increase dts packet threshold to fix more misdetections

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/wavdec: Increase probe_packets limit
Michael Niedermayer [Sat, 23 May 2015 10:03:38 +0000 (12:03 +0200)]
avformat/wavdec: Increase probe_packets limit

Fixes DTS detection of b2429e5ba9.dts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agonutdec: always check the get_str return value
Andreas Cadhalpun [Fri, 22 May 2015 20:58:55 +0000 (22:58 +0200)]
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>
4 years agolibwebp: use a separate AVClass for each encoder
James Almer [Sat, 23 May 2015 04:51:45 +0000 (01:51 -0300)]
libwebp: use a separate AVClass for each encoder

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agolibwebpenc_common: add header guards
James Almer [Sat, 23 May 2015 04:44:32 +0000 (01:44 -0300)]
libwebpenc_common: add header guards

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agolibwebp: remove unneeded defines
James Almer [Sat, 23 May 2015 04:28:44 +0000 (01:28 -0300)]
libwebp: remove unneeded defines

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoWebP encoder: use WebPAnimEncoder API when available.
Urvang Joshi [Wed, 20 May 2015 01:04:07 +0000 (18:04 -0700)]
WebP encoder: use WebPAnimEncoder API when available.

WebPAnimEncoder API is a combination of encoder (WebPEncoder) and muxer
(WebPMux). It performs several optimizations to make it more efficient
than the combination of WebPEncode() and native ffmpeg muxer.

When WebPAnimEncoder API is used:
- In the encoder layer: we use WebPAnimEncoderAdd() instead of
  WebPEncode().
- The muxer layer: works like a raw muxer.

On the other hand, when WebPAnimEncoder API isn't available, the old code is
used as it is:
- In the codec layer: WebPEncode is used to encode each frame
- In the muxer layer:  ffmpeg muxer is used

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/nutdec: Check X in 2nd branch of index reading
Michael Niedermayer [Fri, 22 May 2015 22:23:05 +0000 (00:23 +0200)]
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>
4 years agoMerge commit '4e17946f10d39eec6cc03fb249ae8147373141b6'
Michael Niedermayer [Fri, 22 May 2015 19:25:57 +0000 (21:25 +0200)]
Merge commit '4e17946f10d39eec6cc03fb249ae8147373141b6'

* commit '4e17946f10d39eec6cc03fb249ae8147373141b6':
  mpegvideo: Rework various functions not to use MpegEncContext directly

Conflicts:
libavcodec/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'a3f4c930ac3f49f47b6e6ffda925d0dcf80320e2'
Michael Niedermayer [Fri, 22 May 2015 19:17:18 +0000 (21:17 +0200)]
Merge commit 'a3f4c930ac3f49f47b6e6ffda925d0dcf80320e2'

* commit 'a3f4c930ac3f49f47b6e6ffda925d0dcf80320e2':
  mpegvideo: Have ff_mpeg_ref_picture use AVCodecContext directly

Conflicts:
libavcodec/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'd528045558825f01472e9bee873f60c98d661e53'
Michael Niedermayer [Fri, 22 May 2015 18:57:30 +0000 (20:57 +0200)]
Merge commit 'd528045558825f01472e9bee873f60c98d661e53'

* commit 'd528045558825f01472e9bee873f60c98d661e53':
  mpegvideo: Have ff_mpeg_unref_picture use AVCodecContext directly

Conflicts:
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c

The memset is left in place

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '6f54dc43cee6b2f5d183acf98b32a3cf8be4a4fc'
Michael Niedermayer [Fri, 22 May 2015 18:49:04 +0000 (20:49 +0200)]
Merge commit '6f54dc43cee6b2f5d183acf98b32a3cf8be4a4fc'

* commit '6f54dc43cee6b2f5d183acf98b32a3cf8be4a4fc':
  mpegvideo: Drop stream_codec_tag

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '9c1db92ad372d4cd69e0490e691c56e4097cb193'
Michael Niedermayer [Fri, 22 May 2015 18:38:07 +0000 (20:38 +0200)]
Merge commit '9c1db92ad372d4cd69e0490e691c56e4097cb193'

* commit '9c1db92ad372d4cd69e0490e691c56e4097cb193':
  mpegvideo: Drop err_recognition

Conflicts:
libavcodec/h263dec.c
libavcodec/ituh263dec.c
libavcodec/mpeg4video.h
libavcodec/mpeg4videodec.c
libavcodec/msmpeg4dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '848e86f74d3e6e87fa592ee8ba8c184cc5fd9a42'
Michael Niedermayer [Fri, 22 May 2015 18:12:51 +0000 (20:12 +0200)]
Merge commit '848e86f74d3e6e87fa592ee8ba8c184cc5fd9a42'

* commit '848e86f74d3e6e87fa592ee8ba8c184cc5fd9a42':
  mpegvideo: Drop flags and flags2

Conflicts:
libavcodec/mpeg12dec.c
libavcodec/mpeg12enc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/ratecontrol.c
libavcodec/vc1_block.c
libavcodec/vc1_loopfilter.c
libavcodec/vc1_mc.c
libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/movtextdec: Add support for large boxes(>32 bit)
Niklesh [Thu, 21 May 2015 15:55:39 +0000 (21:25 +0530)]
avcodec/movtextdec: Add support for large boxes(>32 bit)

Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
4 years agompegvideo: Rework various functions not to use MpegEncContext directly
Vittorio Giovara [Mon, 27 Apr 2015 21:09:21 +0000 (22:09 +0100)]
mpegvideo: Rework various functions not to use MpegEncContext directly

4 years agompegvideo: Have ff_mpeg_ref_picture use AVCodecContext directly
Vittorio Giovara [Mon, 27 Apr 2015 21:09:20 +0000 (22:09 +0100)]
mpegvideo: Have ff_mpeg_ref_picture use AVCodecContext directly

4 years agompegvideo: Have ff_mpeg_unref_picture use AVCodecContext directly
Vittorio Giovara [Mon, 27 Apr 2015 21:09:19 +0000 (22:09 +0100)]
mpegvideo: Have ff_mpeg_unref_picture use AVCodecContext directly

This skips setting the memory to 0 but allows for reuse on different
contextes. Oracle did not report any unsual activity because of it.