Commit Graph

60 Commits

Author SHA1 Message Date
Martin Storsjö f1e9398621 lavc: Rename avpriv_mpv_find_start_code after moving out from mpegvideo
Also move the declaration to internal.h, and add restrict qualifiers
to the declaration (as in the implementation).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:50:02 +02:00
Diego Biurrun 63d744e2be av_log_missing_feature() ---> avpriv_report_missing_feature() 2013-03-13 20:42:21 +01:00
Anton Khirnov 759001c534 lavc decoders: work with refcounted frames. 2013-03-08 07:38:30 +01:00
Diego Biurrun 88bd7fdc82 Drop DCTELEM typedef
It does not help as an abstraction and adds dsputil dependencies.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2013-01-22 18:32:56 -08:00
Anton Khirnov fb0cb11f09 cavsdec: export picture type in the output frame 2012-12-30 18:52:26 +01:00
Anton Khirnov 7d84826400 cavs: deMpegEncContextize
It does not use any of the mpegvideo infrastructure, just a few fields
from the context.

Fixes a segfault with the emu edge flag, since emu edge buffer is now
allocated as a part of the frame buffer allocation and cavs calls
ff_get_buffer() directly, it does not use mpegvideo buffer management.

Fixes a memleak of the last frame.
2012-12-30 18:48:11 +01:00
Anton Khirnov 185c2ef849 cavsdec: cosmetics, reformat 2012-12-30 18:47:30 +01:00
Anton Khirnov df9b956751 lavc: fix decode_frame() third parameter semantics for video decoders
It's got_frame, not data size
2012-12-04 21:45:36 +01:00
Anton Khirnov 594d4d5df3 lavc: add a wrapper for AVCodecContext.get_buffer().
It will be useful in the upcoming transition to refcounted AVFrames.
2012-12-04 21:41:59 +01:00
Martin Storsjö eaa9b2e66c avcodec: Rename avpriv_frame_rate_tab to ff_mpeg12_frame_rate_tab
This table doesn't need to be shared with libavformat any longer.
Add mpeg12 to the name to make it less ambiguous, while renaming it.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-10-18 14:26:14 +03:00
Diego Biurrun f75f4194d1 Restructure av_log_missing_feature message
Some invocations include a verb in the log message, others do not.  Yet
av_log_missing_feature expects callers to provide a verb.  Change the
function to include a verb instead and update the callers accordingly.
The result is a more natural function API and correct English in the
function invocations.
2012-10-09 11:39:26 +02:00
Michael Niedermayer c20a696306 cavsdec: check for changing w/h.
Our decoder does not support changing w/h.

Fixes CVE-2012-2777 and CVE-2012-2784.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-09-29 09:26:04 +02:00
Mans Rullgard 6efb698883 cavsdsp: set idct permutation independently of dsputil
CAVS uses its own idct so using dsputil to set the permutation
is fragile.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-07 11:42:35 +01:00
Diego Biurrun a6d9f9e60e cavs: Move inline functions only used in one file out of the header 2012-08-26 14:03:56 +02:00
Diego Biurrun ef07ac1e12 cavs: Move data tables used in only one place to that file 2012-08-26 14:03:55 +02:00
Anton Khirnov 36ef5369ee Replace all CODEC_ID_* with AV_CODEC_ID_* 2012-08-07 16:00:24 +02:00
Diego Biurrun 0177b7d23a Improve descriptiveness of a number of codec and container long names 2012-07-30 20:46:55 +02:00
Martin Storsjö 00c3b67b8a cosmetics: Align codec declarations
Also break some long lines, remove codec function placeholder comments
and add spaces in sample/pixel format lists.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-04-06 22:37:38 +03:00
Ronald S. Bultje 83f15a1228 avs: fix infinite loop on end-of-stream.
The codec would keep returning the last decoded frame if the stream
contains B-frames, since it wouldn't clear that frame from the list of
frames to be returned to the user.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-07 16:33:35 -08:00
Diego Biurrun 324deaa268 Replace AVFrame pointer type punning by proper struct member assignments. 2012-03-01 23:11:13 +01:00
Diego Biurrun 47c0ac96aa Replace AVFrame pointer casts by proper struct member accesses. 2012-03-01 23:11:11 +01:00
Martin Storsjö efd29844eb mpegvideo: Add ff_ prefix to nonstatic functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:23 +02:00
Diego Biurrun 3dc99a18d4 cosmetics: drop some pointless parentheses 2012-01-07 22:13:07 +01:00
Anton Khirnov 9138a130cd lavc: use avpriv_ prefix for ff_frame_rate_tab.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 773375c3d0 lavc: rename ff_find_start_code to avpriv_mpv_find_start_code
It's used in lavf.
2011-10-20 21:06:58 +02:00
Mans Rullgard 4a71da0f3a cavs: fix some crashes with invalid bitstreams
This removes all valgrind-reported invalid writes with one
specific test file.

