OSDN Git Service

android-x86/external-ffmpeg.git
9 years agoavcodec/motion_est: use 2x8x8 for interlaced qpel
Michael Niedermayer [Mon, 1 Dec 2014 12:23:24 +0000 (13:23 +0100)]
avcodec/motion_est: use 2x8x8 for interlaced qpel

Fixes out of array read
Fixes Ticket4121

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodoc: correct license template for t2h.pm
Andreas Cadhalpun [Sun, 30 Nov 2014 22:47:36 +0000 (23:47 +0100)]
doc: correct license template for t2h.pm

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodoc: fix spelling errors
Andreas Cadhalpun [Sun, 30 Nov 2014 22:59:22 +0000 (23:59 +0100)]
doc: fix spelling errors

succesfully => successfully, reproducable => reproducible, specifiying => specifying, isnt => isn't, seperated => separated

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/mxfdec: Reset structural_components_count when allocation fails
Michael Niedermayer [Sun, 30 Nov 2014 22:25:19 +0000 (23:25 +0100)]
avformat/mxfdec: Reset structural_components_count when allocation fails

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolibavformat/mxfdec.c: initial support for EssenceGroups
Mark Reid [Sun, 30 Nov 2014 20:16:27 +0000 (12:16 -0800)]
libavformat/mxfdec.c: initial support for EssenceGroups

Previous version reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoLICENSE.md: Add tests/reference.pnm
Michael Niedermayer [Sun, 30 Nov 2014 18:09:45 +0000 (19:09 +0100)]
LICENSE.md: Add tests/reference.pnm

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '8895bf7b78650c0c21c88cec0484e138ec511a4b'
Michael Niedermayer [Sun, 30 Nov 2014 17:38:22 +0000 (18:38 +0100)]
Merge commit '8895bf7b78650c0c21c88cec0484e138ec511a4b'

* commit '8895bf7b78650c0c21c88cec0484e138ec511a4b':
  Replace lena.pnm

Conflicts:
tests/Makefile
tests/ref/seek/vsynth2-asv1
tests/ref/seek/vsynth2-asv2
tests/ref/seek/vsynth2-ffv1
tests/ref/seek/vsynth2-flashsv
tests/ref/seek/vsynth2-flv
tests/ref/seek/vsynth2-h261
tests/ref/seek/vsynth2-h263
tests/ref/seek/vsynth2-h263p
tests/ref/seek/vsynth2-huffyuv
tests/ref/seek/vsynth2-ljpeg
tests/ref/seek/vsynth2-mjpeg
tests/ref/seek/vsynth2-mpeg1
tests/ref/seek/vsynth2-mpeg1b
tests/ref/seek/vsynth2-mpeg2-422
tests/ref/seek/vsynth2-mpeg2-idct-int
tests/ref/seek/vsynth2-mpeg2-ilace
tests/ref/seek/vsynth2-mpeg2-ivlc-qprd
tests/ref/seek/vsynth2-mpeg2-thread
tests/ref/seek/vsynth2-mpeg2-thread-ivlc
tests/ref/seek/vsynth2-mpeg4
tests/ref/seek/vsynth2-mpeg4-adap
tests/ref/seek/vsynth2-mpeg4-error
tests/ref/seek/vsynth2-mpeg4-nr
tests/ref/seek/vsynth2-mpeg4-qpel
tests/ref/seek/vsynth2-mpeg4-qprd
tests/ref/seek/vsynth2-mpeg4-rc
tests/ref/seek/vsynth2-mpeg4-thread
tests/ref/seek/vsynth2-msmpeg4
tests/ref/seek/vsynth2-msmpeg4v2
tests/ref/seek/vsynth2-roqvideo
tests/ref/seek/vsynth2-rv10
tests/ref/seek/vsynth2-rv20
tests/ref/seek/vsynth2-svq1
tests/ref/seek/vsynth2-wmv1
tests/ref/seek/vsynth2-wmv2
tests/ref/vsynth/vsynth2-asv1
tests/ref/vsynth/vsynth2-asv2
tests/ref/vsynth/vsynth2-cljr
tests/ref/vsynth/vsynth2-dnxhd-1080i
tests/ref/vsynth/vsynth2-dnxhd-720p
tests/ref/vsynth/vsynth2-dnxhd-720p-10bit
tests/ref/vsynth/vsynth2-dnxhd-720p-rd
tests/ref/vsynth/vsynth2-dv
tests/ref/vsynth/vsynth2-dv-411
tests/ref/vsynth/vsynth2-dv-50
tests/ref/vsynth/vsynth2-ffv1
tests/ref/vsynth/vsynth2-ffvhuff
tests/ref/vsynth/vsynth2-flashsv
tests/ref/vsynth/vsynth2-flv
tests/ref/vsynth/vsynth2-h261
tests/ref/vsynth/vsynth2-h263
tests/ref/vsynth/vsynth2-h263-obmc
tests/ref/vsynth/vsynth2-h263p
tests/ref/vsynth/vsynth2-huffyuv
tests/ref/vsynth/vsynth2-jpegls
tests/ref/vsynth/vsynth2-ljpeg
tests/ref/vsynth/vsynth2-mjpeg
tests/ref/vsynth/vsynth2-mpeg1
tests/ref/vsynth/vsynth2-mpeg1b
tests/ref/vsynth/vsynth2-mpeg2
tests/ref/vsynth/vsynth2-mpeg2-422
tests/ref/vsynth/vsynth2-mpeg2-idct-int
tests/ref/vsynth/vsynth2-mpeg2-ilace
tests/ref/vsynth/vsynth2-mpeg2-ivlc-qprd
tests/ref/vsynth/vsynth2-mpeg2-thread
tests/ref/vsynth/vsynth2-mpeg2-thread-ivlc
tests/ref/vsynth/vsynth2-mpeg4
tests/ref/vsynth/vsynth2-mpeg4-adap
tests/ref/vsynth/vsynth2-mpeg4-adv
tests/ref/vsynth/vsynth2-mpeg4-error
tests/ref/vsynth/vsynth2-mpeg4-nr
tests/ref/vsynth/vsynth2-mpeg4-qpel
tests/ref/vsynth/vsynth2-mpeg4-qprd
tests/ref/vsynth/vsynth2-mpeg4-rc
tests/ref/vsynth/vsynth2-mpeg4-thread
tests/ref/vsynth/vsynth2-msmpeg4
tests/ref/vsynth/vsynth2-msmpeg4v2
tests/ref/vsynth/vsynth2-prores
tests/ref/vsynth/vsynth2-qtrle
tests/ref/vsynth/vsynth2-rgb
tests/ref/vsynth/vsynth2-roqvideo
tests/ref/vsynth/vsynth2-rv10
tests/ref/vsynth/vsynth2-rv20
tests/ref/vsynth/vsynth2-svq1
tests/ref/vsynth/vsynth2-v210
tests/ref/vsynth/vsynth2-wmv1
tests/ref/vsynth/vsynth2-wmv2
tests/ref/vsynth/vsynth2-yuv

