ffmpeg.git
5 years agoMerge commit '93f29948e4b06acfb96e7f82d373ef86d6dc55f7'
Michael Niedermayer [Thu, 14 Aug 2014 10:50:40 +0000 (12:50 +0200)]
Merge commit '93f29948e4b06acfb96e7f82d373ef86d6dc55f7'

* commit '93f29948e4b06acfb96e7f82d373ef86d6dc55f7':
  mpeg4video: Fix doxygen comment syntax to document correct struct member

Conflicts:
libavcodec/mpeg4video.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '0528226a05cc08b74197547fba0b1939bf68990d'
Michael Niedermayer [Thu, 14 Aug 2014 10:42:49 +0000 (12:42 +0200)]
Merge commit '0528226a05cc08b74197547fba0b1939bf68990d'

* commit '0528226a05cc08b74197547fba0b1939bf68990d':
  a64: Return correct error code on invalid data stream

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'e070d0a5ca9047192e324a3f87006b316e2a08a7'
Michael Niedermayer [Thu, 14 Aug 2014 10:34:17 +0000 (12:34 +0200)]
Merge commit 'e070d0a5ca9047192e324a3f87006b316e2a08a7'

* commit 'e070d0a5ca9047192e324a3f87006b316e2a08a7':
  frame: Remove some FF_API_AVFRAME_COLORSPACE leftovers

Conflicts:
libavutil/frame.c

No change, as these leftovers have already been removed

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'ab059f0aa896e01e8e4529f5f714fde111f05377'
Michael Niedermayer [Thu, 14 Aug 2014 10:31:51 +0000 (12:31 +0200)]
Merge commit 'ab059f0aa896e01e8e4529f5f714fde111f05377'

* commit 'ab059f0aa896e01e8e4529f5f714fde111f05377':
  vaapi: set the scaling list correctly.

See: 3fec40b601827e75aae9f0baa47671af15de181a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agompeg4video: Fix doxygen comment syntax to document correct struct member
Nidhi Makhijani [Tue, 12 Aug 2014 12:28:17 +0000 (17:58 +0530)]
mpeg4video: Fix doxygen comment syntax to document correct struct member

Also fix some comment typos.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agoa64: Return correct error code on invalid data stream
Nidhi Makhijani [Wed, 13 Aug 2014 12:24:55 +0000 (17:54 +0530)]
a64: Return correct error code on invalid data stream

Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agoframe: Remove some FF_API_AVFRAME_COLORSPACE leftovers
Diego Biurrun [Wed, 13 Aug 2014 20:35:47 +0000 (22:35 +0200)]
frame: Remove some FF_API_AVFRAME_COLORSPACE leftovers

5 years agovaapi: set the scaling list correctly.
Edgar Hucek [Sun, 11 Sep 2011 10:53:17 +0000 (12:53 +0200)]
vaapi: set the scaling list correctly.

Fixes VAAPI decoding artefacts.

CC:libav-stable@libav.org

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavf/oggparsevp8: use ff_vorbis_stream_comment()
James Almer [Thu, 14 Aug 2014 03:31:00 +0000 (00:31 -0300)]
lavf/oggparsevp8: use ff_vorbis_stream_comment()

commit db68ef89 did not update the vp8 parser

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodpx: warn if encrypted
Christophe Gisquet [Tue, 12 Aug 2014 23:44:40 +0000 (01:44 +0200)]
dpx: warn if encrypted

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodpxenc: enforce alignment requirement
Christophe Gisquet [Wed, 13 Aug 2014 10:21:52 +0000 (10:21 +0000)]
dpxenc: enforce alignment requirement

S268M-2003 specifies that each line start is aligned on a 4-byte boundary.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavf: eliminate ff_get_audio_frame_size()
Anton Khirnov [Mon, 28 Jul 2014 13:27:57 +0000 (13:27 +0000)]
lavf: eliminate ff_get_audio_frame_size()

It is basically a wrapper around av_get_audio_frame_duration(), with a
fallback to AVCodecContext.frame_size. However, that field is set only
when the stream codec context is actually used for encoding or decoding,
which is discouraged.

For muxing, it is generally the responsibility of the caller to set the
packet duration.
For demuxing, if the duration is not stored at the container level, it
should be set by the parser.

Therefore, removing the frame_size fallback should not break any
important case.
(cherry picked from commit 30e50c50274f88f0f5ae829f401cd3c7f5266719)

Conflicts:

