FFmpeg
Data Structures | Macros | Functions | Variables
segafilmenc.c File Reference

Sega FILM (.cpk) file muxer. More...

#include "libavutil/intreadwrite.h"
#include "avformat.h"
#include "internal.h"
#include "avio_internal.h"

Go to the source code of this file.

Data Structures

struct  FILMPacket
 
struct  FILMOutputContext
 

Macros

#define READ_BLOCK
 

Functions

static int film_write_packet_to_header (AVFormatContext *format_context, FILMPacket *pkt)
 
static int film_write_packet (AVFormatContext *format_context, AVPacket *pkt)
 
static int get_audio_codec_id (enum AVCodecID codec_id)
 
static int film_init (AVFormatContext *format_context)
 
static int shift_data (AVFormatContext *format_context, int64_t shift_size)
 
static int film_write_header (AVFormatContext *format_context)
 

Variables

static const AVClass film_muxer_class
 
AVOutputFormat ff_segafilm_muxer
 

Detailed Description

Sega FILM (.cpk) file muxer.

Author
Misty De Meo misty.nosp@m.@bre.nosp@m.w.sh
See also
For more information regarding the Sega FILM file format, visit: http://wiki.multimedia.cx/index.php?title=Sega_FILM

Definition in file segafilmenc.c.

Macro Definition Documentation

#define READ_BLOCK
Value:
do { \
read_size[read_buf_id] = avio_read(read_pb, read_buf[read_buf_id], shift_size); \
read_buf_id ^= 1; \
} while (0)
int avio_read(AVIOContext *s, unsigned char *buf, int size)
Read size bytes from AVIOContext into buf.
Definition: aviobuf.c:650

Referenced by shift_data().

Function Documentation

static int film_write_packet_to_header ( AVFormatContext format_context,
FILMPacket pkt 
)
static

Definition at line 57 of file segafilmenc.c.

Referenced by film_write_header().

static int film_write_packet ( AVFormatContext format_context,
AVPacket pkt 
)
static

Definition at line 85 of file segafilmenc.c.

static int get_audio_codec_id ( enum AVCodecID  codec_id)
static

Definition at line 143 of file segafilmenc.c.

Referenced by film_init(), and film_write_header().

static int film_init ( AVFormatContext format_context)
static

Definition at line 159 of file segafilmenc.c.

static int shift_data ( AVFormatContext format_context,
int64_t  shift_size 
)
static

Definition at line 203 of file segafilmenc.c.

Referenced by film_write_header().

static int film_write_header ( AVFormatContext format_context)
static

Definition at line 260 of file segafilmenc.c.

Variable Documentation

const AVClass film_muxer_class
static
Initial value:
= {
.class_name = "Sega FILM muxer",
.item_name = av_default_item_name,
}
#define LIBAVUTIL_VERSION_INT
Definition: version.h:85
const char * av_default_item_name(void *ptr)
Return the context name.
Definition: log.c:191

Definition at line 381 of file segafilmenc.c.

AVOutputFormat ff_segafilm_muxer
Initial value:
= {
.name = "film_cpk",
.long_name = NULL_IF_CONFIG_SMALL("Sega FILM / CPK"),
.extensions = "cpk",
.priv_data_size = sizeof(FILMOutputContext),
.video_codec = AV_CODEC_ID_CINEPAK,
.priv_class = &film_muxer_class,
}
static void write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int unqueue)
Definition: ffmpeg.c:689
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:35
static const AVClass film_muxer_class
Definition: segafilmenc.c:381
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
static int film_init(AVFormatContext *format_context)
Definition: segafilmenc.c:159
static int film_write_packet(AVFormatContext *format_context, AVPacket *pkt)
Definition: segafilmenc.c:85
static int write_trailer(AVFormatContext *s1)
Definition: v4l2enc.c:94
static int film_write_header(AVFormatContext *format_context)
Definition: segafilmenc.c:260

Definition at line 387 of file segafilmenc.c.