]> git.sesse.net Git - ffmpeg/log
ffmpeg
9 years agolavd/x11grab: reindent after last commit.
Nicolas George [Thu, 17 Jul 2014 16:28:58 +0000 (18:28 +0200)]
lavd/x11grab: reindent after last commit.

9 years agolavfi: check refcount before merging.
Nicolas George [Tue, 15 Jul 2014 17:26:52 +0000 (19:26 +0200)]
lavfi: check refcount before merging.

When merging the formats around the automatically inserted
convert filters, the refcount of the format lists can not be 0.
Coverity does not detect it, and suspects a memory leak,
because if refcount is 0 the newly allocated lists are not
stored anywhere. That gives CIDs 12242821224283 and 1224284.
Lists with refcount 0 are used in can_merge_formats(), so the
asserts can not be moved inside the merge functions.

9 years agolavd/x11grab: add an option to disable MIT-SHM.
Nicolas George [Tue, 15 Jul 2014 09:37:47 +0000 (11:37 +0200)]
lavd/x11grab: add an option to disable MIT-SHM.

With remote displays supporting the MIT-SHM extension,
the extension is detected and used, but attaching fails
asynchronously.

9 years agolavd/x11grab: check 32-bits color masks.
Nicolas George [Tue, 15 Jul 2014 14:04:49 +0000 (16:04 +0200)]
lavd/x11grab: check 32-bits color masks.

The X11 servers by VNC, at 32-bits depths, has the following masks:
R:0x000007ff G:0x003ff800 B:0xffc00000
This is not compatible with AV_PIX_FMT_0RGB32, and the result
is success with completely wrong colors.

9 years agolavd/x11grab: change error code for unsupported visuals.
Nicolas George [Tue, 15 Jul 2014 14:08:18 +0000 (16:08 +0200)]
lavd/x11grab: change error code for unsupported visuals.

9 years agolavd/x11grab: disable drawing mouse without XFixes.
Nicolas George [Tue, 15 Jul 2014 13:37:00 +0000 (15:37 +0200)]
lavd/x11grab: disable drawing mouse without XFixes.

Fix a segfault if the XFixes extension is not available on
the X11 server.
Can be reproduced using the VNC server.

9 years agoavcodec/resample: Use av_m/realloc_array()
Michael Niedermayer [Thu, 17 Jul 2014 14:33:17 +0000 (16:33 +0200)]
avcodec/resample: Use av_m/realloc_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/resample2: Use av_malloc(z)_array()
Michael Niedermayer [Thu, 17 Jul 2014 14:32:48 +0000 (16:32 +0200)]
avcodec/resample2: Use av_malloc(z)_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoffserver: use av_mallocz_array()
Michael Niedermayer [Thu, 17 Jul 2014 14:30:34 +0000 (16:30 +0200)]
ffserver: use av_mallocz_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavf/segment: set segment end time when the first packet arrives
Stefano Sabatini [Thu, 17 Jul 2014 14:36:27 +0000 (16:36 +0200)]
lavf/segment: set segment end time when the first packet arrives

Avoid negative durations in case there is a single packet in the current
segment, since in that case the end time is still set to the previous
segment end time.

9 years agolavf/segment: fix weird indent
Stefano Sabatini [Thu, 17 Jul 2014 14:36:11 +0000 (16:36 +0200)]
lavf/segment: fix weird indent

9 years agolavf/segment: show incoming packet duration in debug message
Stefano Sabatini [Thu, 17 Jul 2014 14:35:36 +0000 (16:35 +0200)]
lavf/segment: show incoming packet duration in debug message

9 years agolavf/segment: only use reference frames for computing the segment end time
Stefano Sabatini [Thu, 17 Jul 2014 12:49:20 +0000 (14:49 +0200)]
lavf/segment: only use reference frames for computing the segment end time

This avoids a systematic overestimate of the segments duration when there
are several streams.

Fix trac ticket #3724.

9 years agoavformat/dv: implement fallback in dv_extract_pack()
Michael Niedermayer [Thu, 17 Jul 2014 02:25:21 +0000 (04:25 +0200)]
avformat/dv: implement fallback in dv_extract_pack()

Fixes Ticket2340
Fixes Ticket2341

Based-on mail from Dave Rice <dave@dericed.com>
Tested-by: Dave Rice <dave@dericed.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '324ff59444ff5470bb325ff1e2be7c4b054fc944'
Michael Niedermayer [Thu, 17 Jul 2014 12:18:20 +0000 (14:18 +0200)]
Merge commit '324ff59444ff5470bb325ff1e2be7c4b054fc944'