libavformat/utils.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMove WMA case from ff_get_audio_frame_size() to av_get_audio_frame_duration()
Michael Niedermayer [Thu, 14 Aug 2014 00:42:14 +0000 (02:42 +0200)]
Move WMA case from ff_get_audio_frame_size() to av_get_audio_frame_duration()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMove frame_size fallback from ff_get_audio_frame_size() to av_get_audio_frame_duration()
Michael Niedermayer [Thu, 14 Aug 2014 00:42:14 +0000 (02:42 +0200)]
Move frame_size fallback from ff_get_audio_frame_size() to av_get_audio_frame_duration()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/utils: Remove demuxer specific frame_size fallback from ff_get_audio_frame_s...
Michael Niedermayer [Thu, 14 Aug 2014 00:34:57 +0000 (02:34 +0200)]
avformat/utils: Remove demuxer specific frame_size fallback from ff_get_audio_frame_size()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'e8049af1325dd59a51546c15b2e71a0f578e9d27'
Michael Niedermayer [Thu, 14 Aug 2014 00:11:02 +0000 (02:11 +0200)]
Merge commit 'e8049af1325dd59a51546c15b2e71a0f578e9d27'

* commit 'e8049af1325dd59a51546c15b2e71a0f578e9d27':
  mpegts: Do not try to write a PMT larger than SECTION_SIZE

Conflicts:
libavformat/mpegtsenc.c

See: 842b6c14bcfc1c5da1a2d288fd65386eb8c158ad
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '353240541d4ec317471b5cbcaa3e027d00ff8f5c'
Michael Niedermayer [Wed, 13 Aug 2014 23:27:51 +0000 (01:27 +0200)]
Merge commit '353240541d4ec317471b5cbcaa3e027d00ff8f5c'

* commit '353240541d4ec317471b5cbcaa3e027d00ff8f5c':
  cpu-test: Add unistd.h #include for getopt()

No change as we already have a #include <unistd.h>

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '30e50c50274f88f0f5ae829f401cd3c7f5266719'
Michael Niedermayer [Wed, 13 Aug 2014 23:02:26 +0000 (01:02 +0200)]
Merge commit '30e50c50274f88f0f5ae829f401cd3c7f5266719'

* commit '30e50c50274f88f0f5ae829f401cd3c7f5266719':
  lavf: eliminate ff_get_audio_frame_size()

Conflicts:
libavformat/utils.c

Not merged as the removed code is needed for some bugfixes and
would break the fate tests

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodoc: fix toolname
Michael Niedermayer [Wed, 13 Aug 2014 23:00:49 +0000 (01:00 +0200)]
doc: fix toolname

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '481a3667495425db9fdffb653292b6460fb68208'
Michael Niedermayer [Wed, 13 Aug 2014 22:41:08 +0000 (00:41 +0200)]
Merge commit '481a3667495425db9fdffb653292b6460fb68208'

* commit '481a3667495425db9fdffb653292b6460fb68208':
  cmdutils: allow matching by metadata in stream specifiers

Conflicts:
Changelog
cmdutils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '8ddc32629a6d6be77256694c9e322dde134609f3'
Michael Niedermayer [Wed, 13 Aug 2014 22:29:06 +0000 (00:29 +0200)]
Merge commit '8ddc32629a6d6be77256694c9e322dde134609f3'

* commit '8ddc32629a6d6be77256694c9e322dde134609f3':
  mem: add av_strndup() for duplicating substrings

Conflicts:
libavutil/mem.c
libavutil/mem.h
libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'aa51b0492bfced6d650fb5ff419e2b13fde6833d'
Michael Niedermayer [Wed, 13 Aug 2014 22:23:30 +0000 (00:23 +0200)]
Merge commit 'aa51b0492bfced6d650fb5ff419e2b13fde6833d'

* commit 'aa51b0492bfced6d650fb5ff419e2b13fde6833d':
  avconv: rename output_packet() to process_input_packet()

Conflicts:
ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '159a06dfc83d189f753c4583583ddfb571552ff5'
Michael Niedermayer [Wed, 13 Aug 2014 22:17:43 +0000 (00:17 +0200)]
Merge commit '159a06dfc83d189f753c4583583ddfb571552ff5'

* commit '159a06dfc83d189f753c4583583ddfb571552ff5':
  stereo3d: initialize AVStereo3D to zero

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '4e629ef80e62a54636cb46033998177dd08cf3ad'
Michael Niedermayer [Wed, 13 Aug 2014 22:11:16 +0000 (00:11 +0200)]
Merge commit '4e629ef80e62a54636cb46033998177dd08cf3ad'

* commit '4e629ef80e62a54636cb46033998177dd08cf3ad':
  http: Fix authentication, broken since 6a463e7fb

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'db68ef898a3802e51b6f41fd600d0d46d058e3f8'
Michael Niedermayer [Wed, 13 Aug 2014 22:04:42 +0000 (00:04 +0200)]
Merge commit 'db68ef898a3802e51b6f41fd600d0d46d058e3f8'

