platform/upstream/libav.git
10 years agoriff: Support FLIC FourCC
Paul B Mahol [Thu, 3 Apr 2014 14:15:09 +0000 (16:15 +0200)]
riff: Support FLIC FourCC

10 years agoriff: add escape130 FourCC
Michael Niedermayer [Thu, 3 Apr 2014 14:12:55 +0000 (16:12 +0200)]
riff: add escape130 FourCC

10 years agoriff: support 'aas4' FourCC
Piotr Bandurski [Thu, 3 Apr 2014 13:39:40 +0000 (15:39 +0200)]
riff: support 'aas4' FourCC

10 years agoriff: add "YUV8" FourCC
Piotr Bandurski [Thu, 3 Apr 2014 13:37:20 +0000 (15:37 +0200)]
riff: add "YUV8" FourCC

Sample-Id: MAILTEST.AVI

10 years agoriff: Add "S263" FourCC
Piotr Bandurski [Thu, 3 Apr 2014 13:34:44 +0000 (15:34 +0200)]
riff: Add "S263" FourCC

10 years agoriff: Support XMPG as mpeg1
Michael Niedermayer [Thu, 3 Apr 2014 13:31:46 +0000 (15:31 +0200)]
riff: Support XMPG as mpeg1

10 years agoriff: support BW10 as mpeg1
Michael Niedermayer [Thu, 3 Apr 2014 13:10:45 +0000 (15:10 +0200)]
riff: support BW10 as mpeg1

10 years agoriff: Add SLDV FourCC for dvvideo
Piotr Bandurski [Thu, 3 Apr 2014 13:09:23 +0000 (15:09 +0200)]
riff: Add SLDV FourCC for dvvideo

10 years agoriff: Support NTSC forward dvcpro videos
Carl Eugen Hoyos [Thu, 3 Apr 2014 13:08:40 +0000 (15:08 +0200)]
riff: Support NTSC forward dvcpro videos

PAL looks incorrect.

10 years agoriff: add dvis/pdvc FourCCs
Piotr Bandurski [Thu, 3 Apr 2014 13:08:04 +0000 (15:08 +0200)]
riff: add dvis/pdvc FourCCs

10 years agoriff: add "GXVE" FourCC for WMV2
Piotr Bandurski [Fri, 9 Nov 2012 23:24:09 +0000 (00:24 +0100)]
riff: add "GXVE" FourCC for WMV2

Sample-Id: vivd.avi

10 years agoriff: add PLV1 fourcc to mpeg4
Compn [Thu, 3 Apr 2014 10:58:13 +0000 (12:58 +0200)]
riff: add PLV1 fourcc to mpeg4

Sample-Id: york-water-meteor.avi

10 years agoriff: Support decoding ASP variant from QNAP Systems
Carl Eugen Hoyos [Thu, 3 Apr 2014 10:57:16 +0000 (12:57 +0200)]
riff: Support decoding ASP variant from QNAP Systems

10 years agoriff: add "SM4V" FourCC
Piotr Bandurski [Thu, 3 Apr 2014 10:56:33 +0000 (12:56 +0200)]
riff: add "SM4V" FourCC

10 years agoriff: add DYM4 mpeg4 fourcc
Compn [Tue, 19 Nov 2013 19:24:25 +0000 (14:24 -0500)]
riff: add DYM4 mpeg4 fourcc

10 years agoriff: add DM4V FourCC
Piotr Bandurski [Thu, 15 Aug 2013 12:12:47 +0000 (14:12 +0200)]
riff: add DM4V FourCC

10 years agoriff: add G264 to mpeg4, only decodes keyframes
Compn [Fri, 15 Nov 2013 14:45:08 +0000 (09:45 -0500)]
riff: add G264 to mpeg4, only decodes keyframes

10 years agoriff: add "lsvm" FourCC for H263.
Piotr Bandurski [Mon, 5 Nov 2012 16:43:01 +0000 (17:43 +0100)]
riff: add "lsvm" FourCC for H263.