* commit '324ff59444ff5470bb325ff1e2be7c4b054fc944':
  avpacket: Check for and return errors in ff_interleave_add_packet()

Conflicts:
libavformat/audiointerleave.c
libavformat/internal.h
libavformat/mux.c

See: 4d7c71c36467331f1e0c0f17af9f371d33308a9c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '2db953f84671997e936f91140ffb5143c1537844'
Michael Niedermayer [Thu, 17 Jul 2014 12:00:01 +0000 (14:00 +0200)]
Merge commit '2db953f84671997e936f91140ffb5143c1537844'

* commit '2db953f84671997e936f91140ffb5143c1537844':
  h264: K&R formatting cosmetics

Conflicts:
libavcodec/h264.c
libavcodec/h264_direct.c
libavcodec/h264_slice.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2'
Michael Niedermayer [Thu, 17 Jul 2014 11:50:09 +0000 (13:50 +0200)]
Merge commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2'

* commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2':
  h264: Remove some commented-out, broken cruft

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodoc/filters/drawtext: simplify example, use clip() eval function
Stefano Sabatini [Thu, 17 Jul 2014 10:44:36 +0000 (12:44 +0200)]
doc/filters/drawtext: simplify example, use clip() eval function

9 years agolavfi/drawtext: add fontcolor_expr option
Andrey Utkin [Fri, 4 Jul 2014 18:54:53 +0000 (21:54 +0300)]
lavfi/drawtext: add fontcolor_expr option

Allow to dynamically evaluate the font color.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
9 years agoavpacket: Check for and return errors in ff_interleave_add_packet()
Nidhi Makhijani [Mon, 14 Jul 2014 06:22:44 +0000 (11:52 +0530)]
avpacket: Check for and return errors in ff_interleave_add_packet()

Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years agoh264: K&R formatting cosmetics
Luca Barbato [Wed, 16 Jul 2014 22:31:06 +0000 (18:31 -0400)]
h264: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavfi/drawtext: add expansion function eif()
Andrey Utkin [Fri, 4 Jul 2014 09:16:16 +0000 (12:16 +0300)]
lavfi/drawtext: add expansion function eif()

It evaluates expression and outputs it as integer value, using specified
format.

Address trac ticket #3699.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
9 years agolavu/eval: add clip function
Stefano Sabatini [Fri, 4 Jul 2014 12:13:11 +0000 (14:13 +0200)]
lavu/eval: add clip function

9 years agoavutil/opt: try to fix the case where src==dst in av_opt_copy()
Michael Niedermayer [Thu, 17 Jul 2014 03:56:40 +0000 (05:56 +0200)]
avutil/opt: try to fix the case where src==dst in av_opt_copy()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolibavformat/segment: change segment_list_size behavior to match hls_list_size behavior.
Simon Thelen [Wed, 9 Jul 2014 19:40:43 +0000 (21:40 +0200)]
libavformat/segment: change segment_list_size behavior to match hls_list_size behavior.

Make the segment muxer keep segment_list_size segments instead of
segment_list_size + 1 segments. This patch also changes the
documentation for segment_list_size to reduce possible confusion over
how many segments are kept.

this allows the segment list to
be limited to containing only one segment which used to be impossible
because a segment_list_size of 0 kept all the segments and a
segment_list_size of 1 kept 2 segments.

Signed-off-by: Simon Thelen <ffmpeg-dev@c-14.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat: Micro bump for "md5enc: add format_version, to allow selecting which versio...
Michael Niedermayer [Wed, 16 Jul 2014 20:58:29 +0000 (22:58 +0200)]
avformat: Micro bump for "md5enc: add format_version, to allow selecting which version to use"

Suggested-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/md5enc: add format_version, to allow selecting which version to use
Michael Niedermayer [Wed, 16 Jul 2014 20:34:56 +0000 (22:34 +0200)]
avformat/md5enc: add format_version, to allow selecting which version to use

Currently there is just version 1
Fixes remaining part of Ticket2280

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoarmv6: Accelerate butterflies_float
Ben Avison [Thu, 10 Jul 2014 23:14:31 +0000 (00:14 +0100)]
armv6: Accelerate butterflies_float

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in butterflies_float_c() / ff_butterflies_float_vfp() for the
same sample AAC stream:

                   Before          After
                   Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode       1542.8 43.7     1470.5 41.5    100.0%      +4.9%