* commit 'db68ef898a3802e51b6f41fd600d0d46d058e3f8':
  ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.

Conflicts:
libavformat/oggparsevorbis.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96'
Michael Niedermayer [Wed, 13 Aug 2014 21:51:03 +0000 (23:51 +0200)]
Merge commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96'

* commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96':
  mov: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.

Conflicts:
libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'fa3a5dd4dea34baa6bb2f7fe6006fc4b2888f2aa'
Michael Niedermayer [Wed, 13 Aug 2014 21:44:10 +0000 (23:44 +0200)]
Merge commit 'fa3a5dd4dea34baa6bb2f7fe6006fc4b2888f2aa'

* commit 'fa3a5dd4dea34baa6bb2f7fe6006fc4b2888f2aa':
  nutdec: update AVFormatContext.event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '0f789322efa78a672e4c3027e5cc12b8a947043a'
Michael Niedermayer [Wed, 13 Aug 2014 21:36:25 +0000 (23:36 +0200)]
Merge commit '0f789322efa78a672e4c3027e5cc12b8a947043a'

* commit '0f789322efa78a672e4c3027e5cc12b8a947043a':
  flvdec: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '93c04e095dc37ebdab22174e88cfa91e24940866'
Michael Niedermayer [Wed, 13 Aug 2014 21:14:17 +0000 (23:14 +0200)]
Merge commit '93c04e095dc37ebdab22174e88cfa91e24940866'

* commit '93c04e095dc37ebdab22174e88cfa91e24940866':
  Expose metadata found in onCuePoint events in .flv files.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '019d3fccc4dcf5c8379112f697ce9eb08edee9b9'
Michael Niedermayer [Wed, 13 Aug 2014 21:02:56 +0000 (23:02 +0200)]
Merge commit '019d3fccc4dcf5c8379112f697ce9eb08edee9b9'

* commit '019d3fccc4dcf5c8379112f697ce9eb08edee9b9':
  Set protocol-level metadata in AVFormatContext any time a packet is read.

Conflicts:
libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '7e38903b5c86a759549e70647ae42bb22d353b14'
Michael Niedermayer [Wed, 13 Aug 2014 20:54:31 +0000 (22:54 +0200)]
Merge commit '7e38903b5c86a759549e70647ae42bb22d353b14'

* commit '7e38903b5c86a759549e70647ae42bb22d353b14':
  http: enable icy metadata by default.

Conflicts:
Changelog
libavformat/http.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '7601f9412a2d3387617a45966b65b452a632c27a'
Michael Niedermayer [Wed, 13 Aug 2014 20:47:35 +0000 (22:47 +0200)]
Merge commit '7601f9412a2d3387617a45966b65b452a632c27a'

* commit '7601f9412a2d3387617a45966b65b452a632c27a':
  http: export icecast metadata as an option with name "metadata".

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'a8c104a511f97e4ea617df73b31737e28a8a5126'
Michael Niedermayer [Wed, 13 Aug 2014 20:39:54 +0000 (22:39 +0200)]
Merge commit 'a8c104a511f97e4ea617df73b31737e28a8a5126'

* commit 'a8c104a511f97e4ea617df73b31737e28a8a5126':
  AVOption: add support for dictionary types.

Conflicts:
libavutil/opt.c
libavutil/opt.h
libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'afbd4b7e093adf6d7a830b32759ca3ba8500363d'
Michael Niedermayer [Wed, 13 Aug 2014 20:22:52 +0000 (22:22 +0200)]
Merge commit 'afbd4b7e093adf6d7a830b32759ca3ba8500363d'

* commit 'afbd4b7e093adf6d7a830b32759ca3ba8500363d':
  lavf: add AVFormatContext/AVStream fields for signaling to the user when events happen.

Conflicts:
libavformat/avformat.h
libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agompegts: Do not try to write a PMT larger than SECTION_SIZE
Luca Barbato [Tue, 12 Aug 2014 18:21:12 +0000 (20:21 +0200)]
mpegts: Do not try to write a PMT larger than SECTION_SIZE

Prevent out of array writes.

Similar to what Michael Niedermayer did to address the same issue.

Bug-Id: CVE-2014-2263
CC: libav-stable@libav.org
Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agocpu-test: Add unistd.h #include for getopt()
Diego Biurrun [Wed, 13 Aug 2014 15:17:54 +0000 (17:17 +0200)]
cpu-test: Add unistd.h #include for getopt()