10 years agoriff: Support H.264 fourcc UMSV
Carl Eugen Hoyos [Mon, 14 Oct 2013 14:29:58 +0000 (16:29 +0200)]
riff: Support H.264 fourcc UMSV

10 years agoriff: add FourCC for GeoVision cameras
Carl Eugen Hoyos [Thu, 3 Apr 2014 10:46:46 +0000 (12:46 +0200)]
riff: add FourCC for GeoVision cameras

10 years agoriff: Add V264 for H264 in CCTV recordings
Carl Eugen Hoyos [Sat, 1 Dec 2012 23:43:39 +0000 (00:43 +0100)]
riff: Add V264 for H264 in CCTV recordings

10 years agoriff: add H264 from QNAP Systems
Carl Eugen Hoyos [Thu, 3 Apr 2014 10:00:05 +0000 (12:00 +0200)]
riff: add H264 from QNAP Systems

10 years agoriff: add SMV2 FourCC for H264
Piotr Bandurski [Sat, 10 Nov 2012 01:11:49 +0000 (02:11 +0100)]
riff: add SMV2 FourCC for H264

Sample-Id: smv2.avi

10 years agoriff: add ISMP/timecode tag
Clément Bœsch [Thu, 31 May 2012 07:31:04 +0000 (09:31 +0200)]
riff: add ISMP/timecode tag

10 years agoriff: Add ITRK tag
James Almer [Thu, 18 Jul 2013 08:44:40 +0000 (05:44 -0300)]
riff: Add ITRK tag

Some players, like foobar2000 or modern versions of WMP, create WAV
files using the ITRK tag for track instead of IPRT

10 years agoisom: add some BOXX tags
Piotr Bandurski [Thu, 3 Apr 2014 08:04:31 +0000 (10:04 +0200)]
isom: add some BOXX tags

10 years agoisom: add 'flic' tag
Reimar Döffinger [Thu, 3 Apr 2014 07:59:30 +0000 (09:59 +0200)]
isom: add 'flic' tag

10 years agoisom: add 'm1v ' tag
Carl Eugen Hoyos [Thu, 3 Apr 2014 07:55:32 +0000 (09:55 +0200)]
isom: add 'm1v ' tag

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agomxf: Remove typo
Luca Barbato [Thu, 3 Apr 2014 13:52:13 +0000 (13:52 +0000)]
mxf: Remove typo

Reported-By: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agolog: Unbreak windows support
Luca Barbato [Thu, 3 Apr 2014 19:56:31 +0000 (19:56 +0000)]
log: Unbreak windows support

Add the missing define.

10 years agolog: Do not assume the TERM variable is always set
Luca Barbato [Thu, 3 Apr 2014 14:29:34 +0000 (14:29 +0000)]
log: Do not assume the TERM variable is always set

10 years agolog: Document AV_LOG_C usage
Luca Barbato [Thu, 3 Apr 2014 13:51:48 +0000 (13:51 +0000)]
log: Document AV_LOG_C usage

And move outside the wrong doxygen group.

10 years agolog: Remove undefined behaviour
Luca Barbato [Thu, 3 Apr 2014 13:51:47 +0000 (13:51 +0000)]
log: Remove undefined behaviour

10 years agolog: Support for 256color terminals
Luca Barbato [Fri, 26 Apr 2013 13:12:05 +0000 (15:12 +0200)]
log: Support for 256color terminals

And provide extended coloring capabilities for debugging.
The default colors do not change in 256 more to keep
supporting people using Black on White, White on Black and
Solarized terminals.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years agodoc: Fit the graph in 80 cols
Luca Barbato [Sun, 30 Mar 2014 17:59:33 +0000 (19:59 +0200)]
doc: Fit the graph in 80 cols

Some man pagers do not reflow the text/graphs on resize
and the graphs did not fit the traditional 80cols due
the pod2man excessive indent.

10 years agovf_settb: rename to settb
Katerina Barone-Adesi [Tue, 1 Apr 2014 14:51:40 +0000 (16:51 +0200)]
vf_settb: rename to settb

