All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
vc1dec.c File Reference

VC-1 and WMV3 decoder. More...

#include "avcodec.h"
#include "blockdsp.h"
#include "get_bits.h"
#include "internal.h"
#include "mpeg_er.h"
#include "mpegvideo.h"
#include "msmpeg4data.h"
#include "vc1.h"
#include "vc1data.h"
#include "vdpau_internal.h"
#include "libavutil/avassert.h"

Go to the source code of this file.


#define transpose(x)   (((x) >> 3) | (((x) & 7) << 3))


av_cold int ff_vc1_decode_init_alloc_tables (VC1Context *v)
av_cold void ff_vc1_init_transposed_scantables (VC1Context *v)
static av_cold int vc1_decode_init (AVCodecContext *avctx)
 Initialize a VC1/WMV3 decoder.
av_cold int ff_vc1_decode_end (AVCodecContext *avctx)
 Close a VC1/WMV3 decoder.
static int vc1_decode_frame (AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
 Decode a VC1/WMV3 frame.


static const AVProfile profiles []
static enum AVPixelFormat vc1_hwaccel_pixfmt_list_420 []
AVCodec ff_vc1_decoder

Detailed Description

VC-1 and WMV3 decoder.

Definition in file vc1dec.c.

Macro Definition Documentation

#define transpose (   x)    (((x) >> 3) | (((x) & 7) << 3))

Function Documentation

av_cold int ff_vc1_decode_init_alloc_tables ( VC1Context v)

Definition at line 322 of file vc1dec.c.

Referenced by vc1_decode_frame(), vc1_decode_init(), and wmv9_init().

av_cold void ff_vc1_init_transposed_scantables ( VC1Context v)

Definition at line 398 of file vc1dec.c.

Referenced by vc1_decode_init(), and wmv9_init().

static av_cold int vc1_decode_init ( AVCodecContext avctx)

Initialize a VC1/WMV3 decoder.


TODO: Handle VC-1 IDUs (Transport level?)

TODO: Decypher remaining bits in extra_data

Definition at line 417 of file vc1dec.c.

av_cold int ff_vc1_decode_end ( AVCodecContext avctx)

Close a VC1/WMV3 decoder.

Initial try at using MpegEncContext stuff

Definition at line 572 of file vc1dec.c.

Referenced by mss2_decode_end(), vc1_decode_frame(), and vc1_decode_init().

static int vc1_decode_frame ( AVCodecContext avctx,
void data,
int *  got_frame,
AVPacket avpkt 

Decode a VC1/WMV3 frame.

TODO: Handle VC-1 IDUs (Transport level?)

Definition at line 607 of file vc1dec.c.

Variable Documentation

const AVProfile profiles[]
Initial value:
= {
{ FF_PROFILE_VC1_SIMPLE, "Simple" },
{ FF_PROFILE_VC1_MAIN, "Main" },
{ FF_PROFILE_VC1_COMPLEX, "Complex" },
{ FF_PROFILE_VC1_ADVANCED, "Advanced" },

Definition at line 1059 of file vc1dec.c.

enum AVPixelFormat vc1_hwaccel_pixfmt_list_420[]
Initial value:

Definition at line 1067 of file vc1dec.c.

AVCodec ff_vc1_decoder
Initial value:
= {
.name = "vc1",
.long_name = NULL_IF_CONFIG_SMALL("SMPTE VC-1"),
.priv_data_size = sizeof(VC1Context),
.capabilities = CODEC_CAP_DR1 | CODEC_CAP_DELAY,

Definition at line 1081 of file vc1dec.c.