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>
11 years ago
Alexandra Khirnova
5626f994f2
avformat: Use av_reallocp() where suitable
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
11 years ago
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
11 years ago
Michael Niedermayer
f3b7f47070
avformat/oggparsevorbis: fix leak of tt
...
Fixes CID1061059
Fixes fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
d0a882ab1d
avformat/oggparsevorbis: fix leak of ct
...
Fixes CID1061058
Fixes fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
12 years ago
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>
12 years ago
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>
12 years ago
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>
12 years ago
Michael Niedermayer
033f1644b5
fixup_vorbis_headers: add missing malloc failure check
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
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>
12 years ago
Luca Barbato
fba8e5b608
oggdec: fix faulty cleanup prototype
12 years ago
Michael Niedermayer
7a6beedd3f
oggparsevorbis: fix vorbis_cleanup return type
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Luca Barbato
d894f74762
oggdec: make sure the private parse data is cleaned up
12 years ago
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>
12 years ago
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.
12 years ago
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
12 years ago
Michael Niedermayer
18b46a494e
oggparsevorbis: fix null ptr dereference
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Carl Eugen Hoyos
84aea80f78
oggparsevorbis.c: Check for OOM when using av_mallocz.
13 years ago
Michael Niedermayer
45a7b0674d
oggvorbis: fix the first 2 packets timestamps matching issue
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
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>
13 years ago
Michael Niedermayer
fe5c5bccce
oggvorbisdec: Apply timestamp calculation always when timestamps arent known.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
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>
13 years ago
Michael Niedermayer
63eb01d9c1
oggvorbis: Try to fix pts off by 1 issue.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
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>
13 years ago
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.
13 years ago
Justin Ruggles
5602a464c9
avcodec: add a Vorbis parser to get packet duration
...
This also allows for removing some of the Vorbis-related hacks.
13 years ago
Anton Khirnov
c3f9ebf743
lavf: make av_set_pts_info private.
...
It's supposed to be called only from (de)muxers.
13 years ago
Anton Khirnov
1fa395e471
lavf: use avpriv_ prefix for ff_new_chapter().
...
It's used in libavdevice.
13 years ago
Anton Khirnov
d2d67e424f
Remove all uses of now deprecated metadata functions.
14 years ago
Anton Khirnov
f81946729e
lavf: move internal functions from avformat.h to internal.h
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 19711af5cd
)
14 years ago
Anton Khirnov
19711af5cd
lavf: move internal functions from avformat.h to internal.h
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Reimar Döffinger
a351110eea
Always use av_set_pts_info to set the stream time base.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Reimar Döffinger
5603df39df
Always use av_set_pts_info to set the stream time base.
14 years ago
Reimar Döffinger
403fa3cf07
Ogg: discard non-essential metadata from Vorbis header when creating extradata
...
The first part of the metadata, the "vendor" string, is required by
libvorbis, it will refuse to play when it is not available.
Also we do not currently parse that part into metadata so it would also
be lost if we removed it as well.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 8cb3c557a9
)
14 years ago
Reimar Döffinger
8cb3c557a9
Ogg: discard non-essential metadata from Vorbis header when creating extradata
...
The first part of the metadata, the "vendor" string, is required by
libvorbis, it will refuse to play when it is not available.
Also we do not currently parse that part into metadata so it would also
be lost if we removed it as well.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Reimar Döffinger
ce20edb7bd
Vorbis-in-Ogg: Do not set timebase to invalid values
...
Avoids an assert when the sample rate is invalid and the timebase
is thus set to e.g. 1/0.
Sample file is http://samples.mplayerhq.hu/ogg/fuzzed-srate-crash.ogg
This is a quick fix for a crash, not a final solution.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Reimar Döffinger
609bdf813d
Vorbis-in-Ogg: Do not set timebase to invalid values
...
Avoids an assert when the sample rate is invalid and the timebase
is thus set to e.g. 1/0.
Sample file is http://samples.mplayerhq.hu/ogg/fuzzed-srate-crash.ogg
14 years ago
Anton Khirnov
ad7768f4c4
add ff_ prefix to metadata_conv()
...
patch by Anton Khirnov anton _at_ khirnov _dot_ net
Originally committed as revision 25505 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Martin Storsjö
fb66c31da4
Fix building, include the header instead of the source file
...
Builds only seemed to have been broken in some configurations, though.
Originally committed as revision 25499 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Anton Khirnov
03700d399b
Export metadata in the generic format. Deprecate old conversion API.
...
patch by Anton Khirnov anton _at_ khirnov _dot_ net
Originally committed as revision 25493 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Alex Converse
73c44cb286
oggparsevorbis: Add some sanity checks to header packet ordering/presence.
...
Originally committed as revision 24740 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Stefano Sabatini
72415b2adb
Define AVMediaType enum, and use it instead of enum CodecType, which
...
is deprecated and will be dropped at the next major bump.
Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
James Darnley
66061a1220
Add VorbisComment writing to FLAC files.
...
Patch by James Darnley <james darnley at gmail>.
Originally committed as revision 22605 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
8730fad595
oggdec: Parse ogm chapters
...
Originally committed as revision 22477 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
533c30fced
Const correctness for vorbis_comment
...
Originally committed as revision 22474 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
b53cde48bd
oggdec: Metadata is per-stream; don't merge multiple streams' together
...
Originally committed as revision 22473 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
e4d2d8c5d7
Add ff_ prefix to vorbis_comment
...
Originally committed as revision 22472 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
2ac41150c0
oggdec: Fix memory leak in setting up vorbis headers
...
Originally committed as revision 22460 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
8f8320d7c3
oggdec: Don't use ogg_stream's seq for vorbis or speex headers
...
Originally committed as revision 22459 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago