libcdio.c File Reference

libcdio CD grabbing More...

#include <cdio/cdda.h>
#include <cdio/paranoia.h>
#include "libavutil/log.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavformat/avformat.h"
#include "libavformat/internal.h"

Go to the source code of this file.

Data Structures

struct  CDIOContext

Macros

#define OFFSET(x)   offsetof(CDIOContext, x)
#define DEC   AV_OPT_FLAG_DECODING_PARAM

Typedefs

typedef struct CDIOContext CDIOContext

Functions

static av_cold int read_header (AVFormatContext *ctx, AVFormatParameters *ap)
static int read_packet (AVFormatContext *ctx, AVPacket *pkt)
static av_cold int read_close (AVFormatContext *ctx)
static int read_seek (AVFormatContext *ctx, int stream_index, int64_t timestamp, int flags)

Variables

static const AVOption options []
static const AVClass libcdio_class
AVInputFormat ff_libcdio_demuxer

Detailed Description

libcdio CD grabbing

Definition in file libcdio.c.

Macro Definition Documentation

#define DEC   AV_OPT_FLAG_DECODING_PARAM

Definition at line 160 of file libcdio.c.

#define OFFSET (   x)    offsetof(CDIOContext, x)

Definition at line 159 of file libcdio.c.

Typedef Documentation

typedef struct CDIOContext CDIOContext

Function Documentation

static av_cold int read_close ( AVFormatContext ctx)
static

Definition at line 140 of file libcdio.c.

static av_cold int read_header ( AVFormatContext ctx,
AVFormatParameters ap 
)
static

Definition at line 49 of file libcdio.c.

static int read_packet ( AVFormatContext ctx,
AVPacket pkt 
)
static

Definition at line 109 of file libcdio.c.

Referenced by avio_alloc_context(), and ffio_init_context().

static int read_seek ( AVFormatContext ctx,
int  stream_index,
int64_t  timestamp,
int  flags 
)
static

Definition at line 148 of file libcdio.c.

Variable Documentation

AVInputFormat ff_libcdio_demuxer
Initial value:
{
.name = "libcdio",
.read_header = read_header,
.read_packet = read_packet,
.read_close = read_close,
.read_seek = read_seek,
.priv_data_size = sizeof(CDIOContext),
.priv_class = &libcdio_class,
}

Definition at line 177 of file libcdio.c.

const AVClass libcdio_class
static
Initial value:
{
.class_name = "libcdio indev",
.item_name = av_default_item_name,
.option = options,
}

Definition at line 170 of file libcdio.c.

const AVOption options[]
static
Initial value:
{
{ "speed", "Drive reading speed.", OFFSET(speed), AV_OPT_TYPE_INT, { 0 }, 0, INT_MAX, DEC },
{ "paranoia_mode", "Error recovery mode.", OFFSET(paranoia_mode), AV_OPT_TYPE_FLAGS, { 0 }, INT_MIN, INT_MAX, DEC, "paranoia_mode" },
{ "verify", "Verify data integrity in overlap area", 0, AV_OPT_TYPE_CONST, { PARANOIA_MODE_VERIFY }, 0, 0, DEC, "paranoia_mode" },
{ "overlap", "Perform overlapped reads.", 0, AV_OPT_TYPE_CONST, { PARANOIA_MODE_OVERLAP }, 0, 0, DEC, "paranoia_mode" },
{ "neverskip", "Do not skip failed reads.", 0, AV_OPT_TYPE_CONST, { PARANOIA_MODE_NEVERSKIP }, 0, 0, DEC, "paranoia_mode" },
{ NULL },
}

Definition at line 161 of file libcdio.c.