An audio version of settb (asettb) will be added to this file.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
10 years agoavi: Improve non-interleaved detection
Michael Niedermayer [Wed, 2 Apr 2014 07:11:10 +0000 (09:11 +0200)]
avi: Improve non-interleaved detection

Additional fixes by Nigel Touati-Evans <nigel.touatievans@gmail.com>.

Check the index for streams with a time drift of 2s or a buffer drift
of 64MB.

Bug-Id: 666
CC: libav-stable@libav.org
Sample-Id: yet-another-broken-interleaved-avi.avi

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
10 years agoswscale: add endianness conversion for AV_PIX_FMT_BGRA64|RGBA64
Janne Grunau [Tue, 1 Apr 2014 22:39:58 +0000 (00:39 +0200)]
swscale: add endianness conversion for AV_PIX_FMT_BGRA64|RGBA64

10 years agovc1dec: fix a possible unitialized variable warning
Vittorio Giovara [Mon, 31 Mar 2014 23:45:28 +0000 (01:45 +0200)]
vc1dec: fix a possible unitialized variable warning

10 years agolavf: add supported extension to avi and mov demuxers
Marc-Antoine Arnaud [Tue, 1 Apr 2014 17:07:50 +0000 (17:07 +0000)]
lavf: add supported extension to avi and mov demuxers

10 years agoMore correct printf format specifiers
Diego Biurrun [Tue, 1 Apr 2014 18:19:59 +0000 (18:19 +0000)]
More correct printf format specifiers

This avoids compiler warnings about argument and specifier type mismatch.

10 years agolavu: add missing formats to av_pix_fmt_swap_endianness
Janne Grunau [Tue, 1 Apr 2014 21:11:59 +0000 (21:11 +0000)]
lavu: add missing formats to av_pix_fmt_swap_endianness

10 years agoVP3: K&R formatting cosmetics
Vittorio Giovara [Mon, 31 Mar 2014 16:12:58 +0000 (18:12 +0200)]
VP3: K&R formatting cosmetics

10 years agofate: Explicitly use gray16le in fate-sgi-gray16
Martin Storsjö [Tue, 1 Apr 2014 06:50:09 +0000 (09:50 +0300)]
fate: Explicitly use gray16le in fate-sgi-gray16

This fixes the test on big endian.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agofate: add SGI tests
Vittorio Giovara [Wed, 12 Mar 2014 23:29:23 +0000 (00:29 +0100)]
fate: add SGI tests

10 years agosgi: decode 16bit RLE images
Vittorio Giovara [Thu, 13 Mar 2014 14:14:37 +0000 (15:14 +0100)]
sgi: decode 16bit RLE images

10 years agosgi: encode images with 4 channels at 8 and 16 bits
Vittorio Giovara [Thu, 13 Mar 2014 00:19:12 +0000 (01:19 +0100)]
sgi: encode images with 4 channels at 8 and 16 bits

10 years agosgi: decode images with 4 channels at 8 and 16 bits
Carl Eugen Hoyos [Sat, 14 Jan 2012 00:14:51 +0000 (01:14 +0100)]
sgi: decode images with 4 channels at 8 and 16 bits

10 years agosgi: remove redundant argument from read_uncompressed_sgi()
Paul B Mahol [Sun, 8 Jul 2012 23:28:16 +0000 (23:28 +0000)]
sgi: remove redundant argument from read_uncompressed_sgi()

10 years agosgi: set the row boundary to the correct value
Michael Niedermayer [Sun, 12 Aug 2012 03:31:14 +0000 (05:31 +0200)]
sgi: set the row boundary to the correct value

10 years agosgi: fix end of line boundary detection
Michael Niedermayer [Sun, 12 Aug 2012 03:32:07 +0000 (05:32 +0200)]
sgi: fix end of line boundary detection

10 years agosgi: check maximum supported resolution
Piotr Bandurski [Thu, 31 May 2012 18:10:04 +0000 (20:10 +0200)]
sgi: check maximum supported resolution

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agosgi: K&R formatting cosmetics
Vittorio Giovara [Thu, 13 Mar 2014 14:20:00 +0000 (15:20 +0100)]
sgi: K&R formatting cosmetics

