#include <ffmpeg.h>

Public Member Functions | |
| FFMPEG (Asset *asset_in) | |
| ~FFMPEG () | |
| int | init (char *codec_string) |
| int | decode (uint8_t *data, long data_size, VFrame *frame_out) |
Static Public Member Functions | |
| static int | convert_cmodel (AVPicture *picture_in, PixelFormat pix_fmt, int width_in, int height_in, VFrame *frame_out) |
| static int | convert_cmodel (VFrame *frame_in, VFrame *frame_out) |
| static int | convert_cmodel_transfer (VFrame *frame_in, VFrame *frame_out) |
| static int | init_picture_from_frame (AVPicture *picture, VFrame *frame) |
| static CodecID | codec_id (char *codec_string) |
Static Private Member Functions | |
| static PixelFormat | color_model_to_pix_fmt (int color_model) |
| static int | pix_fmt_to_color_model (PixelFormat pix_fmt) |
Private Attributes | |
| int | got_picture |
| Asset * | asset |
| AVCodec * | codec |
| AVCodecContext * | context |
| AVFrame * | picture |
Definition at line 13 of file ffmpeg.h.
| FFMPEG::FFMPEG | ( | Asset * | asset_in | ) |
| FFMPEG::~FFMPEG | ( | ) |
Definition at line 48 of file ffmpeg.C.
References avcodec_close(), context, and picture.

| int FFMPEG::init | ( | char * | codec_string | ) |
Definition at line 24 of file ffmpeg.C.
References avcodec_alloc_context(), avcodec_alloc_frame(), avcodec_find_decoder(), avcodec_init(), avcodec_open(), avcodec_register_all(), codec, codec_id(), context, NULL, and picture.
Referenced by FileYUV::write_frames().

| int FFMPEG::decode | ( | uint8_t * | data, | |
| long | data_size, | |||
| VFrame * | frame_out | |||
| ) |
Definition at line 368 of file ffmpeg.C.
References asset, avcodec_decode_video(), context, convert_cmodel(), FFMPEG_LATENCY, got_picture, Asset::height, picture, AVCodecContext::pix_fmt, and Asset::width.
Referenced by FileYUV::close_file(), and FileYUV::write_frames().

| int FFMPEG::convert_cmodel | ( | AVPicture * | picture_in, | |
| PixelFormat | pix_fmt, | |||
| int | width_in, | |||
| int | height_in, | |||
| VFrame * | frame_out | |||
| ) | [static] |
Definition at line 235 of file ffmpeg.C.
References BC_RGBA8888, BC_TRANSPARENCY, cmodel_calculate_pixelsize(), cmodel_is_planar(), cmodel_transfer(), color_model_to_pix_fmt(), AVPicture::data, VFrame::get_color_model(), VFrame::get_h(), VFrame::get_rows(), VFrame::get_u(), VFrame::get_v(), VFrame::get_w(), VFrame::get_y(), img_convert(), init_picture_from_frame(), AVPicture::linesize, NULL, PIX_FMT_NB, PIX_FMT_RGBA32, and pix_fmt_to_color_model().
Referenced by decode(), FileYUV::read_frame(), and FileYUV::write_frames().

Definition at line 144 of file ffmpeg.C.
References color_model_to_pix_fmt(), convert_cmodel_transfer(), AVPicture::data, VFrame::get_color_model(), VFrame::get_h(), VFrame::get_w(), img_convert(), init_picture_from_frame(), AVPicture::linesize, NULL, and PIX_FMT_NB.

Definition at line 201 of file ffmpeg.C.
References cmodel_transfer(), VFrame::get_color_model(), VFrame::get_h(), VFrame::get_rows(), VFrame::get_u(), VFrame::get_v(), VFrame::get_w(), and VFrame::get_y().
Referenced by convert_cmodel().

Definition at line 121 of file ffmpeg.C.
References avpicture_fill(), cmodel_is_planar(), color_model_to_pix_fmt(), AVPicture::data, VFrame::get_color_model(), VFrame::get_data(), VFrame::get_h(), VFrame::get_u(), VFrame::get_v(), VFrame::get_w(), and VFrame::get_y().
Referenced by convert_cmodel().

| CodecID FFMPEG::codec_id | ( | char * | codec_string | ) | [static] |
Definition at line 55 of file ffmpeg.C.
References CODEC_ID_DVVIDEO, CODEC_ID_MPEG4, CODEC_ID_NONE, CODEC_IS, QUICKTIME_DIVX, QUICKTIME_DV, QUICKTIME_DVSD, and QUICKTIME_MP4V.
Referenced by FileYUV::can_copy_from(), init(), and FileYUV::write_frames().
| PixelFormat FFMPEG::color_model_to_pix_fmt | ( | int | color_model | ) | [static, private] |
Definition at line 69 of file ffmpeg.C.
References BC_BGR888, BC_BGR8888, BC_RGB565, BC_RGB888, BC_YUV411P, BC_YUV420P, BC_YUV422, BC_YUV422P, BC_YUV444P, PIX_FMT_BGR24, PIX_FMT_NB, PIX_FMT_RGB24, PIX_FMT_RGB565, PIX_FMT_RGBA32, PIX_FMT_YUV411P, PIX_FMT_YUV420P, PIX_FMT_YUV422, PIX_FMT_YUV422P, and PIX_FMT_YUV444P.
Referenced by convert_cmodel(), and init_picture_from_frame().
| int FFMPEG::pix_fmt_to_color_model | ( | PixelFormat | pix_fmt | ) | [static, private] |
Definition at line 95 of file ffmpeg.C.
References BC_BGR888, BC_BGR8888, BC_RGB565, BC_RGB888, BC_TRANSPARENCY, BC_YUV411P, BC_YUV420P, BC_YUV422, BC_YUV422P, BC_YUV444P, PIX_FMT_BGR24, PIX_FMT_RGB24, PIX_FMT_RGB565, PIX_FMT_RGBA32, PIX_FMT_YUV411P, PIX_FMT_YUV420P, PIX_FMT_YUV422, PIX_FMT_YUV422P, and PIX_FMT_YUV444P.
Referenced by convert_cmodel().
int FFMPEG::got_picture [private] |
Asset* FFMPEG::asset [private] |
AVCodec* FFMPEG::codec [private] |
AVCodecContext* FFMPEG::context [private] |
AVFrame* FFMPEG::picture [private] |
1.5.5