]> git.sesse.net Git - ffmpeg/log
ffmpeg
10 years agoavformat/utils: detect MPEG streams with faulty DTS and discard affected DTS
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>
10 years agoMerge commit '5c9c305d14730faf2af206e5d519df4948de0ed2'
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>
10 years agoavcodec/hevcpred_template: also initialize top[-1] for constrained intra prediction
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>
10 years agoavcodec/g2meet: also reset local got_header when reseting the context got_header
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>
10 years agoavcodec/g2meet: fix error returns
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>
10 years agoass: K&R formatting cosmetics
Patrice Clement [Fri, 28 Feb 2014 17:31:29 +0000 (18:31 +0100)]
ass: K&R formatting cosmetics

10 years agoRevert "mpegts: do not set pts for missing dts in video streams"
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
10 years agox86/synth_filter: Revert the switch to float ops with SSE2
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>
10 years agoavformat/oggparsevorbis: check packet size before reading new_len from it
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>
10 years agoavformat/avidec: Use a buffer with sufficient padding in read_gab2_sub()
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>
10 years agoMerge remote-tracking branch 'qatar/master'
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>
10 years agox86/synth_filter: add synth_filter_avx
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>
10 years agoavformat/mp3dec: optimize mp3_seek() for dir < 0
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>
10 years agoavformat/aviobuf: optimize sequential backward seeking
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>
10 years agoavformat/aviobuf: factorize buffer_size out
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>
10 years agoituh263: reject b-frame with pp_time = 0
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>
10 years agoRELEASE: update for 2.2
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>
10 years agox86/synth_filter: add synth_filter_sse
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>
10 years agoHLS: Handle the case when hls_list_size=0. Playlist file should contain all the segme...
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>
10 years agoMerge remote-tracking branch 'qatar/master'
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>
10 years agoMerge commit 'ea7f79f93796d68559a495be824b6bbd94dfe5f6'
Michael Niedermayer [Sat, 1 Mar 2014 13:39:39 +0000 (14:39 +0100)]
Merge commit 'ea7f79f93796d68559a495be824b6bbd94dfe5f6'

* commit 'ea7f79f93796d68559a495be824b6bbd94dfe5f6':
  qt-faststart: Avoid unintentionally sign extending BE_32

See: 582f36ca3fb1c69dbe3478f174d36278f5dd3f63
See: 69ce34c796dd2d595f3312848cf6d0c87506e0d0
Merged-by: Michael Niedermayer <michaelni@gmx.at>
10 years agoMerge commit 'bb95334c34d0d9abccea370ae25c4765d7764ab8'
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>
10 years agoMerge commit '63848854256a024a19435e87d6bc76fffa65e81e'
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>
10 years agoMerge commit '03c2a66fcff9707f71ffef7e61ce5e3973220d4b'
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>
10 years agoMerge commit '5612244351b2eb3cb4e6225861a0f55aa5d0c475'
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>
10 years agoMerge commit 'ea15a9a5d8fa6a71af3101b2af18c4dcac07987f'
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>
10 years agoMerge commit '3cbc7ef3d60b6af3617079f24a4f401d83353003'
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>
10 years agoMerge commit 'd1f9563d502037239185c11578cc614bdf0c5870'
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>
10 years agoMerge commit 'bc6461c2861b7d482a037d3b3e2b44ad48805fa0'
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>
10 years agoMerge commit 'fb3b2f5d923a6e19d80f21eb4e081674bceec810'
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>
10 years agoMerge commit '2f02bbcca050936686482453078e83dc25493da0'
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>
10 years agoMerge commit '34150be515cd9c43b0b679806b8d01774960af78'
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>
10 years agoMerge commit '8e0cf39faf02536dca08f4fe628a66d1ae022fde'
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>
10 years agoMerge commit '0a36988e48dd581d29e77f768f987738bdf365f0'
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>
10 years agoMerge commit 'f4bd9fe326ad1315a74206939ae56df93b940a09'
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>
10 years agoMerge commit '17a63ff0cd187b9e50e4a47862750295976853b1'
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>
10 years agoMerge commit 'ee6280ca12696a67535ce2245c77190edc513794'
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>
10 years agoMerge commit 'e70ab7c1f5005041bba0e4efc1165410f83495b2'
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>
10 years agoupdate for 2.2
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>
10 years agoavcodec/utvideoenc: fix slice_bits size
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>
10 years agoavformat/ac3dec: Use avpriv_ac3_parse_header2()
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>
10 years agoavcodec/ac3_parser: add avpriv_ac3_parse_header2() and use it in libavcodec
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>
10 years agoavcodec/ac3: move new field to the end of AC3HeaderInfo
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>
10 years agoavutil/opt: allow max=min=0 for pixel formats
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>
10 years agoqt-faststart: Add a note about the -movflags +faststart feature
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>
10 years agoqt-faststart: Avoid unintentionally sign extending BE_32
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>
10 years agoqt-faststart: Check offset_count before reading from the moov_atom buffer
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>
10 years agoqt-faststart: Check the ftello() return codes
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>
10 years agoqt-faststart: Fix the signedness of variables keeping the ftello return values
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>
10 years agoqt-faststart: Check fseeko() return codes
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>
10 years agoqt-faststart: Simplify code by using a MIN() macro
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>
10 years agoqt-faststart: Increase the copy buffer size to 64 KB
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>
10 years agoMerge remote-tracking branch 'qatar/master'
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>
10 years agopthread_frame: flush all threads on flush, not just the first one
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