butterflies_float  130.0  11.9     70.2   12.1    100.0%      +85.2%

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoarmv6: Accelerate vector_fmul_window
Ben Avison [Thu, 10 Jul 2014 23:14:30 +0000 (00:14 +0100)]
armv6: Accelerate vector_fmul_window

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in vector_fmul_window_c() / ff_vector_fmul_window_vfp() for the
same sample AAC stream:

                    Before          After
                    Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode        1598.2 47.4     1529.2 25.4    100.0%      +4.5%
vector_fmul_window  244.0  22.1     188.9  22.3    100.0%      +29.2%

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoh264: Remove some commented-out, broken cruft
Diego Biurrun [Wed, 16 Jul 2014 19:26:34 +0000 (12:26 -0700)]
h264: Remove some commented-out, broken cruft

9 years agoavcodec/snow: remove unused variables
Michael Niedermayer [Wed, 16 Jul 2014 19:24:11 +0000 (21:24 +0200)]
avcodec/snow: remove unused variables

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaaccoder: remove unused assignment
Timothy Gu [Wed, 16 Jul 2014 03:56:30 +0000 (20:56 -0700)]
aaccoder: remove unused assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'adff0a8166345bb9513f0f658043fb6387e90122'
Michael Niedermayer [Wed, 16 Jul 2014 18:09:25 +0000 (20:09 +0200)]
Merge commit 'adff0a8166345bb9513f0f658043fb6387e90122'

* commit 'adff0a8166345bb9513f0f658043fb6387e90122':
  arm: dsputil: Coalesce all init files

Conflicts:
libavcodec/arm/Makefile
libavcodec/arm/dsputil_arm.h
libavcodec/arm/dsputil_init_arm.c
libavcodec/arm/dsputil_init_armv6.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoarm: dsputil: Coalesce all init files
Diego Biurrun [Tue, 8 Jul 2014 15:47:52 +0000 (08:47 -0700)]
arm: dsputil: Coalesce all init files

9 years agovp9: remove unused assignment
Timothy Gu [Wed, 16 Jul 2014 03:56:29 +0000 (20:56 -0700)]
vp9: remove unused assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoget_bits: remove unused assignment
Timothy Gu [Wed, 16 Jul 2014 03:56:28 +0000 (20:56 -0700)]
get_bits: remove unused assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/snow: only allocate space for edges when encoding
Michael Niedermayer [Wed, 16 Jul 2014 02:57:42 +0000 (04:57 +0200)]
avcodec/snow: only allocate space for edges when encoding

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/snowdec: remove mpegvideoencdsp dependency
Michael Niedermayer [Wed, 16 Jul 2014 02:10:25 +0000 (04:10 +0200)]
avcodec/snowdec: remove mpegvideoencdsp dependency

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodiracdec: don't call ff_emulated_edge_mc_8 directly
James Almer [Wed, 16 Jul 2014 01:37:25 +0000 (22:37 -0300)]
diracdec: don't call ff_emulated_edge_mc_8 directly

Use the videodsp function pointer instead.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b'
Michael Niedermayer [Wed, 16 Jul 2014 01:40:13 +0000 (03:40 +0200)]
Merge commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b'

* commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b':
  g2meet: allow size changes within original sizes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoChangelog: change "version <next>" to "version 2.3"
Michael Niedermayer [Wed, 16 Jul 2014 00:09:06 +0000 (02:09 +0200)]
Changelog: change  "version <next>" to "version 2.3"

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agog2meet: allow size changes within original sizes
Vittorio Giovara [Tue, 15 Jul 2014 19:22:11 +0000 (15:22 -0400)]
g2meet: allow size changes within original sizes

9 years agodoc/APIchanges: update
Michael Niedermayer [Wed, 16 Jul 2014 00:06:44 +0000 (02:06 +0200)]
doc/APIchanges: update

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/hevc: clear HEVClcList[i] on allocation
Michael Niedermayer [Tue, 15 Jul 2014 23:33:50 +0000 (01:33 +0200)]
avcodec/hevc: clear HEVClcList[i] on allocation

Fixes fate failure with --enable-memory-poisoning && make THREAD_TYPE=slice THREADS=7  fate-hevc-conformance-ENTP_C_Qualcomm_1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavfilter/drawtext: Add basic text shaping using libfribidi
Marc Jeffreys [Sat, 21 Jun 2014 04:41:45 +0000 (05:41 +0100)]
avfilter/drawtext: Add basic text shaping using libfribidi