See: c4abee734dcbdb589925dd6da98041dcf663ce49
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '0f257e29c5520b215e573e7e3abde8e5a4743309'
Michael Niedermayer [Sun, 30 Nov 2014 17:17:51 +0000 (18:17 +0100)]
Merge commit '0f257e29c5520b215e573e7e3abde8e5a4743309'

* commit '0f257e29c5520b215e573e7e3abde8e5a4743309':
  Treat all '*.pnm' files as non-text file

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoffmpeg: take bsf arguments from the command line
Christophe Gisquet [Sat, 29 Nov 2014 18:15:02 +0000 (19:15 +0100)]
ffmpeg: take bsf arguments from the command line

The format is now:
-bsf:X filter1[=opt1=str1/opt2=str2],filter2
ie the parameters are appended after the filter name using '='. As ','
has been reserved already for the list of filters, '/' is just an
example of token separation for now, but that could become part of the
API to avoid each bsf using its own tokenization.

The proper solution would be using AVOption, but this is overkill for now.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/adxenc: fix rounding
Michael Niedermayer [Sun, 30 Nov 2014 11:56:02 +0000 (12:56 +0100)]
avcodec/adxenc: fix rounding

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/adxenc: match prediction used in the decoder
Michael Niedermayer [Sun, 30 Nov 2014 11:40:03 +0000 (12:40 +0100)]
avcodec/adxenc: match prediction used in the decoder

The prediction used in the encoder was not correct

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/atrac3: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sun, 30 Nov 2014 10:23:34 +0000 (11:23 +0100)]
avcodec/atrac3: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/libmp3lame: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sun, 30 Nov 2014 10:21:50 +0000 (11:21 +0100)]
avcodec/libmp3lame: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/wma: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sun, 30 Nov 2014 10:19:29 +0000 (11:19 +0100)]
avcodec/wma: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoh264_ps: move and export aspect_ratio
Christophe Gisquet [Sun, 30 Nov 2014 00:45:52 +0000 (00:45 +0000)]
h264_ps: move and export aspect_ratio

Needed for filters that may need it, like an SPS bsf.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/riffdec: ask for samples with wav header size < 14
Michael Niedermayer [Sun, 30 Nov 2014 00:52:04 +0000 (01:52 +0100)]
avformat/riffdec: ask for samples with wav header size < 14

Based on commit by Hendrik Leppkes <h.leppkes@gmail.com>

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavfilter/vf_yadif: fix extra leading dup frame when deint=1
Neil Birkbeck [Sat, 29 Nov 2014 20:23:58 +0000 (12:23 -0800)]
avfilter/vf_yadif: fix extra leading dup frame when deint=1

Logic for handling single frame in yadif (0f9f24c9), caused deint=1 (e.g., yadif=0:-1:1) to output extra duplicate leading frame:

ffmpeg -i fate-suite/ffmpeg-synthetic/vsynth1/%02d.pgm  -vf yadif=0:-1:1,showinfo -f null -y /dev/null
 [Parsed_showinfo_1 @ 0x1d967d0] n:0 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:E457EEA0 plane_checksum:[E457EEA0] mean:[126] stdev:[46.6]
 [Parsed_showinfo_1 @ 0x1d967d0] n:1 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:E457EEA0 plane_checksum:[E457EEA0] mean:[126] stdev:[46.6]
