FFmpeg
Data Structures | Functions | Variables
mccdec.c File Reference
#include "avformat.h"
#include "internal.h"
#include "subtitles.h"
#include "libavutil/avstring.h"
#include "libavutil/bprint.h"
#include "libavutil/intreadwrite.h"

Go to the source code of this file.

Data Structures

struct  MCCContext
 
struct  alias
 

Functions

static int mcc_probe (const AVProbeData *p)
 
static int convert (uint8_t x)
 
static int mcc_read_header (AVFormatContext *s)
 

Variables

static const alias aliases [20]
 
const AVInputFormat ff_mcc_demuxer
 

Function Documentation

◆ mcc_probe()

static int mcc_probe ( const AVProbeData p)
static

Definition at line 33 of file mccdec.c.

◆ convert()

static int convert ( uint8_t  x)
static

Definition at line 51 of file mccdec.c.

Referenced by mcc_read_header().

◆ mcc_read_header()

static int mcc_read_header ( AVFormatContext s)
static

Definition at line 91 of file mccdec.c.

Variable Documentation

◆ aliases

const alias aliases[20]
static
Initial value:
= {
{ .key = 16, .len = 3, .value = "\xFA\x0\x0", },
{ .key = 17, .len = 6, .value = "\xFA\x0\x0\xFA\x0\x0", },
{ .key = 18, .len = 9, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 19, .len = 12, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 20, .len = 15, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 21, .len = 18, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 22, .len = 21, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 23, .len = 24, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 24, .len = 27, .value = "\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0\xFA\x0\x0", },
{ .key = 25, .len = 3, .value = "\xFB\x80\x80", },
{ .key = 26, .len = 3, .value = "\xFC\x80\x80", },
{ .key = 27, .len = 3, .value = "\xFD\x80\x80", },
{ .key = 28, .len = 2, .value = "\x96\x69", },
{ .key = 29, .len = 2, .value = "\x61\x01", },
{ .key = 30, .len = 3, .value = "\xFC\x80\x80", },
{ .key = 31, .len = 3, .value = "\xFC\x80\x80", },
{ .key = 32, .len = 4, .value = "\xE1\x00\x00\x00", },
{ .key = 33, .len = 0, .value = NULL, },
{ .key = 34, .len = 0, .value = NULL, },
{ .key = 35, .len = 1, .value = "\x0", },
}

Definition at line 68 of file mccdec.c.

Referenced by mcc_read_header().

◆ ff_mcc_demuxer

const AVInputFormat ff_mcc_demuxer
Initial value:
= {
.name = "mcc",
.long_name = NULL_IF_CONFIG_SMALL("MacCaption"),
.priv_data_size = sizeof(MCCContext),
.flags_internal = FF_FMT_INIT_CLEANUP,
.extensions = "mcc",
.read_seek2 = ff_subtitles_read_seek,
}

Definition at line 203 of file mccdec.c.

ff_subtitles_read_close
int ff_subtitles_read_close(AVFormatContext *s)
Definition: subtitles.c:329
FF_FMT_INIT_CLEANUP
#define FF_FMT_INIT_CLEANUP
For an AVInputFormat with this flag set read_close() needs to be called by the caller upon read_heade...
Definition: internal.h:49
MCCContext
Definition: mccdec.c:29
read_close
static av_cold int read_close(AVFormatContext *ctx)
Definition: libcdio.c:141
ff_subtitles_read_packet
int ff_subtitles_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: subtitles.c:315
read_header
static int read_header(FFV1Context *f)
Definition: ffv1dec.c:527
NULL
#define NULL
Definition: coverity.c:32
read_probe
static int read_probe(const AVProbeData *pd)
Definition: jvdec.c:55
NULL_IF_CONFIG_SMALL
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Definition: internal.h:117
mcc_probe
static int mcc_probe(const AVProbeData *p)
Definition: mccdec.c:33
ff_subtitles_read_seek
int ff_subtitles_read_seek(AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags)
Definition: subtitles.c:321
read_packet
static int read_packet(void *opaque, uint8_t *buf, int buf_size)
Definition: avio_reading.c:42
mcc_read_header
static int mcc_read_header(AVFormatContext *s)
Definition: mccdec.c:91