Fixes ticket #3758

Reviewed-by: Andrey Utkin <andrey.krieger.utkin@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavdevice/avfoundation: kCVPixelFormatType_OneComponent8 only exists from 10.8 onward
Hanspeter Niederstrasser [Mon, 14 Jul 2014 02:49:24 +0000 (21:49 -0500)]
avdevice/avfoundation: kCVPixelFormatType_OneComponent8 only exists from 10.8 onward

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodiracdec: remove unused dsputil context
James Almer [Tue, 15 Jul 2014 22:10:09 +0000 (19:10 -0300)]
diracdec: remove unused dsputil context

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/matroskadec: fix declaration after statement
Michael Niedermayer [Tue, 15 Jul 2014 22:06:15 +0000 (00:06 +0200)]
avformat/matroskadec: fix declaration after statement

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavf: Add WebM DASH Manifest Muxer
Vignesh Venkatasubramanian [Mon, 14 Jul 2014 16:52:23 +0000 (09:52 -0700)]
lavf: Add WebM DASH Manifest Muxer

This patch adds the ability to generate WebM DASH manifest XML using
ffmpeg. A sample command line would be as follows:

ffmpeg \
  -f webm_dash_manifest -i video1.webm \
  -f webm_dash_manifest -i video2.webm \
  -f webm_dash_manifest -i audio1.webm \
  -f webm_dash_manifest -i audio2.webm \
  -map 0 -map 1 -map 2 -map 3 \
  -c copy \
  -f webm_dash_manifest \
  -adaptation_sets “id=0,streams=0,1 id=1,streams=2,3” \
  manifest.xml

It works by exporting necessary fields as metadata tags in matroskadec
and use those values to write the appropriate XML fields as per the WebM
DASH Specification [1]. Some ideas are adopted from webm-tools project
[2].

[1]
https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification
[2]
https://chromium.googlesource.com/webm/webm-tools/+/master/webm_dash_manifest/

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavf/matroska: Add functions for WebM DASH Manifest
Vignesh Venkatasubramanian [Mon, 7 Jul 2014 19:52:37 +0000 (12:52 -0700)]
lavf/matroska: Add functions for WebM DASH Manifest

Add functions and logic to matroskadec for use by the WebM DASH Manifest
XML Muxer. The actual muxer is added in a future patch.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoBlackframe video filter now sets metadata accordingly.
Stepan Bujnak [Fri, 11 Jul 2014 21:40:07 +0000 (23:40 +0200)]
Blackframe video filter now sets metadata accordingly.

the libavfilter/vf_blackframe.c filter now not only logs detected
values, but also sets frame metadata. Currently, only `pblack` value is set
but `SET_META` macro has been introduced to ease development in the future.

Signed-off-by: Stepan Bujnak <stepan.bujnak@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/hevc: treat current_sps like sps_list
Michael Niedermayer [Tue, 15 Jul 2014 19:43:30 +0000 (21:43 +0200)]
avcodec/hevc: treat current_sps like sps_list

This simplifies the management of current_sps
Fixes Ticket3458

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/hevc_ps: prevent stale pointer in malloc failure case
Michael Niedermayer [Tue, 15 Jul 2014 19:43:04 +0000 (21:43 +0200)]
avcodec/hevc_ps: prevent stale pointer in malloc failure case

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavutil & avdevice: remove av_bprint_fd_contents()
Michael Niedermayer [Sun, 13 Jul 2014 13:56:06 +0000 (15:56 +0200)]
avutil & avdevice: remove av_bprint_fd_contents()

MSVC does not allow passing file pointers between libs
This API can thus not work with MSVC and as it was very recently added
and its it was in no release its removial should not cause any problems

A better API will be implemented, but its not finished yet, this revert is
to avoid potentially blocking the release

Found-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agobuild: fix build with --disable-encoders
Clément Bœsch [Tue, 15 Jul 2014 19:26:14 +0000 (21:26 +0200)]
build: fix build with --disable-encoders

draw_edges() should probably be moved somewhere else to avoid
mpegvideo*enc* dependency to decoders.

