FFmpeg
|
#include <inttypes.h>
#include "libavutil/channel_layout.h"
#include "libavutil/common.h"
#include "avformat.h"
#include "internal.h"
#include "gxf.h"
#include "libavcodec/mpeg12data.h"
Go to the source code of this file.
Data Structures | |
struct | gxf_stream_info |
Macros | |
#define | READ_ONE() |
Functions | |
static int | add_timecode_metadata (AVDictionary **pm, const char *key, uint32_t timecode, int fields_per_frame) |
parse gxf timecode and add it to metadata | |
static int | parse_packet_header (AVIOContext *pb, GXFPktType *type, int *length) |
parses a packet header, extracting type and length | |
static int | gxf_probe (AVProbeData *p) |
check if file starts with a PKT_MAP header | |
static int | get_sindex (AVFormatContext *s, int id, int format) |
gets the stream index for the track with the specified id, creates new stream if not found | |
static void | gxf_material_tags (AVIOContext *pb, int *len, struct gxf_stream_info *si) |
filters out interesting tags from material information. | |
static AVRational | fps_tag2avr (int32_t fps) |
convert fps tag value to AVRational fps | |
static AVRational | fps_umf2avr (uint32_t flags) |
convert UMF attributes flags to AVRational fps | |
static void | gxf_track_tags (AVIOContext *pb, int *len, struct gxf_stream_info *si) |
filters out interesting tags from track information. | |
static void | gxf_read_index (AVFormatContext *s, int pkt_len) |
read index from FLT packet into stream 0 av_index | |
static int | gxf_header (AVFormatContext *s) |
static int64_t | gxf_resync_media (AVFormatContext *s, uint64_t max_interval, int track, int timestamp) |
resync the stream on the next media packet with specified properties | |
static int | gxf_packet (AVFormatContext *s, AVPacket *pkt) |
static int | gxf_seek (AVFormatContext *s, int stream_index, int64_t timestamp, int flags) |
static int64_t | gxf_read_timestamp (AVFormatContext *s, int stream_index, int64_t *pos, int64_t pos_limit) |
Variables | |
static const AVRational | frame_rate_tab [] |
AVInputFormat | ff_gxf_demuxer |
#define READ_ONE | ( | ) |
|
static |
parse gxf timecode and add it to metadata
Definition at line 42 of file gxf.c.
Referenced by gxf_header().
|
static |
parses a packet header, extracting type and length
pb | AVIOContext to read header from |
type | detected packet type is stored here |
length | detected packet length, excluding header is stored here |
Definition at line 67 of file gxf.c.
Referenced by gxf_header(), gxf_packet(), and gxf_resync_media().
|
static |
|
static |
gets the stream index for the track with the specified id, creates new stream if not found
id | id of stream to find / add |
format | stream format identifier |
Definition at line 104 of file gxf.c.
Referenced by gxf_header(), and gxf_packet().
|
static |
filters out interesting tags from material information.
len | length of tag section, will be adjusted to contain remaining bytes |
si | struct to store collected information into |
Definition at line 198 of file gxf.c.
Referenced by gxf_header().
|
static |
convert fps tag value to AVRational fps
fps | fps value from tag |
Definition at line 236 of file gxf.c.
Referenced by gxf_track_tags().
|
static |
convert UMF attributes flags to AVRational fps
flags | UMF flags to convert |
Definition at line 246 of file gxf.c.
Referenced by gxf_header().
|
static |
filters out interesting tags from track information.
len | length of tag section, will be adjusted to contain remaining bytes |
si | struct to store collected information into |
Definition at line 258 of file gxf.c.
Referenced by gxf_header().
|
static |
read index from FLT packet into stream 0 av_index
Definition at line 285 of file gxf.c.
Referenced by gxf_header(), and gxf_packet().
|
static |
|
static |
resync the stream on the next media packet with specified properties
max_interval | how many bytes to search for matching packet at most |
track | track id the media packet must belong to, -1 for any |
timestamp | minimum timestamp (== field number) the packet must have, -1 for any |
Definition at line 457 of file gxf.c.
Referenced by gxf_read_timestamp(), and gxf_seek().
|
static |
|
static |
|
static |
|
static |
AVInputFormat ff_gxf_demuxer |