OSDN Git Service
Michael Niedermayer [Tue, 4 Mar 2014 02:41:45 +0000 (03:41 +0100)]
Merge remote-tracking branch 'lukaszmluki/master'
* lukaszmluki/master:
lavd/avdevice: add device iterators
lavd: add categories to device implementations
lavu/log: add device categories
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Tue, 4 Mar 2014 01:47:12 +0000 (02:47 +0100)]
avcodec/h263dec: Workaround H263 end padding bug
Fixes: H263PaddingBugFixVID_6647.MOV
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Lukasz Marek [Sat, 22 Feb 2014 22:32:55 +0000 (23:32 +0100)]
lavd/avdevice: add device iterators
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Lukasz Marek [Sat, 22 Feb 2014 22:32:51 +0000 (23:32 +0100)]
lavd: add categories to device implementations
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Lukasz Marek [Sat, 22 Feb 2014 22:32:45 +0000 (23:32 +0100)]
lavu/log: add device categories
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
wm4 [Sun, 2 Mar 2014 21:36:42 +0000 (22:36 +0100)]
avformat/microdvd: export the declared frame rate
MicroDVD files are normally frame-based (i.e. there are no absolute
timestamps), but can have an optional frame rate header. If this
header is missing, the timestamps depend on the frame rate of the
video they were created for.
The demuxer will use a fallback frame rate if it's missing from the
header. Currently, applications using libavformat can't know whether
the time base is based on the fallback value, or if a frame rate
header was present.
This commit introduces a subfps AVOption for MicroDVD, and the
demuxer sets it if and only if a frame rate header was present.
Signed-off-by: Clément Bœsch <u@pkh.me>
wm4 [Sun, 2 Mar 2014 21:36:41 +0000 (22:36 +0100)]
avformat/microdvd: skip BOM properly
The BOM is already skipped in the probe function, but not the header
read function. This could cause the header to be misparsed, such as
not interpreting the FPS line.
Michael Niedermayer [Mon, 3 Mar 2014 19:45:41 +0000 (20:45 +0100)]
ffmpeg: dont try to run the subtitle encoder on non subtitle streams
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Mon, 3 Mar 2014 16:04:57 +0000 (17:04 +0100)]
avformat/httpauth: add comment about "" and algorithm
Suggested-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Willy Aubry [Wed, 5 Feb 2014 13:59:00 +0000 (14:59 +0100)]
avformat/HLS: modified EXT-X-MEDIA-SEQUENCE header in order to follow the HLS standard
When using the wrap option the EXT-X-MEDIA-SEQUENCE header of the playlist file was reset instead of being incremented.
It is now incremented by one for every media URI removed from the playlist file as the standard states.
Signed-off-by: Willy Aubry <waubry@viotech.net>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Jan Ekström [Sat, 15 Feb 2014 06:58:14 +0000 (01:58 -0500)]
libutvideoenc: Add support for the new BT.709 FourCCs for YCbCr
With cli usage the decoder might have not set the colorspace during
encoder init, manual colorspace override might be needed in such
cases.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
This applies commit
5de64bb3 (the source of the above commit message)
to libutvideoenc as well.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Mon, 3 Mar 2014 00:55:18 +0000 (01:55 +0100)]
avformat/utils: detect MPEG streams with faulty DTS and discard affected DTS
Fixes issue2.ts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 20:44:44 +0000 (21:44 +0100)]
Merge commit '
5c9c305d14730faf2af206e5d519df4948de0ed2'
* commit '
5c9c305d14730faf2af206e5d519df4948de0ed2':
ass: K&R formatting cosmetics
Conflicts:
libavformat/assdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 20:17:48 +0000 (21:17 +0100)]
avcodec/hevcpred_template: also initialize top[-1] for constrained intra prediction
Fixes out of array read
Fixes:
387713a12dc5cfa27fcb4178084ce1ea-asan_stack-oob_131176a_1182_cov_3861068719_CAINIT_C_SHARP_3.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 14:18:09 +0000 (15:18 +0100)]
avcodec/g2meet: also reset local got_header when reseting the context got_header
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 14:16:37 +0000 (15:16 +0100)]
avcodec/g2meet: fix error returns
Fixes out of array accesses
This should not affect any release
Fixes:
8ab69af9e5a7a7e20fe04cdd25c0d6e7-asan_heap-oob_e72b82_5505_cov_2278389485_g2m4.wmv
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Patrice Clement [Fri, 28 Feb 2014 17:31:29 +0000 (18:31 +0100)]
ass: K&R formatting cosmetics
Michael Niedermayer [Sun, 2 Mar 2014 11:41:10 +0000 (12:41 +0100)]
Revert "mpegts: do not set pts for missing dts in video streams"
This reverts commit
f65afef1df49f53e14c8d4173ff960fff8d44ecb.
If only pts is coded then dts must be equal pts
See Rec. ITU-T H.222.0 (06/2012) / ISO/IEC 13818-1:2013 (E) 2.7.5
Found-by: Baptiste Coudurier
James Almer [Sun, 2 Mar 2014 02:46:27 +0000 (23:46 -0300)]
x86/synth_filter: Revert the switch to float ops with SSE2
This reverts the changes
64672098361361cd15d37e36f747ab44de5b80ca
and
68c3ed936a76c3ff7738f602fa90237ac7e3ce08 did to the SSE2 version,
which generated a hit of about 5 cycles.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 04:02:15 +0000 (05:02 +0100)]
avformat/oggparsevorbis: check packet size before reading new_len from it
Fixes out of array read
Fixes:
34260c7981118fb38fba61809bf4dd5a-asan_heap-oob_93b923_1508_cov_951051643_DivX640x480_oggvorbis.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 03:15:40 +0000 (04:15 +0100)]
avformat/avidec: Use a buffer with sufficient padding in read_gab2_sub()
Fixes out of array read
Fixes:
0ff9841c2a102f06e0d582bfc3376cbd-asan_heap-oob_495589_6836_cov_1763916974_mewmew_ssa.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sun, 2 Mar 2014 00:14:59 +0000 (01:14 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
ituh263: reject b-frame with pp_time = 0
See:
bb01be80462adcf4900c925e25bc644e512a4b7b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
James Almer [Sat, 1 Mar 2014 18:26:50 +0000 (15:26 -0300)]
x86/synth_filter: add synth_filter_avx
Sandy Bridge Win64:
180 cycles on ff_synth_filter_inner_sse2
150 cycles on ff_synth_filter_inner_avx
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 23:18:25 +0000 (00:18 +0100)]
avformat/mp3dec: optimize mp3_seek() for dir < 0
this minimizes the amount of protocol seeks and reading needed in that case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 22:09:40 +0000 (23:09 +0100)]
avformat/aviobuf: optimize sequential backward seeking
This reduces the number of protocol seeks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 21:55:37 +0000 (22:55 +0100)]
avformat/aviobuf: factorize buffer_size out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Keiji Costantini [Sat, 1 Mar 2014 18:17:04 +0000 (18:17 +0000)]
ituh263: reject b-frame with pp_time = 0
Avoid a division by 0 in ff_mpeg4_set_one_direct_mv.
Sample-Id:
00000168-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Michael Niedermayer [Sat, 1 Mar 2014 16:09:12 +0000 (17:09 +0100)]
RELEASE: update for 2.2
Found-by: Timothy
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
James Almer [Sat, 1 Mar 2014 03:32:07 +0000 (00:32 -0300)]
x86/synth_filter: add synth_filter_sse
Build only on x86_32 targets.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Senthilnathan M [Sat, 1 Mar 2014 07:43:51 +0000 (13:13 +0530)]
HLS: Handle the case when hls_list_size=0. Playlist file should contain all the segments. Fixes bug #3376.
Signed-off-by: Senthilnathan M <senthil.codr@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 14:06:32 +0000 (15:06 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
qt-faststart: Add a note about the -movflags +faststart feature
Conflicts:
tools/qt-faststart.c
See:
2574d62d0dd34df762aa2d80c7d6381918a80ed1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 13:39:39 +0000 (14:39 +0100)]
Michael Niedermayer [Sat, 1 Mar 2014 13:32:22 +0000 (14:32 +0100)]
Merge commit '
bb95334c34d0d9abccea370ae25c4765d7764ab8'
* commit '
bb95334c34d0d9abccea370ae25c4765d7764ab8':
qt-faststart: Check offset_count before reading from the moov_atom buffer
Conflicts:
tools/qt-faststart.c
See:
0ea4742341726ebe42c301bc0d6426cfa01dd134
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 13:19:04 +0000 (14:19 +0100)]
Merge commit '
63848854256a024a19435e87d6bc76fffa65e81e'
* commit '
63848854256a024a19435e87d6bc76fffa65e81e':
qt-faststart: Check the ftello() return codes
Conflicts:
tools/qt-faststart.c
See:
4a2297294fa269e05aa2b3fe36b2ea231caa6dca
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 13:10:49 +0000 (14:10 +0100)]
Merge commit '
03c2a66fcff9707f71ffef7e61ce5e3973220d4b'
* commit '
03c2a66fcff9707f71ffef7e61ce5e3973220d4b':
qt-faststart: Fix the signedness of variables keeping the ftello return values
Conflicts:
tools/qt-faststart.c
See:
1838961357e38402be64c0c82a2f08e4e85a0c01
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 12:54:35 +0000 (13:54 +0100)]
Merge commit '
5612244351b2eb3cb4e6225861a0f55aa5d0c475'
* commit '
5612244351b2eb3cb4e6225861a0f55aa5d0c475':
qt-faststart: Check fseeko() return codes
Conflicts:
tools/qt-faststart.c
See:
0de41ead6f9034e0a834abe51028a02aee094990
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 12:47:08 +0000 (13:47 +0100)]
Merge commit '
ea15a9a5d8fa6a71af3101b2af18c4dcac07987f'
* commit '
ea15a9a5d8fa6a71af3101b2af18c4dcac07987f':
qt-faststart: Simplify code by using a MIN() macro
Conflicts:
tools/qt-faststart.c
See:
59003fe7c064e98359cce83b1b727fb1026bdf12
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 12:37:07 +0000 (13:37 +0100)]
Merge commit '
3cbc7ef3d60b6af3617079f24a4f401d83353003'
* commit '
3cbc7ef3d60b6af3617079f24a4f401d83353003':
qt-faststart: Increase the copy buffer size to 64 KB
Conflicts:
tools/qt-faststart.c
See:
f4d9148fe282879b9fcc755767c9c04de9ddbcfa
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 12:26:47 +0000 (13:26 +0100)]
Merge commit '
d1f9563d502037239185c11578cc614bdf0c5870'
* commit '
d1f9563d502037239185c11578cc614bdf0c5870':
pthread_frame: flush all threads on flush, not just the first one
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 12:18:25 +0000 (13:18 +0100)]
Merge commit '
bc6461c2861b7d482a037d3b3e2b44ad48805fa0'
* commit '
bc6461c2861b7d482a037d3b3e2b44ad48805fa0':
af_compand: replace strtok_r() with av_get_token()
Conflicts:
configure
libavfilter/af_compand.c
Not merged as requested by ubitux
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 12:07:36 +0000 (13:07 +0100)]
Merge commit '
fb3b2f5d923a6e19d80f21eb4e081674bceec810'
* commit '
fb3b2f5d923a6e19d80f21eb4e081674bceec810':
configure: Set the thread type after resolving dependencies
Conflicts:
configure
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 11:37:38 +0000 (12:37 +0100)]
Merge commit '
2f02bbcca050936686482453078e83dc25493da0'
* commit '
2f02bbcca050936686482453078e83dc25493da0':
build: Let the ffvhuff decoder/encoder depend on the huffyuv decoder/encoder
Conflicts:
configure
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 11:27:59 +0000 (12:27 +0100)]
Merge commit '
34150be515cd9c43b0b679806b8d01774960af78'
* commit '
34150be515cd9c43b0b679806b8d01774960af78':
build: Let the iac decoder depend on the imc decoder
Conflicts:
configure
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 11:17:51 +0000 (12:17 +0100)]
Merge commit '
8e0cf39faf02536dca08f4fe628a66d1ae022fde'
* commit '
8e0cf39faf02536dca08f4fe628a66d1ae022fde':
build: Let all MJPEG-related decoders depend on the MJPEG decoder
Conflicts:
configure
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 04:11:37 +0000 (05:11 +0100)]
Merge commit '
0a36988e48dd581d29e77f768f987738bdf365f0'
* commit '
0a36988e48dd581d29e77f768f987738bdf365f0':
build: Let AMV decoder depend on the SP5X decoder
Conflicts:
configure
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 04:03:37 +0000 (05:03 +0100)]
Merge commit '
f4bd9fe326ad1315a74206939ae56df93b940a09'
* commit '
f4bd9fe326ad1315a74206939ae56df93b940a09':
h264: fix clang warning about uninitialized variable
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 03:55:41 +0000 (04:55 +0100)]
Merge commit '
17a63ff0cd187b9e50e4a47862750295976853b1'
* commit '
17a63ff0cd187b9e50e4a47862750295976853b1':
h264: update flag name in ff_h264_decode_ref_pic_list_reordering()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 03:50:08 +0000 (04:50 +0100)]
Merge commit '
ee6280ca12696a67535ce2245c77190edc513794'
* commit '
ee6280ca12696a67535ce2245c77190edc513794':
h264: parse two additional constraint flags
Conflicts:
libavcodec/h264_ps.c
See:
9091ba9dfa0901bdce8305cf282c747b0f4c942e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 03:30:53 +0000 (04:30 +0100)]
Merge commit '
e70ab7c1f5005041bba0e4efc1165410f83495b2'
* commit '
e70ab7c1f5005041bba0e4efc1165410f83495b2':
h264: add MVCD to the list of High profiles in SPS
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 02:34:59 +0000 (03:34 +0100)]
update for 2.2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 01:40:19 +0000 (02:40 +0100)]
avcodec/utvideoenc: fix slice_bits size
Fixes assertion failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 00:56:25 +0000 (01:56 +0100)]
avformat/ac3dec: Use avpriv_ac3_parse_header2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 00:47:33 +0000 (01:47 +0100)]
avcodec/ac3_parser: add avpriv_ac3_parse_header2() and use it in libavcodec
The new function has the ability to allocate the structure, allowing it to grow
without needing major bumps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 1 Mar 2014 00:45:49 +0000 (01:45 +0100)]
avcodec/ac3: move new field to the end of AC3HeaderInfo
This structure is used in the interface between libs and thus cannot have
fields added in the middle without major bump
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 22:55:34 +0000 (23:55 +0100)]
avutil/opt: allow max=min=0 for pixel formats
This is neccessary for maintaining ABI compatibility with FFmpeg 2.1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Lou Logan [Tue, 7 Jan 2014 19:59:04 +0000 (10:59 -0900)]
qt-faststart: Add a note about the -movflags +faststart feature
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 28 Feb 2014 10:19:49 +0000 (12:19 +0200)]
qt-faststart: Avoid unintentionally sign extending BE_32
Without this cast, the BE_32() expression is sign extended when
assigned to an uint64_t, since the uint8_t|uint8_t expression
is promoted to an int.
Also avoid undefined behaviour when left shifting an uint8_t
by 24 by casting it to an uint32_t explicitly before shifting.
Based on a patch by Michael Niedermayer.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Thu, 13 Dec 2012 14:07:20 +0000 (15:07 +0100)]
qt-faststart: Check offset_count before reading from the moov_atom buffer
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Wed, 24 Oct 2012 22:39:33 +0000 (00:39 +0200)]
qt-faststart: Check the ftello() return codes
This silences a warning in the coverity static analyzer.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Mon, 29 Oct 2012 21:05:33 +0000 (22:05 +0100)]
qt-faststart: Fix the signedness of variables keeping the ftello return values
These variables are assigned the return values of ftello, which
returns an off_t, which is a signed type. On errors, ftello returns
-1, thus make sure this error return value can be stored properly.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Mon, 22 Oct 2012 20:42:51 +0000 (22:42 +0200)]
qt-faststart: Check fseeko() return codes
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sun, 30 Sep 2012 19:53:26 +0000 (21:53 +0200)]
qt-faststart: Simplify code by using a MIN() macro
qt-faststart doesn't use the normal libav headers at all since
it's supposed to be a completely standalone tool, so we implement
the macro locally in this file.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 28 Feb 2014 09:41:55 +0000 (11:41 +0200)]
qt-faststart: Increase the copy buffer size to 64 KB
Copying data in chunks of 1 KB is a little wasteful.
64 KB should still easily fit on the stack, so there's no need
to allocate it dynamically.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Fri, 28 Feb 2014 21:39:54 +0000 (22:39 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
latm: Always reconfigure if no extradata was set previously
See:
d039b6074ca68da9b6dc88d8bb40056fee9fecb6
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Anton Khirnov [Thu, 27 Feb 2014 20:36:33 +0000 (21:36 +0100)]
pthread_frame: flush all threads on flush, not just the first one
avcodec_flush_buffers() must release all internally held references
according to its documentation, for which all the threads need to be
flushed.
CC:libav-stable@libav.org
Bug-Id: vlc/9665
Anton Khirnov [Wed, 26 Feb 2014 21:37:06 +0000 (22:37 +0100)]
af_compand: replace strtok_r() with av_get_token()
Michael Niedermayer [Fri, 28 Feb 2014 20:52:14 +0000 (21:52 +0100)]
Merge commit '
6e4009d4cdf5927bdaedf58fcfc5e813b14c366b'
* commit '
6e4009d4cdf5927bdaedf58fcfc5e813b14c366b':
arm: dcadsp: implement decode_hf as external NEON asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 20:41:19 +0000 (21:41 +0100)]
Merge commit '
4cb6964244fd6c099383d8b7e99731e72cc844b9'
* commit '
4cb6964244fd6c099383d8b7e99731e72cc844b9':
dcadec: simplify decoding of VQ high frequencies
Conflicts:
configure
libavcodec/dcadec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 20:31:07 +0000 (21:31 +0100)]
avcodec/dcadec: use brackets to ensure that no slow division is used
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 20:29:45 +0000 (21:29 +0100)]
Merge commit '
7686afd049be98d18663682b92d983340fa2c305'
* commit '
7686afd049be98d18663682b92d983340fa2c305':
dca: factorize scaling in inverse ADPCM
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diego Biurrun [Mon, 23 Dec 2013 03:24:53 +0000 (04:24 +0100)]
configure: Set the thread type after resolving dependencies
A threading type might be detected originally, but later disabled
if one of its dependencies is unavailable.
This makes sure that the threading support item in the configure
output is right for setups where w32threads are available but
native atomics aren't.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Thu, 27 Feb 2014 23:02:25 +0000 (15:02 -0800)]
build: Let the ffvhuff decoder/encoder depend on the huffyuv decoder/encoder
Almost all of the code is shared so there is little point in
enabling one decoder/encoder without the other.
Diego Biurrun [Thu, 27 Feb 2014 23:02:24 +0000 (15:02 -0800)]
build: Let the iac decoder depend on the imc decoder
Almost all of the code is shared so there is little point in
enabling one decoder without the other.
Diego Biurrun [Thu, 27 Feb 2014 23:02:23 +0000 (15:02 -0800)]
build: Let all MJPEG-related decoders depend on the MJPEG decoder
These codecs compile all of the MJPEG code anyway, so there is little
point in not enabling the MJPEG decoder directly. This also simplifies
the dependency declarations for the MJPEG codec family.
Diego Biurrun [Thu, 27 Feb 2014 23:02:22 +0000 (15:02 -0800)]
build: Let AMV decoder depend on the SP5X decoder
This codec compiles all of the SP5X code anyway, so there is little
point in not enabling the decoder directly. This also simplifies the
dependency declaration for the AMV decoder.
Michael Niedermayer [Fri, 28 Feb 2014 19:38:12 +0000 (20:38 +0100)]
Merge commit '
08e3ea60ff4059341b74be04a428a38f7c3630b0'
* commit '
08e3ea60ff4059341b74be04a428a38f7c3630b0':
x86: synth filter float: implement SSE2 version
Conflicts:
libavcodec/x86/dcadsp.asm
libavcodec/x86/dcadsp_init.c
See:
2cdbcc004837ce092a14f326f24d97a29512a2c3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Christophe Gisquet [Fri, 14 Feb 2014 16:00:48 +0000 (16:00 +0000)]
x86: synth filter float: implement SSE2 version
Timings for Arrandale:
C SSE
win32: 2108 334
win64: 1152 322
Factorizing the inner loop with a call/jmp is a >15 cycles cost, even with
the jmp destination being aligned.
Unrolling for ARCH_X86_64 is a 20 cycles gain.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 18:40:18 +0000 (19:40 +0100)]
Merge commit '
57b1eb9f75b04571063ddec316e290c216c114ac'
* commit '
57b1eb9f75b04571063ddec316e290c216c114ac':
dcadsp: scan coefficients linearly in dca_lfe_fir
Conflicts:
libavcodec/dcadsp.c
See:
9ae8e23188fc2e533eea74757c9060557941d3d9
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 18:22:00 +0000 (19:22 +0100)]
Merge commit '
ad507d7907457e678900bac132122ba7be4644cb'
* commit '
ad507d7907457e678900bac132122ba7be4644cb':
x86: dcadsp: implement SSE lfe_dir
Conflicts:
libavcodec/x86/dcadsp.asm
See:
169243112c1e310d90c030fb258092f6d2e46117
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Christophe Gisquet [Fri, 14 Feb 2014 16:00:46 +0000 (16:00 +0000)]
x86: dcadsp: implement SSE lfe_dir
Results for Arrandale/Windows:
32: 1670 -> 316
64: 728 -> 298
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Vittorio Giovara [Fri, 28 Feb 2014 12:16:37 +0000 (13:16 +0100)]
h264: fix clang warning about uninitialized variable
Vittorio Giovara [Wed, 19 Feb 2014 02:23:17 +0000 (03:23 +0100)]
h264: update flag name in ff_h264_decode_ref_pic_list_reordering()
This is the name used in the specifications.
Vittorio Giovara [Wed, 19 Feb 2014 02:19:23 +0000 (03:19 +0100)]
h264: parse two additional constraint flags
Vittorio Giovara [Mon, 17 Feb 2014 12:55:15 +0000 (13:55 +0100)]
h264: add MVCD to the list of High profiles in SPS
Also comment all previous profiles.
Michael Niedermayer [Fri, 28 Feb 2014 17:14:12 +0000 (18:14 +0100)]
Merge commit '
87ec849fe9acba075c843e67bcd01f256f481a18'
* commit '
87ec849fe9acba075c843e67bcd01f256f481a18':
dcadec: remove scaling in lfe_interpolation_fir
Conflicts:
libavcodec/dcadec.c
libavcodec/dcadsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 17:05:13 +0000 (18:05 +0100)]
Merge commit '
a55546f48d55e3d1155840541b2be5f4f8cf18ab'
* commit '
a55546f48d55e3d1155840541b2be5f4f8cf18ab':
proresenc: Reuse proper dsputil infrastructure for FDCT
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 16:54:32 +0000 (17:54 +0100)]
Merge commit '
92e598a57a7ce4b8ac9ea56274af39f5fd888311'
* commit '
92e598a57a7ce4b8ac9ea56274af39f5fd888311':
prores: Drop DSP infrastructure for prores encoder bits
Conflicts:
libavcodec/Makefile
libavcodec/proresdsp.c
libavcodec/proresenc_kostya.c
Note, these changes only affect one of the 2 prores encoders we have
If someone wants to add optimizations to the affected encoder, or needs/wants
this infrastructure, then iam happy to revert this
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 16:26:37 +0000 (17:26 +0100)]
Merge commit '
d6acefe05862af244fd5a30ae946ed507c063994'
* commit '
d6acefe05862af244fd5a30ae946ed507c063994':
proresenc: Drop unnecessary DCT permutation bits
Conflicts:
libavcodec/proresenc_kostya.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 28 Feb 2014 16:13:00 +0000 (17:13 +0100)]
Merge commit '
b23650491fbd579a4365f42bd42575afb7b53f7e'
* commit '
b23650491fbd579a4365f42bd42575afb7b53f7e':
prores: Use consistent names for DSP arch initialization functions
Conflicts:
libavcodec/proresdsp.c
libavcodec/proresdsp.h
libavcodec/x86/proresdsp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Hendrik Leppkes [Thu, 22 Dec 2011 23:14:32 +0000 (00:14 +0100)]
latm: Always reconfigure if no extradata was set previously
AAC LOAS can have new audio config objects in the stream itself.
Make sure the decoder reconfigures itself when the first one arrives
midstream.
Bug-Id: 644
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Michael Niedermayer [Fri, 28 Feb 2014 12:20:22 +0000 (13:20 +0100)]
avcodec/msvideo1: Fix palette in case of seek before decode
Fixes Ticket3212
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Janne Grunau [Sat, 22 Feb 2014 17:27:10 +0000 (18:27 +0100)]
arm: dcadsp: implement decode_hf as external NEON asm
Christophe Gisquet [Fri, 14 Feb 2014 15:03:13 +0000 (15:03 +0000)]
dcadec: simplify decoding of VQ high frequencies
The vector dequantization has a test in a loop preventing effective SIMD
implementation. By moving it out of the loop, this loop can be DSPized.
Therefore, modify the current DSP implementation. In particular, the
DSP implementation no longer has to handle null loop sizes.
The decode_hf implementations have following timings:
For x86 Arrandale:
C SSE SSE2 SSE4
win32: 260 162 119 104
win64: 242 N/A 89 72
The arm NEON optimizations follow in a later patch as external asm. The
now unused check for the y modifier in arm inline asm is removed from
configure.
Janne Grunau [Fri, 21 Feb 2014 12:13:36 +0000 (13:13 +0100)]
dca: factorize scaling in inverse ADPCM
Based on a patch from Christophe Gisquet.
Unrolling of the m == 0 case avoids a possible use of the uninitilized
value sum when s->predictor_history is not set. I failed to find a
sample for it. It also reduced the cycle count from 220 to 150 on
sandy bridge, x86_64 linux, gcc 4.8.2 compared to his patch.
Christophe Gisquet [Fri, 14 Feb 2014 15:03:09 +0000 (15:03 +0000)]
x86: synth filter float: implement SSE2 version
Timings for Arrandale:
C SSE
win32: 2108 334
win64: 1152 322
Factorizing the inner loop with a call/jmp is a >15 cycles cost, even with
the jmp destination being aligned.
Unrolling for ARCH_X86_64 is a 20 cycles gain.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:08 +0000 (15:03 +0000)]
dcadsp: scan coefficients linearly in dca_lfe_fir
This change is inspired by x86 asm where it frees a register.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:07 +0000 (15:03 +0000)]
x86: dcadsp: implement SSE lfe_dir
Results for Arrandale/Windows:
32: 1670 -> 316
64: 728 -> 298
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:06 +0000 (15:03 +0000)]
dcadec: remove scaling in lfe_interpolation_fir
The scaling factor is constant so it is faster to scale the
FIR coefficients in the tables during compilation.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Diego Biurrun [Thu, 27 Feb 2014 22:49:55 +0000 (14:49 -0800)]
proresenc: Reuse proper dsputil infrastructure for FDCT
Diego Biurrun [Thu, 27 Feb 2014 22:49:54 +0000 (14:49 -0800)]
prores: Drop DSP infrastructure for prores encoder bits
None of the encoder bits are arch-optimized.