9 years agoffmpeg_opt: remove intra_dc_precision, its handled by AVOptions
Michael Niedermayer [Tue, 15 Jul 2014 18:18:19 +0000 (20:18 +0200)]
ffmpeg_opt: remove intra_dc_precision, its handled by AVOptions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller
Michael Niedermayer [Tue, 15 Jul 2014 17:51:02 +0000 (19:51 +0200)]
avcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller

Fixes segfault
the size can probably be reduced further for the mpeg2 case

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/mpegvideo_enc: check intra dc precission
Michael Niedermayer [Tue, 15 Jul 2014 17:12:55 +0000 (19:12 +0200)]
avcodec/mpegvideo_enc: check intra dc precission

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/mpegvideo_enc: workaround applications specifying intra dc level based on...
Michael Niedermayer [Tue, 15 Jul 2014 17:12:00 +0000 (19:12 +0200)]
avcodec/mpegvideo_enc: workaround applications specifying intra dc level based on 8 and othes based on 0bit

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/options_table: add liberal limits to intra dc precission
Michael Niedermayer [Tue, 15 Jul 2014 17:04:51 +0000 (19:04 +0200)]
avcodec/options_table: add liberal limits to intra dc precission

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/mpegvideo_enc: return proper error instead of failing assertion when max...
Michael Niedermayer [Tue, 15 Jul 2014 16:49:18 +0000 (18:49 +0200)]
avcodec/mpegvideo_enc: return proper error instead of failing assertion when max rate is not set

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoffmpeg: Fix copying timebase to muxer context
Michael Niedermayer [Tue, 15 Jul 2014 13:45:06 +0000 (15:45 +0200)]
ffmpeg: Fix copying timebase to muxer context

Fixes Ticket3741

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodoc/utils: add missing `@c man end` title
Timothy Gu [Mon, 14 Jul 2014 23:21:15 +0000 (16:21 -0700)]
doc/utils: add missing `@c man end` title

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc/rext: add support for Range extension tools
Mickaël Raulet [Mon, 14 Jul 2014 22:20:22 +0000 (00:20 +0200)]
hevc/rext: add support for Range extension tools

SPS features/flags:
- transform_skip_rotation_enabled_flag
- transform_skip_context_enabled_flag
- implicit_rdpcm_enabled_flag
- explicit_rdpcm_enabled_flag
- intra_smoothing_disabled_flag
- persistent_rice_adaptation_enabled_flag