5 years agoreset and complete RELEASE_NOTES for the next version
Clément Bœsch [Wed, 13 Aug 2014 18:50:51 +0000 (20:50 +0200)]
reset and complete RELEASE_NOTES for the next version

5 years agovp9: ignore reference segmentation map if error_resilience flag is set.
Ronald S. Bultje [Tue, 12 Aug 2014 22:11:05 +0000 (18:11 -0400)]
vp9: ignore reference segmentation map if error_resilience flag is set.

Fixes ffvp9_fails_where_libvpx.succeeds.webm from ticket 3849.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoChangelog: notify about the recent performance boost in dctdnoiz filter
Clément Bœsch [Wed, 13 Aug 2014 18:02:21 +0000 (20:02 +0200)]
Changelog: notify about the recent performance boost in dctdnoiz filter

5 years agolavf: eliminate ff_get_audio_frame_size()
Anton Khirnov [Mon, 28 Jul 2014 13:27:57 +0000 (13:27 +0000)]
lavf: eliminate ff_get_audio_frame_size()

It is basically a wrapper around av_get_audio_frame_duration(), with a
fallback to AVCodecContext.frame_size. However, that field is set only
when the stream codec context is actually used for encoding or decoding,
which is discouraged.

For muxing, it is generally the responsibility of the caller to set the
packet duration.
For demuxing, if the duration is not stored at the container level, it
should be set by the parser.

Therefore, removing the frame_size fallback should not break any
important case.

5 years agoavfilter/dctdnoiz: add slice threading
Clément Bœsch [Sun, 10 Aug 2014 19:49:55 +0000 (21:49 +0200)]
avfilter/dctdnoiz: add slice threading

5 years agocmdutils: allow matching by metadata in stream specifiers
Anton Khirnov [Tue, 12 Aug 2014 16:51:28 +0000 (16:51 +0000)]
cmdutils: allow matching by metadata in stream specifiers

5 years agomem: add av_strndup() for duplicating substrings
Anton Khirnov [Tue, 12 Aug 2014 16:24:19 +0000 (16:24 +0000)]
mem: add av_strndup() for duplicating substrings

5 years agoavconv: rename output_packet() to process_input_packet()
Anton Khirnov [Mon, 25 Nov 2013 08:57:54 +0000 (09:57 +0100)]
avconv: rename output_packet() to process_input_packet()

It more accurately describes what this function does

5 years agostereo3d: initialize AVStereo3D to zero
Felix Abecassis [Tue, 12 Aug 2014 12:56:35 +0000 (14:56 +0200)]
stereo3d: initialize AVStereo3D to zero

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohttp: Fix authentication, broken since 6a463e7fb
Martin Storsjö [Wed, 13 Aug 2014 11:32:52 +0000 (14:32 +0300)]
http: Fix authentication, broken since 6a463e7fb

The cur_*auth_type variables were set before the http_connect call
prior to 6a463e7fb - their sole purpose is to record the
authentication type used to do the latest request, since parsing
the http response sets the new type in the auth state.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoMerge commit '72199e1041b4052544e181ad90b431ca6704da12'
Michael Niedermayer [Wed, 13 Aug 2014 16:44:59 +0000 (18:44 +0200)]
Merge commit '72199e1041b4052544e181ad90b431ca6704da12'

* commit '72199e1041b4052544e181ad90b431ca6704da12':
  configure: Check for nanosleep in headers as well, not only in libs

See: 223c374a9d977fdfe9af94858693c632f644aac7
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '428b0578c64241fc677fed7083cc8fe65e10f32e'
Michael Niedermayer [Wed, 13 Aug 2014 16:32:53 +0000 (18:32 +0200)]
Merge commit '428b0578c64241fc677fed7083cc8fe65e10f32e'

* commit '428b0578c64241fc677fed7083cc8fe65e10f32e':
  w32threads: Use newer thread synchronization functions when targeting Vista

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '8bf3bf69ad7333bf0c45f4d2797fc2c61bc8922f'
Michael Niedermayer [Wed, 13 Aug 2014 16:26:35 +0000 (18:26 +0200)]
Merge commit '8bf3bf69ad7333bf0c45f4d2797fc2c61bc8922f'

* commit '8bf3bf69ad7333bf0c45f4d2797fc2c61bc8922f':
  http: Stop reading after receiving the whole file for non-chunked transfers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.
Andrew Stone [Tue, 12 Aug 2014 21:03:55 +0000 (17:03 -0400)]
ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.

Originally, AVFormatContext and a metadata dict were provided to ff_vorbis_comment(),
but this presented issues if an AVStream was being updated or the metadata on
AVFormatContext wasn't actually being updated. To remedy this, ff_vorbis_stream_comment()
explicitly updates a stream's metadata and sets any necessary flags.