(Outputs 51 frames)

After patch, vf "yadif=0:-1:1" behaves correctly (like "yadif=0:-1:0") and outputs 50 frames, first two:

[Parsed_showinfo_1 @ 0x1e307d0] n:0 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:68E8D1EB plane_checksum:[68E8D1EB] mean:[126] stdev:[46.0]
[Parsed_showinfo_1 @ 0x1e307d0] n:1 pts:2 pts_time:0.04 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:4E674BC7 plane_checksum:[4E674BC7] mean:[125] stdev:[46.0]
(Outputs 50 frames)

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/twinvq: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sat, 29 Nov 2014 18:22:54 +0000 (19:22 +0100)]
avcodec/twinvq: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ra288: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sat, 29 Nov 2014 18:22:32 +0000 (19:22 +0100)]
avcodec/ra288: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/on2avc: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sat, 29 Nov 2014 18:02:19 +0000 (19:02 +0100)]
avcodec/on2avc: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/aacenc: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sat, 29 Nov 2014 17:58:13 +0000 (18:58 +0100)]
avcodec/aacenc: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ac3enc: Use avpriv_float_dsp_alloc()
Michael Niedermayer [Sat, 29 Nov 2014 17:54:27 +0000 (18:54 +0100)]
avcodec/ac3enc: Use avpriv_float_dsp_alloc()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavutil/ppc/util_altivec: add () to VEC_SPLAT16 macro
Michael Niedermayer [Sat, 29 Nov 2014 12:40:33 +0000 (13:40 +0100)]
avutil/ppc/util_altivec: add () to VEC_SPLAT16 macro

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavutil/buffer: Move USE_ATOMICS to thread.h to avoid it becoming out of sync with it
Michael Niedermayer [Sat, 29 Nov 2014 11:06:03 +0000 (12:06 +0100)]
avutil/buffer: Move USE_ATOMICS to thread.h to avoid it becoming out of sync with it

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolibavutil/threads.h: correct an include to be local
Dave Yeo [Sat, 29 Nov 2014 07:36:06 +0000 (23:36 -0800)]
libavutil/threads.h: correct an include to be local

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolibavutil/thread.h: Support OS/2 threads
Dave Yeo [Sat, 29 Nov 2014 07:34:20 +0000 (23:34 -0800)]
libavutil/thread.h: Support OS/2 threads

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavutil/bprint: C++ compatible AVBPrint definition.
Vadim Kalinsky [Mon, 24 Nov 2014 15:38:05 +0000 (10:38 -0500)]
avutil/bprint: C++ compatible AVBPrint definition.

Previous version reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavu/opt: add escaping to av_opt_serialize
Lukasz Marek [Tue, 25 Nov 2014 19:25:10 +0000 (20:25 +0100)]
lavu/opt: add escaping to av_opt_serialize

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoReplace lena.pnm
Reinhard Tartler [Thu, 27 Nov 2014 17:21:03 +0000 (18:21 +0100)]
Replace lena.pnm

The new reference.pnm is a freely licensed replacement. The photo has
been taken by Reinhard Tartler on August 28 2014, and is licensed under
the expat license as stated at http://www.jclark.com/xml/copying.txt

9 years agoTreat all '*.pnm' files as non-text file
Reinhard Tartler [Fri, 28 Nov 2014 14:52:50 +0000 (09:52 -0500)]
Treat all '*.pnm' files as non-text file

This convinces the pre-receive hook to not consider all *.pnm files as
text files to reduce the patch sizes and avoids triggering whitespace
checks,

Contains a correction by Janne Grunau <janne-libav@jannau.net>

9 years agoavfilter/vf_idet: Fixing idet for single-frame inputs.
Neil Birkbeck [Fri, 28 Nov 2014 21:41:02 +0000 (13:41 -0800)]
avfilter/vf_idet: Fixing idet for single-frame inputs.

Handle single frame inputs similar to yadif (e.g., https://github.com/FFmpeg/FFmpeg/commit/0f9f24c9cfd291c7ece4d3bad64fdf06d107168a and https://github.com/FFmpeg/FFmpeg/commit/681e008d06d2241d50abe6316c908a184ddc5942)

Example:
  ffmpeg -r 1 -t 1 -i fate-suite/ffmpeg-synthetic/vsynth1/%02d.pgm  -vf idet,showinfo -f null -y /dev/null

Previously:
  Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)
  [Parsed_idet_0 @ 0x36389d0] Repeated Fields: Neither:     0 Top:     0 Bottom:     0

After patch:
  [Parsed_showinfo_1 @ 0x1909810] n:0 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 ...
  [Parsed_idet_0 @ 0x18f9bb0] Repeated Fields: Neither:     1 Top:     0 Bottom:     0

