FFmpeg  4.0
Macros | Functions | Variables
s337m.c File Reference
#include "libavutil/intreadwrite.h"
#include "avformat.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 (AVFormatContext *s, uint64_t state, int data_type, int data_size, int *offset, enum AVCodecID *codec)
 
static int s337m_probe (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

AVInputFormat ff_s337m_demuxer
 

Macro Definition Documentation

◆ MARKER_16LE

#define MARKER_16LE   0x72F81F4E

Definition at line 25 of file s337m.c.

◆ MARKER_20LE

#define MARKER_20LE   0x20876FF0E154

Definition at line 26 of file s337m.c.

◆ MARKER_24LE

#define MARKER_24LE   0x72F8961F4EA5

Definition at line 27 of file s337m.c.

◆ IS_16LE_MARKER

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

Definition at line 29 of file s337m.c.

Referenced by s337m_get_offset_and_codec(), s337m_probe(), and s337m_read_packet().

◆ IS_20LE_MARKER

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

Definition at line 30 of file s337m.c.

Referenced by s337m_get_offset_and_codec(), and s337m_probe().

◆ IS_24LE_MARKER

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

Definition at line 31 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 32 of file s337m.c.

Referenced by s337m_probe(), and s337m_read_packet().

Function Documentation

◆ s337m_get_offset_and_codec()

static int s337m_get_offset_and_codec ( AVFormatContext s,
uint64_t  state,
int  data_type,
int  data_size,
int offset,
enum AVCodecID codec 
)
static

Definition at line 34 of file s337m.c.

Referenced by s337m_probe(), and s337m_read_packet().

◆ s337m_probe()

static int s337m_probe ( AVProbeData p)
static

Definition at line 85 of file s337m.c.

◆ s337m_read_header()

static int s337m_read_header ( AVFormatContext s)
static

Definition at line 130 of file s337m.c.

◆ bswap_buf24()

static void bswap_buf24 ( uint8_t data,
int  size 
)
static

Definition at line 136 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 144 of file s337m.c.

Variable Documentation

◆ ff_s337m_demuxer

AVInputFormat ff_s337m_demuxer
Initial value:
= {
.name = "s337m",
.long_name = NULL_IF_CONFIG_SMALL("SMPTE 337M"),
.read_probe = s337m_probe,
.read_header = s337m_read_header,
.read_packet = s337m_read_packet,
}
static int s337m_read_header(AVFormatContext *s)
Definition: s337m.c:130
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
#define AVFMT_GENERIC_INDEX
Use generic index building code.
Definition: avformat.h:470
static int s337m_probe(AVProbeData *p)
Definition: s337m.c:85
static int s337m_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: s337m.c:144

Definition at line 199 of file s337m.c.