ff_vorbis_comment() does not modify any flags, and any calls to it that update
AVFormatContext's metadata (just a single call) must also update
AVFormatContext.event_flags after detecting any metadata changes to the provided
dictionary, as signaled by a positive return value.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agomov: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.
Andrew Stone [Tue, 12 Aug 2014 21:03:54 +0000 (17:03 -0400)]
mov: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agonutdec: update AVFormatContext.event_flags with STREAM_/METADATA_UPDATED whenever...
Andrew Stone [Tue, 12 Aug 2014 21:03:53 +0000 (17:03 -0400)]
nutdec: update AVFormatContext.event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoflvdec: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata...
Andrew Stone [Tue, 12 Aug 2014 21:03:52 +0000 (17:03 -0400)]
flvdec: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodoc/filters: correct confusing statements about *showinfo shown values
Stefano Sabatini [Wed, 13 Aug 2014 15:57:05 +0000 (17:57 +0200)]
doc/filters: correct confusing statements about *showinfo shown values

Fix trac issue #3850.

5 years agoExpose metadata found in onCuePoint events in .flv files.
Andrew Stone [Mon, 11 Aug 2014 17:35:09 +0000 (13:35 -0400)]
Expose metadata found in onCuePoint events in .flv files.

Currently, only onMetaData is used, but some providers (wrongly)
put metadata into onCuePoint events, and it's still nice to be
able to use that data.

onCuePoint events also present metadata slightly differently than
onMetaData events: all metadata is found inside an object called
"parameters". In order to extract this metadata, it's easiest to
recurse through the object tree and pull out anything found in
child objects and put it in the top-level metadata.

Reference: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/2/help.html?content=00001404.html

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoSet protocol-level metadata in AVFormatContext any time a packet is read.
Andrew Stone [Thu, 31 Jul 2014 23:56:37 +0000 (19:56 -0400)]
Set protocol-level metadata in AVFormatContext any time a packet is read.

If any option named "metadata" is set inside the context, it is pulled up to
the context and then the option is cleared.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohttp: enable icy metadata by default.
Andrew Stone [Thu, 31 Jul 2014 23:56:36 +0000 (19:56 -0400)]
http: enable icy metadata by default.

It won't hurt servers that don't care about the header,
and those that do will include it by default.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohttp: export icecast metadata as an option with name "metadata".
Andrew Stone [Thu, 31 Jul 2014 23:56:35 +0000 (19:56 -0400)]
http: export icecast metadata as an option with name "metadata".

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoAVOption: add support for dictionary types.
Andrew Stone [Thu, 31 Jul 2014 23:56:34 +0000 (19:56 -0400)]
AVOption: add support for dictionary types.

In order to support metadata being set as an option, it's necessary to be able
to set dictionaries as values.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavf: add AVFormatContext/AVStream fields for signaling to the user when events happen.
Andrew Stone [Fri, 8 Aug 2014 17:09:23 +0000 (13:09 -0400)]
lavf: add AVFormatContext/AVStream fields for signaling to the user when events happen.

The only flags, for now, indicate if metadata was updated and are set after each call to
av_read_frame(). This comes with the caveat that, on stream start, it might not be set properly
as packets might be buffered in AVFormatContext.packet_buffer before being given to the user
in av_read_frame().

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoavfitler/vf_perspective: support slice threading
Paul B Mahol [Tue, 12 Aug 2014 11:29:44 +0000 (11:29 +0000)]
avfitler/vf_perspective: support slice threading

Signed-off-by: Paul B Mahol <onemda@gmail.com>
5 years agoavutil: turn arm setend into a cpuflag
Michael Niedermayer [Thu, 7 Aug 2014 16:34:35 +0000 (18:34 +0200)]
avutil: turn arm setend into a cpuflag

this allows disabling and enabling it
it also prevents crashes if vfpv3 and neon are disabled which previously
would have enabled the flag

And last but not least one can enable setend on cpus like cortex-a8 where
its fast but disabled by default

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoconfigure: Check for nanosleep in headers as well, not only in libs
Martin Storsjö [Mon, 11 Aug 2014 12:02:28 +0000 (15:02 +0300)]
configure: Check for nanosleep in headers as well, not only in libs

On mingw64 with c++11 support, the link libraries do contain a
nanosleep function, while it isn't exposed via the headers. Using
check_func_headers instead of a plain check_func fixes this
misdetection.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agow32threads: Use newer thread synchronization functions when targeting Vista
Martin Storsjö [Wed, 6 Aug 2014 06:52:38 +0000 (09:52 +0300)]
w32threads: Use newer thread synchronization functions when targeting Vista