Fate looks good.

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '491805636cef50d3f582bd345e1460eeb739ea48'
Michael Niedermayer [Fri, 28 Nov 2014 21:01:38 +0000 (22:01 +0100)]
Merge commit '491805636cef50d3f582bd345e1460eeb739ea48'

* commit '491805636cef50d3f582bd345e1460eeb739ea48':
  rtmpproto: Fix a typo in a comment

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agofix Makefile objects for pulseaudio support
Michael Stypa [Fri, 28 Nov 2014 14:54:50 +0000 (15:54 +0100)]
fix Makefile objects for pulseaudio support

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agortmpproto: Fix a typo in a comment
Martin Storsjö [Fri, 28 Nov 2014 17:39:38 +0000 (19:39 +0200)]
rtmpproto: Fix a typo in a comment

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoavcodec/pngdec: apng: fix output buffer filling when no blending is needed.
Benoit Fouet [Fri, 28 Nov 2014 15:54:09 +0000 (16:54 +0100)]
avcodec/pngdec: apng: fix output buffer filling when no blending is needed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ppc/h264qpel_template: protect unistd.h by #if HAVE_UNISTD_H
Michael Niedermayer [Fri, 28 Nov 2014 15:11:02 +0000 (16:11 +0100)]
avcodec/ppc/h264qpel_template: protect unistd.h by #if HAVE_UNISTD_H

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/pngdec: allow for some code path optimizations.
Benoit Fouet [Fri, 28 Nov 2014 13:03:08 +0000 (14:03 +0100)]
avcodec/pngdec: allow for some code path optimizations.

Use 'if (CONFIG_APNG_DECODER)' where needed, so that the compiler can
optimize out some portion of code.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/pngdec: do not blend on transparent black
Benoit Fouet [Fri, 28 Nov 2014 09:43:01 +0000 (10:43 +0100)]
avcodec/pngdec: do not blend on transparent black

There is no need to memset the zlib output buffer, as there is no
blending happening there. Instead, do not blend when the dispose
operation is set to 'background' (tranparent black).

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ppc/h264qpel: POWER LE support for put_pixels16_l2_altivec() and avg_pixels16...
Rong Yan [Fri, 28 Nov 2014 06:53:35 +0000 (06:53 +0000)]
avcodec/ppc/h264qpel: POWER LE support for put_pixels16_l2_altivec() and avg_pixels16_l2_altivec()

add put_unligned_store() and avg_unligned_store() macros

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ppc/h264qpel_template: POWER LE support for PREFIX_h264_qpel16_h_lowpass_alti...
Rong Yan [Fri, 28 Nov 2014 06:52:24 +0000 (06:52 +0000)]
avcodec/ppc/h264qpel_template: POWER LE support for PREFIX_h264_qpel16_h_lowpass_altivec() PREFIX_h264_qpel16_v_lowpass_altivec() PREFIX_h264_qpel16_hv_lowpass_altivec()

add load_alignment() macro

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ppc/h264chroma_template: POWER LE support for PREFIX_h264_chroma_mc8_altivec...
Rong Yan [Fri, 28 Nov 2014 06:50:49 +0000 (06:50 +0000)]
avcodec/ppc/h264chroma_template: POWER LE support for PREFIX_h264_chroma_mc8_altivec() PREFIX_no_rnd_vc1_chroma_mc8_altivec() CHROMA_MC8_ALTIVEC_CORE_SIMPLE() CHROMA_MC8_ALTIVEC_CORE()

add marcos GET_VSRC1() GET_VSRC()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/ppc/h264dsp: POWER LE support for h264_idct8_add_altivec() h264_idct_dc_add_i...
Rong Yan [Fri, 28 Nov 2014 06:49:50 +0000 (06:49 +0000)]
avcodec/ppc/h264dsp: POWER LE support for h264_idct8_add_altivec() h264_idct_dc_add_internal() h264_loop_filter_luma_altivec() write16x4() VEC_1D_DCT() weight_h264_W_altivec() biweight_h264_W_altivec() VEC_LOAD_U8_ADD_S16_STORE_U8() ALTIVEC_STORE_SUM_CLIP()

add marcos GET_2PERM() dstv_load() vdst_load() dest_unligned_store()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'fcae9f212a6001d966c52dc22cd4b22e9851b428'
Michael Niedermayer [Fri, 28 Nov 2014 11:52:09 +0000 (12:52 +0100)]
Merge commit 'fcae9f212a6001d966c52dc22cd4b22e9851b428'

* commit 'fcae9f212a6001d966c52dc22cd4b22e9851b428':
  dashenc: Avoid a VLA-like construct

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'a9d8d35e4833fc4dfbf557ce73c84e9ca6224427'
Michael Niedermayer [Fri, 28 Nov 2014 11:50:38 +0000 (12:50 +0100)]
Merge commit 'a9d8d35e4833fc4dfbf557ce73c84e9ca6224427'

* commit 'a9d8d35e4833fc4dfbf557ce73c84e9ca6224427':
  dashenc: Add options to make segment names configurable