Fixes http://www.ocert.org/advisories/ocert-2011-002.html

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-08-10 22:35:20 +01:00
Anton Khirnov ec6402b7c5 lavc: use designated initialisers for all codecs.
It's more readable and less prone to breakage.
2011-07-29 08:42:34 +02:00
Diego Biurrun 657ccb5ac7 Eliminate FF_COMMON_FRAME macro.
FF_COMMON_FRAME holds the contents of the AVFrame structure and is also copied
to struct Picture.  Replace by an embedded AVFrame structure in struct Picture.
2011-07-11 00:19:00 +02:00
Stefano Sabatini 975a1447f7 Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 12:18:44 +02:00
Mans Rullgard 2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Diego Elio Pettenò d36beb3f69 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 16:08:45 +00:00
Måns Rullgård f079a64aea Move cavs dsp functions to their own struct
Originally committed as revision 24685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 20:59:00 +00:00
Diego Biurrun ba87f0801d Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
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
2010-03-30 23:30:55 +00:00
Stefan Gehrer 35122bd93e add heuristic to discern the old sample clips from streams encoded
with rm52j encoder, a marker_bit has been added in the I-Frame syntax

Originally committed as revision 21836 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 16:43:45 +00:00
Stefan Gehrer 470de55aa1 fix slice header checking
Originally committed as revision 19303 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-30 06:44:32 +00:00
Stefano Sabatini 9106a698e7 Rename bitstream.h to get_bits.h.
Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 16:20:26 +00:00
Thilo Borgmann 7a00bbad21 Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.

Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.

Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Stefan Gehrer cd3356ff73 check for a stuffing byte at the end of a slice
Originally committed as revision 17559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 15:56:53 +00:00
Stefan Gehrer 88db5551cf change macroblock loop in inter frames so that after a
slice header the skip count is always parsed first

Originally committed as revision 17558 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 15:54:51 +00:00
Stefan Gehrer 6847ab4375 introduce a macroblock index to avoid a few x*width+y calculations
Originally committed as revision 17138 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 22:38:02 +00:00
Stefan Gehrer b9fce05205 fix multiple slices per frame
Originally committed as revision 17137 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 20:51:35 +00:00
Stefan Gehrer 4ca6f4b29c fix parsing of pic_structure
Originally committed as revision 17136 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 17:08:56 +00:00
Stefan Gehrer e090c70f2f avoid duplicating dsputil's clear_block
Originally committed as revision 17135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:45:02 +00:00
Stefan Gehrer ae2d3e3b25 time_code has 24 bits, not 16
Originally committed as revision 17134 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:36:01 +00:00
Stefan Gehrer d934de5c5d do not check for minimum slice start code, 0x00000100 is valid
Originally committed as revision 17133 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:34:45 +00:00
Diego Biurrun bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Stefan Gehrer 620b8a2ed7 fix doxygen file reference
Originally committed as revision 16816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 06:04:01 +00:00
Stefan Gehrer 74a4371d74 use assignment of structure instead of memcpy
Originally committed as revision 16644 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-16 17:58:38 +00:00
Stefan Gehrer bef01ca08f rename XXX_t enums to cavs_XXX to fix POSIX namespace issue
Originally committed as revision 16642 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-16 17:45:54 +00:00