comparison fraps.c @ 9355:54bc8a2727b0 libavcodec

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.
author rbultje
date Tue, 07 Apr 2009 15:59:50 +0000
parents e9d9d946f213
children 0dce4fe6e6f3
comparison
equal deleted inserted replaced
9354:174309386512 9355:54bc8a2727b0
128 * @param buf_size size of input data frame 128 * @param buf_size size of input data frame
129 * @return number of consumed bytes on success or negative if decode fails 129 * @return number of consumed bytes on success or negative if decode fails
130 */ 130 */
131 static int decode_frame(AVCodecContext *avctx, 131 static int decode_frame(AVCodecContext *avctx,
132 void *data, int *data_size, 132 void *data, int *data_size,
133 const uint8_t *buf, int buf_size) 133 AVPacket *avpkt)
134 { 134 {
135 const uint8_t *buf = avpkt->data;
136 int buf_size = avpkt->size;
135 FrapsContext * const s = avctx->priv_data; 137 FrapsContext * const s = avctx->priv_data;
136 AVFrame *frame = data; 138 AVFrame *frame = data;
137 AVFrame * const f = (AVFrame*)&s->frame; 139 AVFrame * const f = (AVFrame*)&s->frame;
138 uint32_t header; 140 uint32_t header;
139 unsigned int version,header_size; 141 unsigned int version,header_size;