Hendrik Leppkes
45581ed15d
oggdec/vorbis: fix stream duration condition
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-16 02:30:54 +01:00
Ben Boeckel
5a633ec2dd
vorbis: extract metadata from the middle of a stream
...
If a special comment packet shows up in the middle of the stream, we
should extract it out into the vorbis stream metadata dictionary.
Also, if there is metadata in the packet on the way in, it might linger
since we only add data to the dictionary causing stale metadata to be
inserted into the stream. Instead, clear it to remove any doubt about
what is new and old.
Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-05 22:37:07 +01:00
Ben Boeckel
0dc66553ad
vorbis: append data from tags together
...
Currently, if there are multiple 'performer' tags, the last one is the
only one which appears. Instead, join them with a semicolon.
Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-05 22:36:48 +01:00
Michael Niedermayer
0c7bd34023
Merge commit 'fd2384f02b905a106fba9222ece4ddbe2ec61937'
...
* commit 'fd2384f02b905a106fba9222ece4ddbe2ec61937':
oggparsevorbis: fail on memory allocation error
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-13 10:06:42 +02:00
Michael Niedermayer
77caa31f71
Merge commit 'c18375ec8040a9fe0f186b2033dc975883143758'
...
* commit 'c18375ec8040a9fe0f186b2033dc975883143758':
oggvorbisdec: add support for embedded cover art
Conflicts:
libavformat/oggparsevorbis.c
See: 193782216f
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-13 09:51:00 +02:00
Michael Niedermayer
92b03cf926
Merge commit '601d6228c4811d8971a2412a759e1a4ab775ebe8'
...
* commit '601d6228c4811d8971a2412a759e1a4ab775ebe8':
flac: move picture parsing code in a separate file
Conflicts:
libavformat/Makefile
libavformat/flacdec.c
See: 1e5bbbfcf3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-13 09:37:21 +02:00
Michael Niedermayer
3ce0eddeab
Merge commit 'ed9245dba83f9add60f55718b537b0af2105c60e'
...
* commit 'ed9245dba83f9add60f55718b537b0af2105c60e':
oggparsevorbis: check allocations
Conflicts:
libavformat/oggparsevorbis.c
See: 033f1644b5
See: 84aea80f78
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-13 08:53:47 +02:00
Michael Niedermayer
b6ffe8afd9
Merge commit '9c15ef35d404fca2adc31276c1eedb11cf485461'
...
* commit '9c15ef35d404fca2adc31276c1eedb11cf485461':
oggparsevorbis: support official chapter extension
Conflicts:
libavformat/oggparsevorbis.c
See: 04b9836274
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-13 08:28:05 +02:00
Vittorio Giovara
fd2384f02b
oggparsevorbis: fail on memory allocation error
2013-10-12 15:37:56 +02:00
James Almer
c18375ec80
oggvorbisdec: add support for embedded cover art
...
Signed-off-by: James Almer <jamrial@gmail.com>
2013-10-12 15:34:10 +02:00
Vittorio Giovara
ed9245dba8
oggparsevorbis: check allocations
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-12 15:24:26 +02:00
James Almer
9c15ef35d4
oggparsevorbis: support official chapter extension
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-12 15:24:08 +02:00
Michael Niedermayer
4634871b51
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
oggparsevorbis: return meaningful errors
Conflicts:
libavformat/oggparsevorbis.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-06 12:24:13 +02:00
Vittorio Giovara
90e15e340d
oggparsevorbis: return meaningful errors
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-10-05 23:16:48 +02:00
Michael Niedermayer
f3968ab47c
Merge commit '49fe9c05f97bc2cfafd8fdcfea2f313d7c8e2c48'
...
* commit '49fe9c05f97bc2cfafd8fdcfea2f313d7c8e2c48':
oggparsevorbis: K&R formatting cosmetics
Conflicts:
libavformat/oggparsevorbis.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04 12:01:17 +02:00
Vittorio Giovara
49fe9c05f9
oggparsevorbis: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-10-03 23:26:09 +02:00
Michael Niedermayer
72eddc10fa
Merge commit 'd872fb0f7ff2ff0ba87f5ccf6a1a55ca2be472c9'
...
* commit 'd872fb0f7ff2ff0ba87f5ccf6a1a55ca2be472c9':
lavf: Reset the entry count and allocation size variables on av_reallocp failures
Conflicts:
libavformat/avienc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-27 12:13:41 +02:00
Martin Storsjö
d872fb0f7f
lavf: Reset the entry count and allocation size variables on av_reallocp failures
...
When av_reallocp fails, the associated variables that keep track of
the number of elements in the array (and in some cases, the
separate number of allocated elements) need to be reset.
Not all of these might technically be needed, but it's better to
reset them if in doubt, to make sure variables don't end up
conflicting.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-26 23:14:03 +03:00
Michael Niedermayer
20dfab33f5
Merge commit '5626f994f273af80fb100d4743b963304de9e05c'
...
* commit '5626f994f273af80fb100d4743b963304de9e05c':
avformat: Use av_reallocp() where suitable
Conflicts:
libavformat/avidec.c
libavformat/avienc.c
libavformat/aviobuf.c
libavformat/oggparsevorbis.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 11:01:26 +02:00
Alexandra Khirnova
5626f994f2
avformat: Use av_reallocp() where suitable
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-09-18 18:28:38 +02:00
Michael Niedermayer
070c22d53a
Merge commit '3562684db716d11de0b0dcc52748e9cd90d68132'
...
* commit '3562684db716d11de0b0dcc52748e9cd90d68132':
ogg: Always alloc the private context in vorbis_header
Conflicts:
libavformat/oggparsevorbis.c
See: 18b46a494e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-14 12:17:02 +02:00
Luca Barbato
3562684db7
ogg: Always alloc the private context in vorbis_header
...
It is possible to have an initial broken header and then valid packets.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-08-13 14:04:55 +02:00
Michael Niedermayer
f3b7f47070
avformat/oggparsevorbis: fix leak of tt
...
Fixes CID1061059
Fixes fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-07 17:20:39 +02:00
Michael Niedermayer
d0a882ab1d
avformat/oggparsevorbis: fix leak of ct
...
Fixes CID1061058
Fixes fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-07 17:18:19 +02:00
James Almer
04b9836274
oggparsevorbis: Support official chapter extension
...
Fixes ticket #1833
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 22:15:55 +02:00
James Almer
193782216f
vorbiscomment: Add support for embedded cover art
...
Fixes ticket #2655
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 19:21:23 +02:00
Reimar Döffinger
efa7f42020
Use the avstring.h locale-independent character type functions
...
Make sure the behavior does not change with the locale.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-07 15:16:36 +02:00
Reimar Döffinger
88d55b827d
Remove incorrect use of ctype.h functions.
...
As far as I can tell the code should not change behaviour
depending on locale in any of these places.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-03-03 21:44:10 +01:00
Michael Niedermayer
033f1644b5
fixup_vorbis_headers: add missing malloc failure check
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-30 20:04:14 +01:00
Paweł Hajdan, Jr
0451ff295a
oggparsevorbis: use av_realloc consistently
...
Memory passed to av_realloc cannot be allocated using memalign.
From realloc(3):
The realloc() function changes the size of the memory block pointed to
by ptr to size bytes. (...) Unless ptr is NULL, it must have been returned
by an earlier call to malloc(), calloc() or realloc().
The issue has been found by debugallocation, a part of google-perftools:
http://code.google.com/p/gperftools/ .
Signed-off-by: Paweł Hajdan, Jr <phajdan@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-30 19:54:35 +01:00
Luca Barbato
fba8e5b608
oggdec: fix faulty cleanup prototype
2013-01-09 21:07:48 +01:00
Michael Niedermayer
7a6beedd3f
oggparsevorbis: fix vorbis_cleanup return type
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-07 14:20:28 +01:00
Michael Niedermayer
1700be5855
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
oggdec: make sure the private parse data is cleaned up
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-07 14:20:21 +01:00
Luca Barbato
d894f74762
oggdec: make sure the private parse data is cleaned up
2013-01-06 17:59:54 +01:00
Michael Niedermayer
1d29624c73
oggparsevorbis: check channels
...
Fixes out of array accesses
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-17 20:51:50 +01:00
Michael Niedermayer
46a35959d8
Merge commit '7751e4693dd10ec98c20fbd9887233b575034272'
...
* commit '7751e4693dd10ec98c20fbd9887233b575034272':
ogg: check that the expected number of headers had been parsed
libx264: change default to closed gop to match x264cli
Use avcodec_free_frame() to free AVFrames.
lavf: use a malloced AVFrame in try_decode_frame().
lavc: add avcodec_free_frame().
lavc: ensure extended_data is set properly on decoding
lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults()
lavc: use av_mallocz to allocate AVFrames.
lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults
Conflicts:
doc/APIchanges
doc/examples/decoding_encoding.c
libavcodec/utils.c
libavcodec/version.h
libavfilter/src_movie.c
libavformat/oggdec.c
libavformat/oggdec.h
libavformat/oggparsetheora.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 15:15:16 +02:00
Luca Barbato
7751e4693d
ogg: check that the expected number of headers had been parsed
...
Not having the header for a codec is a tell-tale of a broken file.
2012-09-24 22:35:29 +02:00
Michael Niedermayer
7a72695c05
Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
...
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85':
Replace all CODEC_ID_* with AV_CODEC_ID_*
lavc: add AV prefix to codec ids.
Conflicts:
doc/APIchanges
doc/examples/decoding_encoding.c
doc/examples/muxing.c
ffmpeg.c
ffprobe.c
ffserver.c
libavcodec/8svx.c
libavcodec/avcodec.h
libavcodec/dnxhd_parser.c
libavcodec/dvdsubdec.c
libavcodec/error_resilience.c
libavcodec/h263dec.c
libavcodec/libvorbisenc.c
libavcodec/mjpeg_parser.c
libavcodec/mjpegenc.c
libavcodec/mpeg12.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/pcm.c
libavcodec/r210dec.c
libavcodec/utils.c
libavcodec/v210dec.c
libavcodec/version.h
libavdevice/alsa-audio-dec.c
libavdevice/bktr.c
libavdevice/v4l2.c
libavformat/asfdec.c
libavformat/asfenc.c
libavformat/avformat.h
libavformat/avidec.c
libavformat/caf.c
libavformat/electronicarts.c
libavformat/flacdec.c
libavformat/flvdec.c
libavformat/flvenc.c
libavformat/framecrcenc.c
libavformat/img2.c
libavformat/img2dec.c
libavformat/img2enc.c
libavformat/ipmovie.c
libavformat/isom.c
libavformat/matroska.c
libavformat/matroskadec.c
libavformat/matroskaenc.c
libavformat/mov.c
libavformat/movenc.c
libavformat/mp3dec.c
libavformat/mpeg.c
libavformat/mpegts.c
libavformat/mxf.c
libavformat/mxfdec.c
libavformat/mxfenc.c
libavformat/nsvdec.c
libavformat/nut.c
libavformat/oggenc.c
libavformat/pmpdec.c
libavformat/rawdec.c
libavformat/rawenc.c
libavformat/riff.c
libavformat/sdp.c
libavformat/utils.c
libavformat/vocenc.c
libavformat/wtv.c
libavformat/xmv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 22:45:46 +02:00
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
2012-08-07 16:00:24 +02:00
Michael Niedermayer
18b46a494e
oggparsevorbis: fix null ptr dereference
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-31 20:25:23 +02:00
Carl Eugen Hoyos
84aea80f78
oggparsevorbis.c: Check for OOM when using av_mallocz.
2012-05-06 12:00:19 +02:00
Michael Niedermayer
45a7b0674d
oggvorbis: fix the first 2 packets timestamps matching issue
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-05 10:57:53 +02:00
Michael Niedermayer
441dce2169
oggvorbis: move handling of first packets ts from parser to muxer.
...
The parser does not have enough knowledge it seems to do it
correctly.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-05 01:52:21 +02:00
Michael Niedermayer
fe5c5bccce
oggvorbisdec: Apply timestamp calculation always when timestamps arent known.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-05 00:00:40 +02:00
Michael Niedermayer
1f95ad48ff
oggvorbisdec: redesign special handling of first frames timestamp.
...
This also will make it possible to use the code for cases other than the start of a stream
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-04 23:59:26 +02:00
Michael Niedermayer
63eb01d9c1
oggvorbis: Try to fix pts off by 1 issue.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-04 15:49:37 +02:00
Michael Niedermayer
ca4a3f4a08
oggparsevorbis: Remove code messing with cur_dts.
...
This code caused first_dts to become corrupt and in value to be
around relative_ts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-11 14:56:02 +02:00
Justin Ruggles
f63412fc74
oggdec: output correct timestamps for Vorbis
...
Takes encoder delay into account by comparing first the coded page
duration with the calculated page duration. Handles last packet duration
if needed, also by comparing coded duration with calculated duration.
Also does better handling of timestamp generation for packets in the
first page for streamed ogg files where the start time is not
necessarily zero.
2012-03-20 14:39:57 -04:00
Justin Ruggles
5602a464c9
avcodec: add a Vorbis parser to get packet duration
...
This also allows for removing some of the Vorbis-related hacks.
2012-03-03 16:43:11 -05:00
Anton Khirnov
c3f9ebf743
lavf: make av_set_pts_info private.
...
It's supposed to be called only from (de)muxers.
2011-11-30 20:34:45 +01:00