Conflicts:
libavformat/dashenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '01eac895ab350027467ffbe7278740f89ae8be75'
Michael Niedermayer [Fri, 28 Nov 2014 11:28:15 +0000 (12:28 +0100)]
Merge commit '01eac895ab350027467ffbe7278740f89ae8be75'

* commit '01eac895ab350027467ffbe7278740f89ae8be75':
  rtmpproto: Only prepend @setDataFrame for onMetaData and |RtmpSampleAccess

Conflicts:
libavformat/rtmpproto.c

See: 60fd790f381cd404ffdafa8a86a6dc93c9d80f99
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '44127b157e9f8acb837d4bb3a094f56b40da3ef5'
Michael Niedermayer [Fri, 28 Nov 2014 11:14:10 +0000 (12:14 +0100)]
Merge commit '44127b157e9f8acb837d4bb3a094f56b40da3ef5'

* commit '44127b157e9f8acb837d4bb3a094f56b40da3ef5':
  rtmppkt: Make pkt->data reallocable

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '3c3b8003a13d9c3668c0bb6d79d2376da3b2b352'
Michael Niedermayer [Fri, 28 Nov 2014 10:57:33 +0000 (11:57 +0100)]
Merge commit '3c3b8003a13d9c3668c0bb6d79d2376da3b2b352'

* commit '3c3b8003a13d9c3668c0bb6d79d2376da3b2b352':
  rtmpproto: Simplify code for copying data into the output packet

Conflicts:
libavformat/rtmpproto.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '857e6667f9061ae261c0b951113e4efc4329b05e'
Michael Niedermayer [Fri, 28 Nov 2014 10:35:08 +0000 (11:35 +0100)]
Merge commit '857e6667f9061ae261c0b951113e4efc4329b05e'

* commit '857e6667f9061ae261c0b951113e4efc4329b05e':
  rtmpproto: Clarify a comment

Conflicts:
libavformat/rtmpproto.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodashenc: Avoid a VLA-like construct
Martin Storsjö [Fri, 28 Nov 2014 09:51:05 +0000 (11:51 +0200)]
dashenc: Avoid a VLA-like construct

This fixes the build on compilers that interpreted the earlier
code as a variable length array (which we intentionally disallow).

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agodashenc: Add options to make segment names configurable
Bryan Huh [Thu, 27 Nov 2014 09:46:02 +0000 (09:46 +0000)]
dashenc: Add options to make segment names configurable

This allows one to specify templated segment names for init-segments,
media-segments, and for the base-url in the case of single-file.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortmpproto: Only prepend @setDataFrame for onMetaData and |RtmpSampleAccess
Martin Storsjö [Mon, 24 Nov 2014 08:51:46 +0000 (10:51 +0200)]
rtmpproto: Only prepend @setDataFrame for onMetaData and |RtmpSampleAccess

Currently, when streaming to an RTMP server, any time a packet of type
RTMP_PT_NOTIFY is encountered, the packet is prepended with @setDataFrame
before it gets sent to the server. This is incorrect; only packets for
onMetaData and |RtmpSampleAccess should invoke @setDataFrame on the RTMP
server. Specifically, the current bug manifests itself when trying to
stream onTextData or onCuePoint invocations.

This fix addresses that problem and ensures that the @setDataFrame is
only prepended for onMetaData and |RtmpSampleAccess.

Since data is fed to the rtmp_write function in smaller pieces (depending
on the calling IO buffer size), we can't generally assume that the
whole packet (or even the whole command string) is available at once,
therefore we can only check the command string once the full packet
has been transferred to us for sending.

Based on a patch by Jeffrey Wescott.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortmppkt: Make pkt->data reallocable
Martin Storsjö [Mon, 24 Nov 2014 08:41:34 +0000 (10:41 +0200)]
rtmppkt: Make pkt->data reallocable

We try to avoid mixing av_malloc with av_realloc, since av_malloc
may be implemented with functions that can't (formally) be mixed
with the functions used in av_realloc.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortmpproto: Simplify code for copying data into the output packet
Martin Storsjö [Mon, 24 Nov 2014 08:17:20 +0000 (10:17 +0200)]
rtmpproto: Simplify code for copying data into the output packet

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortmpproto: Clarify a comment
Martin Storsjö [Mon, 24 Nov 2014 08:02:11 +0000 (10:02 +0200)]
rtmpproto: Clarify a comment

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoavcodec/hevc_ps: Check num_long_term_ref_pics_sps
Michael Niedermayer [Fri, 28 Nov 2014 02:46:56 +0000 (03:46 +0100)]
avcodec/hevc_ps: Check num_long_term_ref_pics_sps