When explicitly targeting Vista or newer (which only happens if the
caller explicitly sets _WIN32_WINNT to a high enough value via the
extra cflags option - otherwise configure script sets
-D_WIN32_WINNT=0x0502), we already unconditionally link to the
ConditionVariable functions, since 4622f11f9.

Similarly use the newer -Ex versions of CreateEvent, CreateSemaphore,
InitializeCriticalSection and WaitForSingleObject, that all appeared
in Vista. When building Windows Store applications, the older versions
of these functions aren't available, only the -Ex functions. When
doing such a build, the user can set -D_WIN32_WINNT=0x0600 to
forcibly use the newer functions instead.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agohttp: Stop reading after receiving the whole file for non-chunked transfers
Martin Storsjö [Mon, 11 Aug 2014 07:18:28 +0000 (10:18 +0300)]
http: Stop reading after receiving the whole file for non-chunked transfers

Previously this logic was only used if the server didn't
respond with Connection: close, but use it even for that case,
if the server response is non-chunked.

Originally the http code has relied on Connection: close to close
the socket when the file/stream is received - the http protocol
code just kept reading from the socket until the socket was closed.
In f240ed18 we added a check for the file size, because some
http servers didn't respond with Connection: close (and wouldn't
close the socket) even though we requested it, which meant that the
http protocol blocked for a long time at the end of files, waiting
for a socket level timeout.

When reading over tls, trying to read at the end of the connection,
when the peer has closed the connection, can produce spurious (but
harmless) warnings. Therefore always voluntarily stop reading when
the specified file size has been received, if not using a chunked
transfer encoding. (For chunked transfers, we already return 0
as soon as we get the chunk header indicating end of stream.)

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agolavc/dnxhd: ff_dnxhd_cid_table is not exported
James Almer [Wed, 13 Aug 2014 03:34:17 +0000 (00:34 -0300)]
lavc/dnxhd: ff_dnxhd_cid_table is not exported

Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agocvcodec/flacdsp_lpc_template: osmetic fix
James Darnley [Tue, 12 Aug 2014 21:22:06 +0000 (23:22 +0200)]
cvcodec/flacdsp_lpc_template: osmetic fix

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavc/flacenc: partially unroll loop in flac_enc_lpc_16
James Darnley [Tue, 12 Aug 2014 21:22:03 +0000 (23:22 +0200)]
lavc/flacenc: partially unroll loop in flac_enc_lpc_16

It now does 12 samples per iteration, up from 4.

From 1.8 to 3.2 times faster again.  3.6 to 5.7 times faster overall.
Runtime is reduced by a further 2 to 18%.  Overall runtime reduced by
4 to 50%.

Same conditions as before apply.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/idctdsp: make add/put_pixels_clamped_c internal functions
James Almer [Tue, 12 Aug 2014 23:19:24 +0000 (20:19 -0300)]
avcodec/idctdsp: make add/put_pixels_clamped_c internal functions

This reduces code duplication and differences with the fork.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavc/flacenc: add sse4 version of the 16-bit lpc encoder
James Darnley [Tue, 12 Aug 2014 21:22:02 +0000 (23:22 +0200)]
lavc/flacenc: add sse4 version of the 16-bit lpc encoder

From 1.8 to 2.4 times faster.  Runtime is reduced by 2 to 39%.  The
speed-up generally increases with compression_level.

This lpc encoder is not used with levels < 3 so it provides no speed-up
in these cases.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavfi: duplicate ff_log2_tab
James Almer [Tue, 12 Aug 2014 21:38:32 +0000 (18:38 -0300)]
lavfi: duplicate ff_log2_tab

Fixes compilation failures on msvc/icl shared builds

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec: add C xvid IDCT support
Pascal Massimino [Sat, 9 Aug 2014 11:06:17 +0000 (13:06 +0200)]
avcodec: add C xvid IDCT support

Thanks to Pascal Massimino and Michael Militzer for permission to use under LGPL

The xvid idct code is from xvid, and nearly unchanged to make future syncing easy
the integration into ffmpeg is done by the commiter
the commit message is written by the commiter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolsws: duplicate ff_log2_tab
James Almer [Tue, 12 Aug 2014 18:21:24 +0000 (15:21 -0300)]
lsws: duplicate ff_log2_tab

libswscale uses the table but wasn't duplicating it like the rest of the libs.
This should fix compilation failures on msvc/icl after lavu stopped exporting
internal functions and tables.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'da7d839a0d3ec40423a665dc85e0cfaed3f92eb8'
Michael Niedermayer [Tue, 12 Aug 2014 15:08:45 +0000 (17:08 +0200)]
Merge commit 'da7d839a0d3ec40423a665dc85e0cfaed3f92eb8'