10 years agocodec_desc: set lossless attribute for SGI and DPX
Paul B Mahol [Fri, 1 Mar 2013 15:22:02 +0000 (15:22 +0000)]
codec_desc: set lossless attribute for SGI and DPX

10 years agofate: add exr tests
Paul B Mahol [Sun, 24 Feb 2013 21:51:31 +0000 (21:51 +0000)]
fate: add exr tests

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agoOpenEXR decoder
Jimmy Christensen [Fri, 6 Apr 2012 06:02:25 +0000 (06:02 +0000)]
OpenEXR decoder

Additional fixes and enhancements by Vittorio Giovara, Gonzalo Garramuno,
Nicolas George, Paul B Mahol and Michael Niedermayer.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agodxva2: Directly use AVFrames
Michael Niedermayer [Mon, 31 Mar 2014 14:24:10 +0000 (14:24 +0000)]
dxva2: Directly use AVFrames

The assumption of (MPEG) Picture and H264Picture layout matching might
not hold true in the future.

Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com>
10 years agomov: Unbreak sbtl writing
Michael Niedermayer [Sat, 29 Mar 2014 14:56:03 +0000 (15:56 +0100)]
mov: Unbreak sbtl writing

10 years agovc1dec: improve hwaccel #ifdefs
Rémi Denis-Courmont [Tue, 25 Mar 2014 20:19:58 +0000 (20:19 +0000)]
vc1dec: improve hwaccel #ifdefs

10 years agoh263: improve hwaccel #ifdefs
Rémi Denis-Courmont [Tue, 25 Mar 2014 20:19:57 +0000 (20:19 +0000)]
h263: improve hwaccel #ifdefs

10 years agolibx265: Use the repeat headers flag when not using global headers
Marcus Gustafsson [Tue, 25 Mar 2014 20:51:21 +0000 (21:51 +0100)]
libx265: Use the repeat headers flag when not using global headers

This allows proper muxing and seeking in things like MPEG-TS, by
placing headers by random access points.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
10 years agolibx265: Bump version requirement
Derek Buitenhuis [Sun, 30 Mar 2014 14:58:14 +0000 (15:58 +0100)]
libx265: Bump version requirement

Build 13 has a crucial fix which makes x265_encode_headers work
as its always been documented.

Previous to this, the check was incorrect.

Also allows for use of the repeat headers flag.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
10 years agolibmp3lame: add ABR support
Timothy Gu [Sat, 2 Nov 2013 02:43:24 +0000 (19:43 -0700)]
libmp3lame: add ABR support

10 years agolibmp3lame: add comments about CBR/VBR modes
Timothy Gu [Thu, 24 Oct 2013 03:57:36 +0000 (20:57 -0700)]
libmp3lame: add comments about CBR/VBR modes

10 years agolibmp3lame: allow joint stereo to be disabled
Paul B Mahol [Sat, 30 Mar 2013 22:15:50 +0000 (22:15 +0000)]
libmp3lame: allow joint stereo to be disabled

10 years agomov: call mov_rewrite_dvd_sub_extradata() after parsing dimensions from tkhd
Michael Niedermayer [Thu, 20 Mar 2014 07:05:37 +0000 (07:05 +0000)]
mov: call mov_rewrite_dvd_sub_extradata() after parsing dimensions from tkhd

This also moves mov_rewrite_dvd_sub_extradata() to mov.c.

Sample-Id: NeroRecodeSample.mp4

10 years agomov: fill in subtitle dimensions after parsing tkhd
Michael Niedermayer [Thu, 20 Mar 2014 07:05:36 +0000 (07:05 +0000)]
mov: fill in subtitle dimensions after parsing tkhd

Sample-Id: NeroRecodeSample.mp4

10 years agoisom: only write the size if its non zero in mov_rewrite_dvd_sub_extradata()
Michael Niedermayer [Thu, 20 Mar 2014 07:05:35 +0000 (07:05 +0000)]
isom: only write the size if its non zero in mov_rewrite_dvd_sub_extradata()

