1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-12 19:18:44 +02:00
Commit Graph

15195 Commits

Author SHA1 Message Date
Michael Niedermayer
4991eacc06 Merge commit '962d63157322466a9a82f9f9d84c1b6f1b582f65'
* commit '962d63157322466a9a82f9f9d84c1b6f1b582f65':
  matroskaenc: set the stream timebase earlier

Conflicts:
	tests/ref/lavf/mkv
	tests/ref/seek/lavf-mkv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 13:43:04 +02:00
Michael Niedermayer
e46cc1dab0 Merge commit '43e7f0797f9f821a3866a20f05e512e13c82076a'
* commit '43e7f0797f9f821a3866a20f05e512e13c82076a':
  flvenc: only write the framerate tag based on avg_frame_rate

Conflicts:
	tests/ref/lavf/flv_fmt
	tests/ref/seek/lavf-flv_fmt
	tests/ref/seek/vsynth2-flv
	tests/ref/vsynth/vsynth1-flashsv
	tests/ref/vsynth/vsynth1-flv
	tests/ref/vsynth/vsynth2-flashsv
	tests/ref/vsynth/vsynth2-flv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 13:30:12 +02:00
Michael Niedermayer
a72df4dadc Merge commit 'cf6977712c9e5abe6dc55289f6322ccbf10321a9'
* commit 'cf6977712c9e5abe6dc55289f6322ccbf10321a9':
  movenc: write avg_frame_rate as the framerate, not the codec timebase

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 13:07:33 +02:00
Michael Niedermayer
bc59d39b82 Merge commit '81eec081afea9fc017a175581ceea7c420a0dfc3'
* commit '81eec081afea9fc017a175581ceea7c420a0dfc3':
  matroskaenc: base DefaultDuration on the framerate, not the codec timebase

Conflicts:
	libavformat/matroskaenc.c
	tests/ref/lavf/mkv
	tests/ref/seek/lavf-mkv

See: ea83b032af
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 12:58:55 +02:00
Anton Khirnov
962d631573 matroskaenc: set the stream timebase earlier
Fixes calculating the ts offset for audio codecs with delay.
2014-05-29 08:01:58 +02:00
Anton Khirnov
43e7f0797f flvenc: only write the framerate tag based on avg_frame_rate
Do not fall back on the codec timebase, since that can be anything for
VFR video.
2014-05-29 08:01:30 +02:00
Anton Khirnov
cf6977712c movenc: write avg_frame_rate as the framerate, not the codec timebase 2014-05-29 08:01:23 +02:00
Anton Khirnov
81eec081af matroskaenc: base DefaultDuration on the framerate, not the codec timebase
This results in DefaultDuration not being written when the framerate is
not known, but as this field is purely informative, this should not
break any sane demuxers.
2014-05-29 08:00:57 +02:00
Michael Niedermayer
78a79a2ceb avformat/nutenc: replace conditional by assert
Its implied by sp_count==0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 04:26:18 +02:00
Michael Niedermayer
6d1aba6a29 avformat/nutenc: limit index table size if no index is going to be written
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 03:49:16 +02:00
Michael Niedermayer
82beb46e65 avformat/nutenc: add mode that omits the index
When the index is not written, several data tables become unneeded,
reducing memory and cpu requirements.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 03:37:37 +02:00
Michael Niedermayer
df889be0a8 nutenc: avoid av_tree_find() operation per syncpoint
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 03:20:04 +02:00
Michael Niedermayer
6b041cb617 avformat/nutdec: Fix handling of older 4.0 files
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 01:48:02 +02:00
Michael Niedermayer
170a4d79c0 avformat/nutenc: bump minor version due to broadcast/pipe
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 01:44:02 +02:00
Michael Niedermayer
45daae06fd avformat/nutenc: change check to match comment
The code appears to assume STABLE will never change

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 01:41:56 +02:00
Michael Niedermayer
99b15f1daa avformat/nutenc: fix used version value
The broadcast/pipe flags arent stable + 1 they would be 4 or whenever but wouldnt change based
on which is stable

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 01:40:07 +02:00
Michael Niedermayer
a8499cbbe8 Merge commit 'c94e2e85cb6af8a570d8542a830556243bd32873'
* commit 'c94e2e85cb6af8a570d8542a830556243bd32873':
  nut: Support experimental NUT 4 features