PPS features/flags:
- log2_max_transform_skip_block_size
- cross_component_prediction_enabled_flag
- chroma_qp_offset_list_enabled_flag
- diff_cu_chroma_qp_offset_depth
- chroma_qp_offset_list_len_minus1
- cb_qp_offset_list
- cr_qp_offset_list
- log2_sao_offset_scale_luma
- log2_sao_offset_scale_chroma
(cherry picked from commit 005294c5b939a23099871c6130c8a7cc331f73ee)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc/rext: basic infrastructure for supporting range extension
Mickaël Raulet [Mon, 14 Jul 2014 22:16:53 +0000 (00:16 +0200)]
hevc/rext: basic infrastructure for supporting range extension
- support for 4:2:2 and 4:4:4 up to 12 bits
- add a new profile for range extension
(cherry picked from commit d3c067fa65bbc871758d28aa07f54123430ca346)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc: separate residu and prediction (needed for Range Extension)
Mickaël Raulet [Mon, 14 Jul 2014 19:17:33 +0000 (21:17 +0200)]
hevc: separate residu and prediction (needed for Range Extension)
(cherry picked from commit 6b3856ef57d66f2e59ee61fd2eb5f83b6d0d7d4a)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc: use local variable for split_cu_flag
Mickaël Raulet [Tue, 15 Jul 2014 08:27:14 +0000 (10:27 +0200)]
hevc: use local variable for split_cu_flag
(cherry picked from commit ee71e9e9c12fc47856c452efb278f9f593a923ee)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc: move restore_tqb where it should be.
Mickaël Raulet [Mon, 14 Jul 2014 14:57:45 +0000 (16:57 +0200)]
hevc: move restore_tqb where it should be.
(cherry picked from commit 8fafc96a9805d11bfe32537c8f78a294a5844065)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc: simplify SAO computation, delay from one row its computation
Mickaël Raulet [Tue, 15 Jul 2014 08:23:20 +0000 (10:23 +0200)]
hevc: simplify SAO computation, delay from one row its computation
(cherry picked from commit f2c5f647cec786df26f442a85e6d685a131a50c9)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoRELEASE_NOTES: Mention Libav and add codename
Timothy Gu [Mon, 14 Jul 2014 23:16:29 +0000 (16:16 -0700)]
RELEASE_NOTES: Mention Libav and add codename

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoAdding Maintainer for dvbsubdec
Anshul Maheswhwari [Mon, 14 Jul 2014 19:12:01 +0000 (00:42 +0530)]
Adding Maintainer for dvbsubdec

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc/cabac: add new context for new syntax elements related to Rext(cherry picked...
Mickaël Raulet [Sun, 13 Jul 2014 08:38:13 +0000 (10:38 +0200)]
hevc/cabac: add new context for new syntax elements related to Rext(cherry picked from commit 6d71e2394f52679cfc8b86fb5880f89e6bd311d4)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agohevc: cleaning up, remove unused constants(cherry picked from commit 7eed32d076c57aa0...
Mickaël Raulet [Sun, 13 Jul 2014 08:30:13 +0000 (10:30 +0200)]
hevc: cleaning up, remove unused constants(cherry picked from commit 7eed32d076c57aa03011d65a64903e8bdb633978)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'f9900822fc5f0b0c7242ca318290c090bd5d0af0'
Michael Niedermayer [Mon, 14 Jul 2014 20:11:37 +0000 (22:11 +0200)]
Merge commit 'f9900822fc5f0b0c7242ca318290c090bd5d0af0'

* commit 'f9900822fc5f0b0c7242ca318290c090bd5d0af0':
  fate: Use the correct, local path to samples for opus reference files

Conflicts:
tests/fate/opus.mak

See: ad7de82218e9ee2232e53ab49cda85767cf800e5
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoffmpeg: Use av_stream_get_parser() to avoid ABI issues
Michael Niedermayer [Mon, 14 Jul 2014 19:06:58 +0000 (21:06 +0200)]
ffmpeg: Use av_stream_get_parser() to avoid ABI issues

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat: add av_stream_get_parser() to access avformat AVParser
Michael Niedermayer [Mon, 14 Jul 2014 19:03:43 +0000 (21:03 +0200)]
avformat: add av_stream_get_parser() to access avformat AVParser

The AVStream.parser field is considered private and its location cannot be
preserved while preserving also ABI compatibility to libav, as libav added fields
before it.
Some tools like ffmpeg.c access this field though

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agofate: Use the correct, local path to samples for opus reference files
Martin Storsjö [Sat, 12 Jul 2014 18:29:17 +0000 (21:29 +0300)]
fate: Use the correct, local path to samples for opus reference files

This fixes running fate in configs where the samples are located
in a different path on the target.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoavformat/movenc: dont mark multichannel as mono tracks as containing the center channel
Michael Niedermayer [Mon, 14 Jul 2014 14:51:28 +0000 (16:51 +0200)]
avformat/movenc: dont mark multichannel as mono tracks as containing the center channel

Fixes Ticket3727

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoRELEASE_NOTES: fill in lib versions
Michael Niedermayer [Mon, 14 Jul 2014 14:04:43 +0000 (16:04 +0200)]
RELEASE_NOTES: fill in lib versions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/wavdec: add basic sanity check for the sample count
Michael Niedermayer [Mon, 14 Jul 2014 12:52:18 +0000 (14:52 +0200)]
avformat/wavdec: add basic sanity check for the sample count

Fixes Ticket3708

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoAdd a release note for 2.3
Timothy Gu [Mon, 14 Jul 2014 02:04:57 +0000 (19:04 -0700)]
Add a release note for 2.3

Based on a patch by Clément Bœsch <u@pkh.me>.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodoc/filters: fixing typo
Muhammad Faiz [Mon, 14 Jul 2014 07:13:59 +0000 (14:13 +0700)]
doc/filters: fixing typo

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/asfdec: Try to improve skip case
Michael Niedermayer [Sun, 13 Jul 2014 23:16:08 +0000 (01:16 +0200)]
avformat/asfdec: Try to improve skip case

Fixes Ticket3761

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310'
Michael Niedermayer [Sun, 13 Jul 2014 19:37:47 +0000 (21:37 +0200)]
Merge commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310'

* commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310':
  x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection

Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputilenc_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78'
Michael Niedermayer [Sun, 13 Jul 2014 19:08:28 +0000 (21:08 +0200)]
Merge commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78'

* commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78':
  ppc: dsputil: Coalesce all init files

Conflicts:
libavcodec/ppc/dsputil_altivec.h
libavcodec/ppc/dsputil_ppc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavf: add samba protocol via libsmbclient
Lukasz Marek [Sat, 12 Jul 2014 22:54:23 +0000 (00:54 +0200)]
lavf: add samba protocol via libsmbclient

Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMAINTAINERS: Add ubitux for text subtitles
Michael Niedermayer [Sun, 13 Jul 2014 17:29:23 +0000 (19:29 +0200)]
MAINTAINERS: Add ubitux for text subtitles

ubitux maintains them. It seems it was forgotten to update MAINTAINERs though

See: Re: [FFmpeg-devel] [PATCH] MAINTAINERS: add Subtitle maintainer
     Message-ID: <20140713120546.GC26262@leki>

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoAVFormat: LRC demuxer and muxer
Star Brilliant [Wed, 9 Jul 2014 06:24:05 +0000 (14:24 +0800)]
AVFormat: LRC demuxer and muxer

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agox86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
Diego Biurrun [Tue, 8 Jul 2014 15:59:31 +0000 (08:59 -0700)]
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection

The remaining dsputil bits are encoding-specific anyway.

9 years agoarmv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
Ben Avison [Thu, 10 Jul 2014 23:14:28 +0000 (00:14 +0100)]
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)

The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.

In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.

I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:

                  Before          After
                  Mean   StdDev   Mean   StdDev  Confidence  Change
aac_decode_frame  2368.1 35.8     2117.2 35.3    100.0%      +11.8%
ff_imdct_half_*   457.5  22.4     251.2  16.2    100.0%      +82.1%

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agox86/hevc_deblock: add ff_hevc_[hv]_loop_filter_luma_{8, 10}_sse2
James Almer [Sun, 13 Jul 2014 06:00:50 +0000 (03:00 -0300)]
x86/hevc_deblock: add ff_hevc_[hv]_loop_filter_luma_{8, 10}_sse2

Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Kieran Kunhya <kierank@obe.tv>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoh264: fix direct temporal mvs for bottom-field-first poc order.
Ronald S. Bultje [Sat, 12 Jul 2014 22:38:13 +0000 (18:38 -0400)]
h264: fix direct temporal mvs for bottom-field-first poc order.

Fixes http://forum.doom9.org/showthread.php?t=170867.
Fixes: corrupt-1677.mkv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoppc: dsputil: Coalesce all init files
Diego Biurrun [Tue, 8 Jul 2014 15:36:32 +0000 (08:36 -0700)]
ppc: dsputil: Coalesce all init files

9 years agoswscale/x86/rgb2rgb_template: fix 1 byte overread in yuyvtoyuv420 and uyvytoyuv420
Michael Niedermayer [Sun, 13 Jul 2014 03:24:50 +0000 (05:24 +0200)]
swscale/x86/rgb2rgb_template: fix 1 byte overread in yuyvtoyuv420 and uyvytoyuv420

might fix ticket 3410

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/asfdec: dvrms timestamps are pts not dts
Michael Niedermayer [Sun, 13 Jul 2014 01:23:54 +0000 (03:23 +0200)]
avformat/asfdec: dvrms timestamps are pts not dts

Should fix Ticket3328

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/utils: do not wait for packets from discarded streams for genpts
Michael Niedermayer [Sat, 12 Jul 2014 23:07:59 +0000 (01:07 +0200)]
avformat/utils: do not wait for packets from discarded streams for genpts

Fixes long loop
Fixes Ticket3208

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoconfigure: fix alphabetical order of previous commit
Michael Niedermayer [Sat, 12 Jul 2014 21:24:16 +0000 (23:24 +0200)]
configure: fix alphabetical order of previous commit

Was requested in review

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoAdd -Wformat and -Werror=format-security compiler flags
Andreas Cadhalpun [Sat, 12 Jul 2014 20:11:56 +0000 (22:11 +0200)]
Add -Wformat and -Werror=format-security compiler flags

These are part of the hardening flags used by Debian.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agofix spelling errors
Andreas Cadhalpun [Sat, 12 Jul 2014 20:10:53 +0000 (22:10 +0200)]
fix spelling errors

Reviewed-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavformat/mpegts: dont clear programs during probing
Michael Niedermayer [Sat, 12 Jul 2014 19:49:15 +0000 (21:49 +0200)]
avformat/mpegts: dont clear programs during probing

Fixes Ticket 3763

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>