Sample-Id: NeroRecodeSample.mp4

10 years agoisom: Simplify mov_rewrite_dvd_sub_extradata()
Michael Niedermayer [Thu, 20 Mar 2014 07:05:34 +0000 (07:05 +0000)]
isom: Simplify mov_rewrite_dvd_sub_extradata()

This avoids the 2nd buffer and fixes the palette truncated check

10 years agofate: Convert the paletted output in the brenderpix tests to rgb24
Martin Storsjö [Sun, 30 Mar 2014 18:27:58 +0000 (18:27 +0000)]
fate: Convert the paletted output in the brenderpix tests to rgb24

This makes the output consistent on big-endian systems.

10 years agoavconv: make the ASCII flow charts narrower to fit onto TTY
Timothy Gu [Fri, 7 Feb 2014 00:20:58 +0000 (16:20 -0800)]
avconv: make the ASCII flow charts narrower to fit onto TTY

These charts in man page are currently destroyed.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agodnxhdenc: return meaningful return codes
Timothy Gu [Sat, 29 Mar 2014 20:59:46 +0000 (20:59 +0000)]
dnxhdenc: return meaningful return codes

10 years agoavconv_opt: fix avio_open2() return code check
Timothy Gu [Sat, 29 Mar 2014 20:59:45 +0000 (20:59 +0000)]
avconv_opt: fix avio_open2() return code check

avio_open2() only return < 0 when error.

10 years agogolomb: Fix the implementation of get_se_golomb_long
Martin Storsjö [Sat, 29 Mar 2014 10:35:11 +0000 (12:35 +0200)]
golomb: Fix the implementation of get_se_golomb_long

This was only used in hevc muxing code so far.

This makes the return values match what get_se_golomb returns for
the same bitstream reader instances.

The logic for producing a signed golomb code out of an unsigned one
was based on the corresponding code in get_se_golomb, which operated
directly on the bitstream reader buffer - not on the equivalent
return value from get_ue_golomb.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agovp8: K&R formatting cosmetics
Vittorio Giovara [Fri, 28 Mar 2014 00:13:54 +0000 (01:13 +0100)]
vp8: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
10 years agomovenc: Add dvd subtitle support
John Stebbins [Tue, 18 Mar 2014 14:50:25 +0000 (08:50 -0600)]
movenc: Add dvd subtitle support

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years agocmdutils: Mark exit_program as av_noreturn
Luca Barbato [Thu, 27 Mar 2014 23:40:43 +0000 (00:40 +0100)]
cmdutils: Mark exit_program as av_noreturn

10 years agofate: add a bmpparser test
Vittorio Giovara [Mon, 17 Mar 2014 14:30:05 +0000 (15:30 +0100)]
fate: add a bmpparser test

10 years agobmp: add a standalone parser
Paul B Mahol [Sun, 5 Aug 2012 23:46:41 +0000 (23:46 +0000)]
bmp: add a standalone parser

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agofate: add XBM tests
Vittorio Giovara [Mon, 17 Mar 2014 00:24:30 +0000 (01:24 +0100)]
fate: add XBM tests

10 years agoX-Bitmap decoder
Vittorio Giovara [Sat, 22 Mar 2014 04:33:27 +0000 (05:33 +0100)]
X-Bitmap decoder

10 years agoxbm: use av_frame_free on close
Vittorio Giovara [Mon, 17 Mar 2014 00:20:53 +0000 (01:20 +0100)]
xbm: use av_frame_free on close

10 years agofate: add PAF audio and video tests
Paul B Mahol [Sun, 8 Jul 2012 22:16:12 +0000 (22:16 +0000)]
fate: add PAF audio and video tests

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agoPAF demuxer and decoder
Paul B Mahol [Fri, 21 Mar 2014 16:28:47 +0000 (16:28 +0000)]
PAF demuxer and decoder

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years agolavc: restore copy_block{4,16} functions
Vittorio Giovara [Mon, 10 Mar 2014 16:05:12 +0000 (17:05 +0100)]
lavc: restore copy_block{4,16} functions