Fixes out of array access
Fixes: signal_sigsegv_35bd0f0_1182_cov_791726764_STRUCT_B_Samsung_4.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/pngdec: add support for 'over' blend operation for 'none' dispose operation.
Benoit Fouet [Thu, 27 Nov 2014 14:26:27 +0000 (15:26 +0100)]
avcodec/pngdec: add support for 'over' blend operation for 'none' dispose operation.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/pngdec: split P frames handling to a separate function.
Benoit Fouet [Thu, 27 Nov 2014 14:26:26 +0000 (15:26 +0100)]
avcodec/pngdec: split P frames handling to a separate function.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMove extralibs variables using ldl after ldl definition
Timo Rothenpieler [Thu, 27 Nov 2014 12:35:48 +0000 (13:35 +0100)]
Move extralibs variables using ldl after ldl definition

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '1973079417e8701b52ba810a72cb6c7c6f7f9a56'
Michael Niedermayer [Thu, 27 Nov 2014 23:00:06 +0000 (00:00 +0100)]
Merge commit '1973079417e8701b52ba810a72cb6c7c6f7f9a56'

* commit '1973079417e8701b52ba810a72cb6c7c6f7f9a56':
  opusdec: make sure all substreams have the same number of coded samples

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '96fda42a8f9bf84beaaf7f5991d17f2a057de86c'
Michael Niedermayer [Thu, 27 Nov 2014 22:46:12 +0000 (23:46 +0100)]
Merge commit '96fda42a8f9bf84beaaf7f5991d17f2a057de86c'

* commit '96fda42a8f9bf84beaaf7f5991d17f2a057de86c':
  vf_interlace: get rid of useless loads

See: ca59b5b6eceb1adbf96b8248128e58bfbb79c9a6
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'fbd6c97f9ca858140df16dd07200ea0d4bdc1a83'
Michael Niedermayer [Thu, 27 Nov 2014 22:03:07 +0000 (23:03 +0100)]
Merge commit 'fbd6c97f9ca858140df16dd07200ea0d4bdc1a83'

* commit 'fbd6c97f9ca858140df16dd07200ea0d4bdc1a83':
  lavu: fix memory leaks by using a mutex instead of atomics

Conflicts:
libavutil/buffer.c

The atomics code is left in place as a fallback for synchronization in the
absence of p/w32 threads. Our ABI did not requires applications to
only use threads (and matching ones) to what libavutil was build with
Our code also was not affected by the leak this change fixes, though
no question the atomics based implementation is not pretty at all.
First and foremost the code must work, being pretty comes after that.

If this causes problems, for example when libavutil is used by multiple
applications each using a different kind of threading system then the
default possibly has to be changed to the uglier atomics.

See: cea3a63ba3d89d8403eef008f7a7c54d645cff70
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavu/opt: add consts where possible
Lukasz Marek [Wed, 26 Nov 2014 23:11:01 +0000 (00:11 +0100)]
lavu/opt: add consts where possible

9 years agoffmpeg_opt: make use of recommended encoder configuration
Lukasz Marek [Sun, 16 Nov 2014 20:57:54 +0000 (21:57 +0100)]
ffmpeg_opt: make use of recommended encoder configuration

So far ffmpeg used recommended configuration only for codec priv options.
ffmpeg will use now codec defaults and then apply recommended configuration
for all options. Recommended configuration possibly contains minimal
set of options to filful user configuration.

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agolavf/ffmenc: store recommended encoder configuration
Lukasz Marek [Sun, 16 Nov 2014 20:55:14 +0000 (21:55 +0100)]
lavf/ffmenc: store recommended encoder configuration

ffmenc will store recommended encoder configuration if present.
This will allow the user to base on local defaults and
apply only explicitly set options.

If recommended encoder configuration is not present, then
non-default context's options are stored.

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agolavf/ffmdec: add common options to recommended encoder configuration
Lukasz Marek [Sun, 16 Nov 2014 20:53:59 +0000 (21:53 +0100)]
lavf/ffmdec: add common options to recommended encoder configuration

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoMerge commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1'
Michael Niedermayer [Thu, 27 Nov 2014 21:07:53 +0000 (22:07 +0100)]
Merge commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1'

* commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1':
  lavu: add wrappers for the pthreads mutex API

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/rtpproto: Allow to specify DSCP class
Vincent Bernat [Fri, 23 May 2014 13:31:17 +0000 (15:31 +0200)]
avformat/rtpproto: Allow to specify DSCP class

By appending `?dscp=26` to the URL, IP packets will be classified as
AF31 (assured forwarding for multimedia flows with low probability of
loss). On congested network, this allows a user to assign priorities to
flows.

Signed-off-by: Vincent Bernat <vincent@bernat.im>
9 years agoavformat/udp: Allow to specify DSCP class
Vincent Bernat [Fri, 23 May 2014 13:26:32 +0000 (15:26 +0200)]
avformat/udp: Allow to specify DSCP class

By appending `?dscp=26` to the URL, IP packets will be classified as
AF31 (assured forwarding for multimedia flows with low probability of
loss). On congested network, this allows a user to assign priorities to
flows.

Signed-off-by: Vincent Bernat <vincent@bernat.im>
9 years agoavcodec/mjpegdec: Fix integer overflow in shift
Michael Niedermayer [Thu, 27 Nov 2014 18:27:05 +0000 (19:27 +0100)]
avcodec/mjpegdec: Fix integer overflow in shift

