FFmpeg
Macros | Functions | Variables
s337m.c File Reference
#include "libavutil/intreadwrite.h"
#include "avformat.h"
#include "demux.h"
#include "internal.h"
#include "spdif.h"

Go to the source code of this file.

Macros

#define MARKER_16LE   0x72F81F4E
 
#define MARKER_20LE   0x20876FF0E154
 
#define MARKER_24LE   0x72F8961F4EA5
 
#define IS_16LE_MARKER(state)   ((state & 0xFFFFFFFF) == MARKER_16LE)
 
#define IS_20LE_MARKER(state)   ((state & 0xF0FFFFF0FFFF) == MARKER_20LE)
 
#define IS_24LE_MARKER(state)   ((state & 0xFFFFFFFFFFFF) == MARKER_24LE)
 
#define IS_LE_MARKER(state)   (IS_16LE_MARKER(state) || IS_20LE_MARKER(state) || IS_24LE_MARKER(state))
 

Functions

static int s337m_get_offset_and_codec (void *avc, uint64_t state, int data_type, int data_size, int *offset, enum AVCodecID *codec)
 
static int s337m_probe (const AVProbeData *p)
 
static int s337m_read_header (AVFormatContext *s)
 
static void bswap_buf24 (uint8_t *data, int size)
 
static int s337m_read_packet (AVFormatContext *s, AVPacket *pkt)
 

Variables

const FFInputFormat ff_s337m_demuxer
 

Macro Definition Documentation

◆ MARKER_16LE

#define MARKER_16LE   0x72F81F4E

Definition at line 27 of file s337m.c.

◆ MARKER_20LE

#define MARKER_20LE   0x20876FF0E154

Definition at line 28 of file s337m.c.

◆ MARKER_24LE

#define MARKER_24LE   0x72F8961F4EA5

Definition at line 29 of file s337m.c.

◆ IS_16LE_MARKER

#define IS_16LE_MARKER (   state)    ((state & 0xFFFFFFFF) == MARKER_16LE)

Definition at line 31 of file s337m.c.

◆ IS_20LE_MARKER

#define IS_20LE_MARKER (   state)    ((state & 0xF0FFFFF0FFFF) == MARKER_20LE)

Definition at line 32 of file s337m.c.

◆ IS_24LE_MARKER

#define IS_24LE_MARKER (   state)    ((state & 0xFFFFFFFFFFFF) == MARKER_24LE)

Definition at line 33 of file s337m.c.

◆ IS_LE_MARKER

#define IS_LE_MARKER (   state)    (IS_16LE_MARKER(state) || IS_20LE_MARKER(state) || IS_24LE_MARKER(state))

Definition at line 34 of file s337m.c.

Function Documentation

◆ s337m_get_offset_and_codec()

static int s337m_get_offset_and_codec ( void *  avc,
uint64_t  state,
int  data_type,
int  data_size,
int offset,
enum AVCodecID codec 
)
static

Definition at line 36 of file s337m.c.

Referenced by s337m_probe(), and s337m_read_packet().

◆ s337m_probe()

static int s337m_probe ( const AVProbeData p)
static

Definition at line 87 of file s337m.c.

◆ s337m_read_header()

static int s337m_read_header ( AVFormatContext s)
static

Definition at line 132 of file s337m.c.

◆ bswap_buf24()

static void bswap_buf24 ( uint8_t *  data,
int  size 
)
static

Definition at line 138 of file s337m.c.

Referenced by s337m_read_packet().

◆ s337m_read_packet()

static int s337m_read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 146 of file s337m.c.

Variable Documentation

◆ ff_s337m_demuxer

const FFInputFormat ff_s337m_demuxer
Initial value:
= {
.p.name = "s337m",
.p.long_name = NULL_IF_CONFIG_SMALL("SMPTE 337M"),
.p.flags = AVFMT_GENERIC_INDEX,
.read_probe = s337m_probe,
.read_header = s337m_read_header,
.read_packet = s337m_read_packet,
}

Definition at line 191 of file s337m.c.

s337m_read_packet
static int s337m_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: s337m.c:146
AVFMT_GENERIC_INDEX
#define AVFMT_GENERIC_INDEX
Use generic index building code.
Definition: avformat.h:480
s337m_read_header
static int s337m_read_header(AVFormatContext *s)
Definition: s337m.c:132
s337m_probe
static int s337m_probe(const AVProbeData *p)
Definition: s337m.c:87
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:94