10 years agoaf_compand: replace strtok_r() with av_get_token()
Anton Khirnov [Wed, 26 Feb 2014 21:37:06 +0000 (22:37 +0100)]
af_compand: replace strtok_r() with av_get_token()

10 years agoMerge commit '6e4009d4cdf5927bdaedf58fcfc5e813b14c366b'
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>
10 years agoMerge commit '4cb6964244fd6c099383d8b7e99731e72cc844b9'
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>
10 years agoavcodec/dcadec: use brackets to ensure that no slow division is used
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>
10 years agoMerge commit '7686afd049be98d18663682b92d983340fa2c305'
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>
10 years agoconfigure: Set the thread type after resolving dependencies
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>
10 years agobuild: Let the ffvhuff decoder/encoder depend on the huffyuv decoder/encoder
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.

10 years agobuild: Let the iac decoder depend on the imc decoder
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.

10 years agobuild: Let all MJPEG-related decoders depend on the MJPEG decoder
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.

10 years agobuild: Let AMV decoder depend on the SP5X decoder
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.

10 years agoMerge commit '08e3ea60ff4059341b74be04a428a38f7c3630b0'
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>
10 years agox86: synth filter float: implement SSE2 version
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>
10 years agoMerge commit '57b1eb9f75b04571063ddec316e290c216c114ac'
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>
10 years agoMerge commit 'ad507d7907457e678900bac132122ba7be4644cb'
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>
10 years agox86: dcadsp: implement SSE lfe_dir
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>
10 years agoh264: fix clang warning about uninitialized variable
Vittorio Giovara [Fri, 28 Feb 2014 12:16:37 +0000 (13:16 +0100)]
h264: fix clang warning about uninitialized variable

10 years agoh264: update flag name in ff_h264_decode_ref_pic_list_reordering()
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.

10 years agoh264: parse two additional constraint flags
Vittorio Giovara [Wed, 19 Feb 2014 02:19:23 +0000 (03:19 +0100)]
h264: parse two additional constraint flags

10 years agoh264: add MVCD to the list of High profiles in SPS
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.

10 years agoMerge commit '87ec849fe9acba075c843e67bcd01f256f481a18'
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>
10 years agoMerge commit 'a55546f48d55e3d1155840541b2be5f4f8cf18ab'
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>
10 years agoMerge commit '92e598a57a7ce4b8ac9ea56274af39f5fd888311'
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>
10 years agoMerge commit 'd6acefe05862af244fd5a30ae946ed507c063994'
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>
10 years agoMerge commit 'b23650491fbd579a4365f42bd42575afb7b53f7e'
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>
10 years agolatm: Always reconfigure if no extradata was set previously
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>
10 years agoavcodec/msvideo1: Fix palette in case of seek before decode
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>
10 years agoarm: dcadsp: implement decode_hf as external NEON asm
Janne Grunau [Sat, 22 Feb 2014 17:27:10 +0000 (18:27 +0100)]
arm: dcadsp: implement decode_hf as external NEON asm