* commit 'da7d839a0d3ec40423a665dc85e0cfaed3f92eb8':
  ffv1dec: check that global parameters do not change in version 0/1

Conflicts:
libavcodec/ffv1dec.c

See: b05cd1ea7e45a836f7f6071a716c38bb30326e0f
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '3187fa14a326908f9471a038e3b5b24c0eaf655e'
Michael Niedermayer [Tue, 12 Aug 2014 14:58:57 +0000 (16:58 +0200)]
Merge commit '3187fa14a326908f9471a038e3b5b24c0eaf655e'

* commit '3187fa14a326908f9471a038e3b5b24c0eaf655e':
  hevc_mvs: avoid deriving tmvp in amvp

See: 373677f95816924a3790c174e83ec2e378962c44
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '14ca0aa69b5d954ce56d0826ab9f1f70e535c92a'
Michael Niedermayer [Tue, 12 Aug 2014 14:52:14 +0000 (16:52 +0200)]
Merge commit '14ca0aa69b5d954ce56d0826ab9f1f70e535c92a'

* commit '14ca0aa69b5d954ce56d0826ab9f1f70e535c92a':
  hevc: wait proper position for tmvp

Conflicts:
libavcodec/hevc_mvs.c

See: ed248e7f70d98abe099392e154d1cdd0f15faa3c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'cf6090dc6252f2b276aa4133e3d73a89f4c6046c'
Michael Niedermayer [Tue, 12 Aug 2014 14:39:20 +0000 (16:39 +0200)]
Merge commit 'cf6090dc6252f2b276aa4133e3d73a89f4c6046c'

* commit 'cf6090dc6252f2b276aa4133e3d73a89f4c6046c':
  hevc: use intreadwrite

Conflicts:
libavcodec/hevc_mvs.c

See: 7a4a5515b0ce97f1c4e18ed012cc3f86328dd220
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'ed53cc217f6a6e4ddb35e3f01a79496091dc82dc'
Michael Niedermayer [Tue, 12 Aug 2014 14:27:17 +0000 (16:27 +0200)]
Merge commit 'ed53cc217f6a6e4ddb35e3f01a79496091dc82dc'

* commit 'ed53cc217f6a6e4ddb35e3f01a79496091dc82dc':
  hevc: derive partial merge list

Conflicts:
libavcodec/hevc_mvs.c

See: 4576eff05d94a5e0b853a7a595d31351cc539e7b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '3505b19652ea34089a4cd08d4d3358fcc0a3db8b'
Michael Niedermayer [Tue, 12 Aug 2014 14:19:32 +0000 (16:19 +0200)]
Merge commit '3505b19652ea34089a4cd08d4d3358fcc0a3db8b'

* commit '3505b19652ea34089a4cd08d4d3358fcc0a3db8b':
  hevc: derive partially amvp list

Conflicts:
libavcodec/hevc_mvs.c

See: bbeaae96eb6fc623f6bfd4a0dd2fd06e6b620938
See: 3ad046083119abd3b063964bd79797e9935305e1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '09182b3224370e1d636631e77f201a8388766bd6'
Michael Niedermayer [Tue, 12 Aug 2014 14:06:33 +0000 (16:06 +0200)]
Merge commit '09182b3224370e1d636631e77f201a8388766bd6'

* commit '09182b3224370e1d636631e77f201a8388766bd6':
  hevc: simplify rounding

Conflicts:
libavcodec/hevc_mvs.c

See: 2e471e4703ed5aaab6d6b6bf5a3c6895b79f02b4
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'd1b1c3bb5ef1bee409c06c3bcacfb8674e1cb574'
Michael Niedermayer [Tue, 12 Aug 2014 13:58:37 +0000 (15:58 +0200)]
Merge commit 'd1b1c3bb5ef1bee409c06c3bcacfb8674e1cb574'

* commit 'd1b1c3bb5ef1bee409c06c3bcacfb8674e1cb574':
  hevc: reorder loops

Conflicts:
libavcodec/hevc.c

See: eca1957c4cbee66a0b1f3dcabaffe68d61885f16
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoRemove useless configure option "--enable-sram".
Carl Eugen Hoyos [Tue, 12 Aug 2014 12:27:37 +0000 (14:27 +0200)]
Remove useless configure option "--enable-sram".

5 years agovp9/x86: fix bug in intra_pred_hd_32x32.
Ronald S. Bultje [Tue, 12 Aug 2014 10:37:00 +0000 (06:37 -0400)]
vp9/x86: fix bug in intra_pred_hd_32x32.