Conflicts:
	doc/nut.texi
	libavformat/nut.h
	libavformat/nutdec.c
	libavformat/nutenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 01:13:59 +02:00
Michael Niedermayer
d858ee717b Merge commit '6d212599aa684f30511fb08ca30fe2378405304e'
* commit '6d212599aa684f30511fb08ca30fe2378405304e':
  avformat: Provide a standard compliance flag

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

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 00:20:48 +02:00
Luca Barbato
c94e2e85cb nut: Support experimental NUT 4 features
Add the low overhead pipe mode and the extended broadcast mode.
Export the options as 'syncponts' since it impacts only that.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-05-28 22:04:56 +02:00
Luca Barbato
6d212599aa avformat: Provide a standard compliance flag
Provide f_strict for avconv usage.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-05-28 22:04:56 +02:00
Michael Niedermayer
7dba055bb0 oggenc: Fix the EOS flag
This corrects the bug that caused the checksums to change in
9767d7c092.

It caused the EOS flag to be set incorrectly; the ogg spec does not
allow it to be set in the middle of a logical bitstream.

Signed-off-by: Andrew Kelley <superjoe30@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-28 21:51:38 +03:00
Vignesh Venkatasubramanian
c14045c818 lavf: Remove experimental flag for Opus in WebM
Opus in WebM is no more experimental as we have everything necessary in
the container writing code as per the spec. So removing the experimental flag.
Note that we removed the experimental suffix from the CodecId field long
ago ( http://goo.gl/O0TYRB ).

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 19:29:45 +02:00
Lazaros Koromilas
0f87b42b44 libavformat/utils: Warning about invalid cover art instead of an error
This way other streams can still be used with the -map option.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 19:12:02 +02:00
Michael Niedermayer
cf3a038f50 avformat/matroskaenc: fix ident string
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 15:15:14 +02:00
Michael Niedermayer
61917a104e Merge commit '106b62f4ba600f24415eaded5e020aeceb23fd59'
* commit '106b62f4ba600f24415eaded5e020aeceb23fd59':
  matroskaenc: write the channel mask for FLAC

Conflicts:
	libavformat/matroskaenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 13:19:26 +02:00
Michael Niedermayer
dff4aa6afd Merge commit 'efcde917af407a6031ecff68edd51fce7b83d104'
* commit 'efcde917af407a6031ecff68edd51fce7b83d104':
  vorbiscomment: simplify API by using av_dict_count()

Conflicts:
	libavformat/flacenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 13:08:50 +02:00
Michael Niedermayer
579e2b2874 Merge commit '23f741f79327e31be7b2a75ebb2e02111e06e52f'
* commit '23f741f79327e31be7b2a75ebb2e02111e06e52f':
  matroskadec: parse the channel layout mask for FLAC

Conflicts:
	libavformat/oggparsevorbis.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 13:02:19 +02:00
Michael Niedermayer
1c0ce2d4e0 Merge commit '4efdadc8ec50332c812e8a95e8c67f5a260e7cb0'
* commit '4efdadc8ec50332c812e8a95e8c67f5a260e7cb0':
  matroskadec: export just the STREAMINFO block as FLAC extradata

Conflicts:
	libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 12:49:28 +02:00
Michael Niedermayer
69de229bb8 Merge commit '6df478bf891b9fc5626e4a0b993899f310ba0a1c'
* commit '6df478bf891b9fc5626e4a0b993899f310ba0a1c':
  matroskadec: split parsing tracks into a separate function

Conflicts:
	libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 12:41:35 +02:00
Michael Niedermayer
40beec6a43 Merge commit '5fdaf312c5541b77b6364db8b49d6abb416a25c0'
* commit '5fdaf312c5541b77b6364db8b49d6abb416a25c0':
  flac: make avpriv_flac_parse_block_header() inline

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 12:33:49 +02:00
Michael Niedermayer
61301ca786 Merge commit '54ed488b1af583df6c9d2a73b4a44f16b7e4f82c'
* commit '54ed488b1af583df6c9d2a73b4a44f16b7e4f82c':
  flac muxer: write WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag for multichannel files

Conflicts:
	libavformat/flacenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 12:28:23 +02:00
Michael Niedermayer
03ffaed3f0 Merge commit 'd6b9ce99ea384fb676561461768b8316725a4ccd'
* commit 'd6b9ce99ea384fb676561461768b8316725a4ccd':
  flac demuxer: parse the WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 12:21:50 +02:00
Anton Khirnov
106b62f4ba matroskaenc: write the channel mask for FLAC 2014-05-28 07:55:14 +02:00
Anton Khirnov
efcde917af vorbiscomment: simplify API by using av_dict_count() 2014-05-28 07:54:54 +02:00
Anton Khirnov
23f741f793 matroskadec: parse the channel layout mask for FLAC
It is commonly stored in a vorbiscomment block in codec private data.
2014-05-28 07:50:32 +02:00
Anton Khirnov
4efdadc8ec matroskadec: export just the STREAMINFO block as FLAC extradata
It contains all information that is used by the decoder and the other
FLAC-capable demuxers (flacdec, ogg) export only STREAMINFO as well.
2014-05-28 07:49:15 +02:00
Anton Khirnov
6df478bf89 matroskadec: split parsing tracks into a separate function 2014-05-28 07:48:59 +02:00
Anton Khirnov
5fdaf312c5 flac: make avpriv_flac_parse_block_header() inline
This avoids all the ABI troubles associated with avpriv_.
Since this function is very small and does not depend on any tables,
making it inline should have no adverse effects.
2014-05-28 07:48:30 +02:00
Anton Khirnov
54ed488b1a flac muxer: write WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag for multichannel files 2014-05-28 07:47:31 +02:00
Anton Khirnov
d6b9ce99ea flac demuxer: parse the WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag
It is used to store the channel mask for non-standard layouts.
2014-05-28 07:47:15 +02:00
Lazaros Koromilas
bbc10a1aa5 libavformat/utils: Fix segfault on m4a cover artwork parsing
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 03:35:39 +02:00
Michael Niedermayer
919c320f72 avformat/oggenc: fix EOS flag
This corrects the bug that caused the checksums to change in
9767d7c092

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 01:12:18 +02:00
Michael Niedermayer
b5657516b2 Merge commit '9767d7c092c890ecc5953452e8a951fd902dd67b'
* commit '9767d7c092c890ecc5953452e8a951fd902dd67b':
  oggenc: Flush after writing headers

Conflicts:
	tests/ref/lavf/ogg

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 01:00:10 +02:00
Michael Niedermayer
5313d60dc0 Merge commit '1d3eb0b5735f6dd72d2bf648455cf06ac7c24bc1'
* commit '1d3eb0b5735f6dd72d2bf648455cf06ac7c24bc1':
  oggenc: Move ogg_write_pages up above ogg_write_header

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-28 00:28:08 +02:00
Michael Niedermayer
5be8c27694 avformat/rtspdec: Use av_mallocz_array()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-27 20:42:50 +02:00
Andrew Kelley
9767d7c092 oggenc: Flush after writing headers
Before, header information for ogg format files was sent with the
first encoded packet.

This patch makes it so that it is possible for API users to
differentiate between headers and encoded audio. This is useful, for
example, when creating an audio stream where you want to send one set
of headers for every client that connects and then the encoded stream
of audio.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-27 20:16:59 +03:00
Andrew Kelley
1d3eb0b573 oggenc: Move ogg_write_pages up above ogg_write_header
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-27 20:16:58 +03:00
Michael Niedermayer
e6a084641a avformat/utils: set max analyze duration depending on the circumstances
Fixes Ticket3673

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-26 22:33:01 +02:00
Michael Niedermayer
52887aa409 avformat: move default for max_analyze_duration into utils.c
this way we can do better tha a single fixed constant value

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-26 22:33:01 +02:00
Carl Eugen Hoyos
2d56f0d054 Write the actual mp3 frame size when muxing into caf if available.
Fixes ticket #3648.
2014-05-26 20:28:07 +02:00