10 years agodcadec: simplify decoding of VQ high frequencies
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.

10 years agodca: factorize scaling in inverse ADPCM
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.

10 years agox86: synth filter float: implement SSE2 version
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>
10 years agodcadsp: scan coefficients linearly in dca_lfe_fir
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>
10 years agox86: dcadsp: implement SSE lfe_dir
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>
10 years agodcadec: remove scaling in lfe_interpolation_fir
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>
10 years agoproresenc: Reuse proper dsputil infrastructure for FDCT
Diego Biurrun [Thu, 27 Feb 2014 22:49:55 +0000 (14:49 -0800)]
proresenc: Reuse proper dsputil infrastructure for FDCT

10 years agoprores: Drop DSP infrastructure for prores encoder bits
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.

10 years agoproresenc: Drop unnecessary DCT permutation bits
Diego Biurrun [Thu, 27 Feb 2014 22:49:53 +0000 (14:49 -0800)]
proresenc: Drop unnecessary DCT permutation bits

No permutation is necessary for the FDCT.

10 years agoprores: Use consistent names for DSP arch initialization functions
Diego Biurrun [Thu, 27 Feb 2014 22:49:52 +0000 (14:49 -0800)]
prores: Use consistent names for DSP arch initialization functions

10 years agoMerge remote-tracking branch 'cus/stable'
Michael Niedermayer [Fri, 28 Feb 2014 02:31:07 +0000 (03:31 +0100)]
Merge remote-tracking branch 'cus/stable'

* cus/stable:
  lavfi/frei0r: factorize plugin loading with static path
  lavfi/frei0r: search plugins in lib64 dirs on all architectures

Merged-by: Michael Niedermayer <michaelni@gmx.at>
10 years agoMerge remote-tracking branch 'lukaszmluki/master'
Michael Niedermayer [Fri, 28 Feb 2014 01:14:17 +0000 (02:14 +0100)]
Merge remote-tracking branch 'lukaszmluki/master'

* lukaszmluki/master:
  lavf/ftp: fix seek to nagative position
  lavf/libssh: fix seek to nagative position

Merged-by: Michael Niedermayer <michaelni@gmx.at>
10 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Fri, 28 Feb 2014 01:06:34 +0000 (02:06 +0100)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  Give IDCT matrix transpose macro a more descriptive name

Merged-by: Michael Niedermayer <michaelni@gmx.at>
10 years agolavf/ftp: fix seek to nagative position
Lukasz Marek [Thu, 27 Feb 2014 23:07:31 +0000 (00:07 +0100)]
lavf/ftp: fix seek to nagative position

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
10 years agolavf/libssh: fix seek to nagative position
Lukasz Marek [Thu, 27 Feb 2014 23:04:29 +0000 (00:04 +0100)]
lavf/libssh: fix seek to nagative position

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
10 years agox86/imdct36: use sse3 instructions in the last BUTTERF step when possible
James Almer [Thu, 27 Feb 2014 17:40:28 +0000 (14:40 -0300)]
x86/imdct36: use sse3 instructions in the last BUTTERF step when possible

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years agox86/imdct36: don't build imdct36_float_sse on x86_64 targets
James Almer [Thu, 27 Feb 2014 05:07:58 +0000 (02:07 -0300)]
x86/imdct36: don't build imdct36_float_sse on x86_64 targets

There's an SSE2 version as well, and x86_64 guarantees that
instruction set is present.

Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years agoGive IDCT matrix transpose macro a more descriptive name
Diego Biurrun [Tue, 18 Feb 2014 17:57:45 +0000 (09:57 -0800)]
Give IDCT matrix transpose macro a more descriptive name

This also avoids a macro name clash and related warning on ARM.

10 years agoavcodec/mjpegdec: convert CMYK to GBRAP
Michael Niedermayer [Thu, 27 Feb 2014 20:55:31 +0000 (21:55 +0100)]
avcodec/mjpegdec: convert CMYK to GBRAP

Fixes Ticket2799

This should be moved into swscale once we have a CMYK pixel format

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