Fixes mismatch in first keyframe in sample
ffvp9_fails_where_libvpx.succeeds.webm from ticket 3849. There's still
a second mismatch a few frames into the sample.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agox86/dca: remove unused header
James Almer [Sun, 10 Aug 2014 05:24:01 +0000 (02:24 -0300)]
x86/dca: remove unused header

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agox86/ttadsp: remove an unnecessary mova
James Almer [Mon, 4 Aug 2014 02:53:39 +0000 (23:53 -0300)]
x86/ttadsp: remove an unnecessary mova

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffv1dec: check that global parameters do not change in version 0/1
Michael Niedermayer [Fri, 30 Aug 2013 02:51:09 +0000 (04:51 +0200)]
ffv1dec: check that global parameters do not change in version 0/1

Such changes are neither allowed nor supported

Found-by: ami_stuff
Bug-Id: CVE-2013-7020
CC: libav-stable@libav.org
Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc_mvs: avoid deriving tmvp in amvp
Christophe Gisquet [Fri, 8 Aug 2014 18:21:04 +0000 (18:21 +0000)]
hevc_mvs: avoid deriving tmvp in amvp

Reduces the number of calls to tmvp derivation from 933685 to 586271 on
a sequence.

Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: wait proper position for tmvp
Christophe Gisquet [Sun, 20 Jul 2014 07:34:58 +0000 (09:34 +0200)]
hevc: wait proper position for tmvp

The position is either rounded or not checked, so delay the wait to
check the proper value.

Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: use intreadwrite
Christophe Gisquet [Fri, 8 Aug 2014 18:21:02 +0000 (18:21 +0000)]
hevc: use intreadwrite

When dealing with MVs, both components may be processed at a time.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: derive partial merge list
Christophe Gisquet [Fri, 8 Aug 2014 18:21:01 +0000 (18:21 +0000)]
hevc: derive partial merge list

The merge list only needs to be derived up to the merge index.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: derive partially amvp list
Christophe Gisquet [Fri, 8 Aug 2014 18:21:00 +0000 (18:21 +0000)]
hevc: derive partially amvp list

When the candidate has been found, no need to derive others.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: simplify rounding
Christophe Gisquet [Thu, 10 Jul 2014 06:47:55 +0000 (06:47 +0000)]
hevc: simplify rounding

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: reorder loops
Christophe Gisquet [Fri, 8 Aug 2014 18:20:58 +0000 (18:20 +0000)]
hevc: reorder loops

iterate over memory in a more continuous order

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoconfigure: Check for nanosleep in headers as well, not only in libs
Martin Storsjö [Tue, 12 Aug 2014 09:23:38 +0000 (11:23 +0200)]
configure: Check for nanosleep in headers as well, not only in libs

On mingw64 with c++11 support, the link libraries do contain a
nanosleep function, while it isn't exposed via the headers. Using
check_func_headers instead of a plain check_func fixes this
misdetection.

Suggested-by: Hendrik Leppkes <h.leppkes@gmail.com>
See: [FFmpeg-devel] [PATCH] fix: 'make' with mingw32
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoFix warning if https protocol was requested but isn't available.
Carl Eugen Hoyos [Tue, 12 Aug 2014 08:03:36 +0000 (10:03 +0200)]
Fix warning if https protocol was requested but isn't available.

5 years agoCheck for hevc startcode when muxing into mpeg-ts.
Carl Eugen Hoyos [Tue, 12 Aug 2014 06:48:20 +0000 (08:48 +0200)]
Check for hevc startcode when muxing into mpeg-ts.

5 years agolavu: stop exporting internal functions
James Almer [Sun, 10 Aug 2014 00:04:35 +0000 (21:04 -0300)]
lavu: stop exporting internal functions

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavu: rename ff_opencl_set_parameter() to avpriv_opencl_set_parameter()
James Almer [Mon, 11 Aug 2014 19:35:39 +0000 (16:35 -0300)]
lavu: rename ff_opencl_set_parameter() to avpriv_opencl_set_parameter()

It was wrongly being exported and used by libavfilter.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter: ported lenscorrection filter from frei0r
Daniel Oberhoff [Mon, 11 Aug 2014 22:52:45 +0000 (00:52 +0200)]
avfilter: ported lenscorrection filter from frei0r

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoproresenc_kostya: report buffer overflow
Christophe Gisquet [Mon, 11 Aug 2014 22:06:08 +0000 (22:06 +0000)]
proresenc_kostya: report buffer overflow

If the allocated size, despite best efforts, is too small, exit
with the appropriate error.

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