They were removed in 9e31729d692f1e721b7ed1a3a0f51b68c064d68f.

10 years agofate: add BRender PIX tests
Vittorio Giovara [Wed, 26 Mar 2014 23:52:13 +0000 (00:52 +0100)]
fate: add BRender PIX tests

10 years agoBRender PIX image decoder
Aleksi Nurmi [Wed, 26 Mar 2014 23:45:15 +0000 (00:45 +0100)]
BRender PIX image decoder

Further enhancements by Vittorio Giovara and Paul B Mahol.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years agoarm: build: Maintain decoder objects separate from infrastructure objects
Diego Biurrun [Thu, 27 Mar 2014 09:56:07 +0000 (10:56 +0100)]
arm: build: Maintain decoder objects separate from infrastructure objects

10 years agofate: add Alias PIX tests
Vittorio Giovara [Thu, 20 Mar 2014 02:12:18 +0000 (03:12 +0100)]
fate: add Alias PIX tests

10 years agoAlias PIX image encoder and decoder
Vittorio Giovara [Thu, 20 Mar 2014 00:15:25 +0000 (01:15 +0100)]
Alias PIX image encoder and decoder

10 years agotruehd: add hand-scheduled ARM asm version of ff_mlp_pack_output.
Ben Avison [Thu, 20 Mar 2014 18:58:40 +0000 (18:58 +0000)]
truehd: add hand-scheduled ARM asm version of ff_mlp_pack_output.

Profiling results for overall decode and the output_data function in
particular are as follows:

              Before          After
              Mean   StdDev   Mean   StdDev  Confidence  Change
6:2 total     339.6  15.1     329.3  16.0    95.8%       +3.1%  (insignificant)
6:2 function  24.6   6.0      9.9    3.1     100.0%      +148.5%
8:2 total     324.5  15.5     323.6  14.3    15.2%       +0.3%  (insignificant)
8:2 function  20.4   3.9      9.9    3.4     100.0%      +104.7%
6:6 total     572.8  20.6     539.9  24.2    100.0%      +6.1%
6:6 function  54.5   5.6      16.0   3.8     100.0%      +240.9%
8:8 total     741.5  21.2     702.5  18.5    100.0%      +5.6%
8:8 function  63.9   7.6      18.4   4.8     100.0%      +247.3%

The assembly version has also been tested with a fuzz tester to ensure that
any combinations of inputs not exercised by my available test streams still
generate mathematically identical results to the C version.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agotruehd: break out part of output_data into platform-specific callback.
Ben Avison [Thu, 20 Mar 2014 18:58:39 +0000 (18:58 +0000)]
truehd: break out part of output_data into platform-specific callback.

Verified with profiling that this doesn't have a measurable effect upon
overall performance.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agotruehd: tune VLC decoding for ARM.
Ben Avison [Thu, 20 Mar 2014 18:58:38 +0000 (18:58 +0000)]
truehd: tune VLC decoding for ARM.

Profiling on a Raspberry Pi revealed the best performance to correspond
with VLC_BITS = 5. Results for overall audio decode and the get_vlc2 function
in particular are as follows:

              Before          After
              Mean   StdDev   Mean   StdDev  Confidence  Change
6:2 total     348.8  20.1     339.6  15.1    88.8%       +2.7%  (insignificant)
6:2 function  38.1   8.1      26.4   4.1     100.0%      +44.5%
8:2 total     339.1  15.4     324.5  15.5    99.4%       +4.5%
8:2 function  33.8   7.0      27.3   5.6     99.7%       +23.6%
6:6 total     604.6  20.8     572.8  20.6    100.0%      +5.6%
6:6 function  95.8   8.4      68.9   8.2     100.0%      +39.1%
8:8 total     766.4  17.6     741.5  21.2    100.0%      +3.4%
8:8 function  106.0  11.4     86.1   9.9     100.0%      +23.1%

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agotruehd: add hand-scheduled ARM asm version of ff_mlp_rematrix_channel.
Ben Avison [Thu, 20 Mar 2014 18:58:37 +0000 (18:58 +0000)]
truehd: add hand-scheduled ARM asm version of ff_mlp_rematrix_channel.