Fixes: signal_sigabrt_7ffff6ac7bb9_2683_cov_4120310995_m_ijpg.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/mov: change conjugation for "Duplicate"
Clément Bœsch [Thu, 27 Nov 2014 17:13:57 +0000 (18:13 +0100)]
avformat/mov: change conjugation for "Duplicate"

9 years agoavformat/mov: strengthen some table allocations
Clément Bœsch [Mon, 10 Nov 2014 17:21:28 +0000 (18:21 +0100)]
avformat/mov: strengthen some table allocations

9 years agoffmpeg: Print a debug message if the frame parameters mismatch the context
Michael Niedermayer [Thu, 27 Nov 2014 13:16:31 +0000 (14:16 +0100)]
ffmpeg: Print a debug message if the frame parameters mismatch the context

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/hevc_ps: More complete window reset
Michael Niedermayer [Thu, 27 Nov 2014 14:03:35 +0000 (15:03 +0100)]
avcodec/hevc_ps: More complete window reset

Fixes out of array read
Fixes: signal_sigsegv_35bcf26_471_cov_2806540268_CAINIT_A_SHARP_4.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavu/imgutils: remove redundant and wrong check in av_image_fill_arrays
Stefano Sabatini [Thu, 27 Nov 2014 11:27:48 +0000 (12:27 +0100)]
lavu/imgutils: remove redundant and wrong check in av_image_fill_arrays

9 years agoopusdec: make sure all substreams have the same number of coded samples
Anton Khirnov [Mon, 24 Nov 2014 10:16:46 +0000 (11:16 +0100)]
opusdec: make sure all substreams have the same number of coded samples

Fixes invalid writes with invalid multichannel streams.

CC:libav-stable@libav.org

9 years agovf_interlace: get rid of useless loads
Kieran Kunhya [Tue, 25 Nov 2014 16:14:32 +0000 (17:14 +0100)]
vf_interlace: get rid of useless loads

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agolavu: fix memory leaks by using a mutex instead of atomics
wm4 [Fri, 14 Nov 2014 12:34:50 +0000 (13:34 +0100)]
lavu: fix memory leaks by using a mutex instead of atomics

The buffer pool has to atomically add and remove entries from the linked
list of available buffers. This was done by removing the entire list
with a CAS operation, working on it, and then setting it back again
(using a retry-loop in case another thread was doing the same thing).

This could effectively cause memory leaks: while a thread was working on
the buffer list, other threads would allocate new buffers, increasing
the pool's total size. There was no real leak, but since these extra
buffers were not needed, but not free'd either (except when the buffer
pool was destroyed), this had the same effects as a real leak. For some
reason, growth was exponential, and could easily kill the process due
to OOM in real-world uses.

Fix this by using a mutex to protect the list operations. The fancy
way atomics remove the whole list to work on it is not needed anymore,
which also avoids the situation which was causing the leak.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agolavu: add wrappers for the pthreads mutex API
Anton Khirnov [Sun, 23 Nov 2014 20:25:05 +0000 (21:25 +0100)]
lavu: add wrappers for the pthreads mutex API

Also add no-op fallbacks when threading is disabled.

This helps keeping the code clean if Libav is compiled for targets
without threading. Since we assume that no threads of any kind are used
in such configurations, doing nothing is ok by definition.

Based on a patch by wm4 <nfxjfg@googlemail.com>.

9 years agomsvc: Fix compilation errors due to header include order.
Matthew Oliver [Thu, 27 Nov 2014 08:00:36 +0000 (19:00 +1100)]
msvc: Fix compilation errors due to header include order.

Ensures that the header include order is such that winsock2.h is always
included before windows.h or that windows.h does not include winsock.h.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolibavutil/ppc/util_altivec.h : fix load_with_perm_vec() add marcos vcswapi2s() vcswap...
Rong Yan [Thu, 27 Nov 2014 05:45:58 +0000 (05:45 +0000)]
libavutil/ppc/util_altivec.h : fix load_with_perm_vec() add marcos vcswapi2s() vcswapc() VEC_SPLAT16() VEC_SLD16() for POWER LE

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '675ac56b7ee0f204963fde55295197c5df80aa91'
Michael Niedermayer [Thu, 27 Nov 2014 10:52:33 +0000 (11:52 +0100)]
Merge commit '675ac56b7ee0f204963fde55295197c5df80aa91'

* commit '675ac56b7ee0f204963fde55295197c5df80aa91':
  Revert "lavf: Don't try to update files atomically with renames on windows"

Conflicts:
libavformat/dashenc.c
libavformat/hdsenc.c
libavformat/internal.h
libavformat/smoothstreamingenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '79fd186a5035cf16fc0ab288d8f59da8b1ba2c0e'
Michael Niedermayer [Thu, 27 Nov 2014 10:35:54 +0000 (11:35 +0100)]
Merge commit '79fd186a5035cf16fc0ab288d8f59da8b1ba2c0e'

* commit '79fd186a5035cf16fc0ab288d8f59da8b1ba2c0e':
  lavf: Use MoveFileEx instead of rename/_wrename on windows