Profiling results for overall audio decode and the rematrix_channels function
in particular are as follows:

              Before          After
              Mean   StdDev   Mean   StdDev  Confidence  Change
6:2 total     370.8  17.0     348.8  20.1    99.9%       +6.3%
6:2 function  46.4   8.4      45.8   6.6     18.0%       +1.2%  (insignificant)
8:2 total     343.2  19.0     339.1  15.4    54.7%       +1.2%  (insignificant)
8:2 function  38.9   3.9      40.2   6.9     52.4%       -3.2%  (insignificant)
6:6 total     658.4  15.7     604.6  20.8    100.0%      +8.9%
6:6 function  109.0  8.7      59.5   5.4     100.0%      +83.3%
8:8 total     896.2  24.5     766.4  17.6    100.0%      +16.9%
8:8 function  223.4  12.8     93.8   5.0     100.0%      +138.3%

The assembly version has also been tested with a fuzz tester to ensure that
any combinations of inputs not exercised by my available test streams still
generate mathematically identical results to the C version.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agotruehd: break out part of rematrix_channels into platform-specific callback.
Ben Avison [Thu, 20 Mar 2014 18:58:36 +0000 (18:58 +0000)]
truehd: break out part of rematrix_channels into platform-specific callback.

Verified with profiling that this doesn't have a measurable effect upon
overall performance.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agotruehd: add hand-scheduled ARM asm version of mlp_filter_channel.
Ben Avison [Thu, 20 Mar 2014 18:58:35 +0000 (18:58 +0000)]
truehd: add hand-scheduled ARM asm version of mlp_filter_channel.

Profiling results for overall audio decode and the mlp_filter_channel(_arm)
function in particular are as follows:

              Before          After
              Mean   StdDev   Mean   StdDev  Confidence  Change
6:2 total     380.4  22.0     370.8  17.0    87.4%       +2.6%  (insignificant)
6:2 function  60.7   7.2      36.6   8.1     100.0%      +65.8%
8:2 total     357.0  17.5     343.2  19.0    97.8%       +4.0%  (insignificant)
8:2 function  60.3   8.8      37.3   3.8     100.0%      +61.8%
6:6 total     717.2  23.2     658.4  15.7    100.0%      +8.9%
6:6 function  140.4  12.9     81.5   9.2     100.0%      +72.4%
8:8 total     981.9  16.2     896.2  24.5    100.0%      +9.6%
8:8 function  193.4  15.0     103.3  11.5    100.0%      +87.2%

Experiments with adding preload instructions to this function yielded no
useful benefit, so these have not been included.

The assembly version has also been tested with a fuzz tester to ensure that
any combinations of inputs not exercised by my available test streams still
generate mathematically identical results to the C version.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agox86: hpeldsp: Keep all rnd_template instantiations in hpeldsp_init
Diego Biurrun [Wed, 29 Jan 2014 11:49:24 +0000 (12:49 +0100)]
x86: hpeldsp: Keep all rnd_template instantiations in hpeldsp_init

There is no point in having a separate file just for the instantiation
that provides the public functions.

10 years agohpeldsp_template: Move content to hpeldsp
Diego Biurrun [Fri, 10 Jan 2014 14:01:04 +0000 (15:01 +0100)]
hpeldsp_template: Move content to hpeldsp

There is no point in having this separate; it is not used as a template.

10 years agohpeldsp_template: Drop av_unused attribute from *_no_rnd_pixels16_8_c functions
Diego Biurrun [Fri, 10 Jan 2014 15:37:23 +0000 (16:37 +0100)]
hpeldsp_template: Drop av_unused attribute from *_no_rnd_pixels16_8_c functions

10 years agodsputil: Move draw_edges and clear_block* out of dsputil_template
Diego Biurrun [Tue, 7 Jan 2014 23:43:09 +0000 (00:43 +0100)]
dsputil: Move draw_edges and clear_block* out of dsputil_template

The functions are not used templatized.