Conflicts:
configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '9326d64ed1baadd7af60df6bbcc59cf1fefede48'
Michael Niedermayer [Thu, 27 Nov 2014 10:10:26 +0000 (11:10 +0100)]
Merge commit '9326d64ed1baadd7af60df6bbcc59cf1fefede48'

* commit '9326d64ed1baadd7af60df6bbcc59cf1fefede48':
  Share the utf8 to wchar conversion routine between lavf and lavu

Conflicts:
libavformat/os_support.h
libavutil/file_open.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoRevert "lavf: Don't try to update files atomically with renames on windows"
Martin Storsjö [Tue, 25 Nov 2014 08:51:23 +0000 (10:51 +0200)]
Revert "lavf: Don't try to update files atomically with renames on windows"

This reverts commit b9d08c77a44390b0848c06f20bc0e9e951ba6a3c.

After taking MoveFileEx into use, we can replace files with renames
on windows as well.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agolavf: Use MoveFileEx instead of rename/_wrename on windows
Martin Storsjö [Tue, 25 Nov 2014 09:08:59 +0000 (11:08 +0200)]
lavf: Use MoveFileEx instead of rename/_wrename on windows

This allows getting the normal unix semantics, where a rename
allows replacing an existing file.

Based on a suggestion by Reimar Döffinger.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoShare the utf8 to wchar conversion routine between lavf and lavu
Martin Storsjö [Tue, 25 Nov 2014 08:39:50 +0000 (10:39 +0200)]
Share the utf8 to wchar conversion routine between lavf and lavu

This doesn't add any dependency on library internals, since this
only is a static inline function that gets built into each of the
calling functions - this is only to reduce the code duplication.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoavcodec/hevc_ps: Check return code from pps_range_extensions()
Michael Niedermayer [Thu, 27 Nov 2014 01:31:46 +0000 (02:31 +0100)]
avcodec/hevc_ps: Check return code from pps_range_extensions()

Fixes out of array read
Fixes: asan_heap-oob_177e222_885_cov_1532528832_MERGE_D_TI_3.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/apngdec: validate frame dimensions.
Benoit Fouet [Wed, 26 Nov 2014 09:12:18 +0000 (10:12 +0100)]
avformat/apngdec: validate frame dimensions.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavc/options: fix leaks in avcodec_free_context
Lukasz Marek [Sat, 22 Nov 2014 19:43:47 +0000 (20:43 +0100)]
lavc/options: fix leaks in avcodec_free_context

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoffserver: dont leak pb_buffer
Lukasz Marek [Thu, 20 Nov 2014 17:59:58 +0000 (18:59 +0100)]
ffserver: dont leak pb_buffer

9 years agoffserver: dont leak child arguments
Lukasz Marek [Wed, 19 Nov 2014 23:28:03 +0000 (00:28 +0100)]
ffserver: dont leak child arguments

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoffserver: export recommented encoder configuration
Lukasz Marek [Sun, 16 Nov 2014 20:51:42 +0000 (21:51 +0100)]
ffserver: export recommented encoder configuration

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoffserver: allow skip setting defaults
Lukasz Marek [Sat, 15 Nov 2014 17:43:41 +0000 (18:43 +0100)]
ffserver: allow skip setting defaults

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoffserver_config: remove ffserver_apply_stream_config function
Lukasz Marek [Sun, 16 Nov 2014 00:33:19 +0000 (01:33 +0100)]
ffserver_config: remove ffserver_apply_stream_config function

This function became very short and can be logically merged with add_codec().

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoffserver_config: map ffserver options to AVOptions
Lukasz Marek [Thu, 13 Nov 2014 17:45:43 +0000 (18:45 +0100)]
ffserver_config: map ffserver options to AVOptions

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoffserver_config: cosmetic: move line_num into FFServerConfig
Lukasz Marek [Mon, 17 Nov 2014 01:23:22 +0000 (02:23 +0100)]
ffserver_config: cosmetic: move line_num into FFServerConfig

Moving line_num into FFServerConfig as parser state,
saves many passes of it aside of FFServerConfig pointer.

9 years agoffserver_config: cosmetic: simplify functions calls.
Lukasz Marek [Thu, 13 Nov 2014 17:45:17 +0000 (18:45 +0100)]
ffserver_config: cosmetic: simplify functions calls.

ffserver_save_avoption() and ffserver_opt_preset() have
redundant arguments. They can be obtained basing on media type.
This simplifies uses and reduce chance for a mistake.

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
9 years agoavfilter/signalstats: re-use yuv/yuvu/yuvv vars in diff
Clément Bœsch [Sat, 22 Nov 2014 23:33:19 +0000 (00:33 +0100)]
avfilter/signalstats: re-use yuv/yuvu/yuvv vars in diff

9 years agoavfilter/signalstats: localize a few variables
Clément Bœsch [Sat, 22 Nov 2014 23:29:50 +0000 (00:29 +0100)]
avfilter/signalstats: localize a few variables

9 years agoavfilter/signalstats: add threading in compute_sat_hue_metrics
Clément Bœsch [Sat, 22 Nov 2014 23:10:19 +0000 (00:10 +0100)]
avfilter/signalstats: add threading in compute_sat_hue_metrics