FFmpeg
4.0
|
#include <inttypes.h>
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/channel_layout.h"
#include "libavutil/internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/dict.h"
#include "avformat.h"
#include "avio_internal.h"
#include "internal.h"
#include "rmsipr.h"
#include "rm.h"
Go to the source code of this file.
Data Structures | |
struct | RMStream |
struct | RMDemuxContext |
Macros | |
#define | DEINT_ID_GENR MKTAG('g', 'e', 'n', 'r') |
interleaving for Cooker/ATRAC More... | |
#define | DEINT_ID_INT0 MKTAG('I', 'n', 't', '0') |
no interleaving needed More... | |
#define | DEINT_ID_INT4 MKTAG('I', 'n', 't', '4') |
interleaving for 28.8 More... | |
#define | DEINT_ID_SIPR MKTAG('s', 'i', 'p', 'r') |
interleaving for Sipro More... | |
#define | DEINT_ID_VBRF MKTAG('v', 'b', 'r', 'f') |
VBR case for AAC. More... | |
#define | DEINT_ID_VBRS MKTAG('v', 'b', 'r', 's') |
VBR case for AAC. More... | |
#define | RAW_PACKET_SIZE 1000 |
Variables | |
AVInputFormat | ff_rm_demuxer |
AVInputFormat | ff_rdt_demuxer |
AVInputFormat | ff_ivr_demuxer |
interleaving for Cooker/ATRAC
Definition at line 36 of file rmdec.c.
Referenced by ff_rm_parse_packet(), and rm_read_audio_stream_info().
no interleaving needed
Definition at line 37 of file rmdec.c.
Referenced by rm_read_audio_stream_info().
interleaving for 28.8
Definition at line 38 of file rmdec.c.
Referenced by ff_rm_parse_packet(), and rm_read_audio_stream_info().
interleaving for Sipro
Definition at line 39 of file rmdec.c.
Referenced by ff_rm_parse_packet(), and rm_read_audio_stream_info().
VBR case for AAC.
Definition at line 40 of file rmdec.c.
Referenced by ff_rm_parse_packet(), ff_rm_retrieve_cache(), and rm_read_audio_stream_info().
VBR case for AAC.
Definition at line 41 of file rmdec.c.
Referenced by ff_rm_parse_packet(), ff_rm_retrieve_cache(), and rm_read_audio_stream_info().
#define RAW_PACKET_SIZE 1000 |
Definition at line 677 of file rmdec.c.
Referenced by rm_read_packet().
|
static |
Definition at line 1060 of file rmdec.c.
Referenced by rm_read_header().
|
inlinestatic |
Definition at line 71 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), get_str8(), and rm_read_metadata().
|
static |
Definition at line 79 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), rm_read_audio_stream_info(), and rm_read_header().
|
static |
Definition at line 84 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), and rm_read_audio_stream_info().
|
static |
Definition at line 95 of file rmdec.c.
Referenced by rm_read_audio_stream_info(), and rm_read_header().
Definition at line 109 of file rmdec.c.
Referenced by ivr_read_header(), rdt_parse_sdp_line(), rm_read_header(), rm_read_header_old(), and rm_read_multi().
Definition at line 118 of file rmdec.c.
Referenced by rdt_close_context(), and rm_read_close().
|
static |
Definition at line 123 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), and rm_read_header_old().
int ff_rm_read_mdpr_codecdata | ( | AVFormatContext * | s, |
AVIOContext * | pb, | ||
AVStream * | st, | ||
RMStream * | rst, | ||
unsigned int | codec_data_size, | ||
const uint8_t * | mime | ||
) |
Read the MDPR chunk, which contains stream-specific codec initialization parameters.
s | context containing RMContext and AVIOContext for stream reading |
pb | context to read the data from |
st | the stream that the MDPR chunk belongs to and where to store the parameters read from the chunk into |
rst | real-specific stream information |
codec_data_size | size of the MDPR chunk |
Definition at line 311 of file rmdec.c.
Referenced by ivr_read_header(), rdt_load_mdpr(), rm_read_header(), and rm_read_multi().
|
static |
this function assumes that the demuxer has already seeked to the start of the INDX chunk, and will bail out if not.
Definition at line 420 of file rmdec.c.
Referenced by rm_read_header().
|
static |
Definition at line 476 of file rmdec.c.
Referenced by rm_read_header().
|
static |
Definition at line 491 of file rmdec.c.
Referenced by ivr_read_header(), and rm_read_header().
|
static |
|
static |
Definition at line 660 of file rmdec.c.
Referenced by rm_assemble_video_frame().
|
static |
Definition at line 679 of file rmdec.c.
Referenced by rm_read_dts(), and rm_read_packet().
|
static |
Definition at line 750 of file rmdec.c.
Referenced by ff_rm_parse_packet().
Definition at line 857 of file rmdec.c.
Referenced by ff_rm_parse_packet().
|
static |
Definition at line 871 of file rmdec.c.
Referenced by ff_rm_parse_packet().
int ff_rm_parse_packet | ( | AVFormatContext * | s, |
AVIOContext * | pb, | ||
AVStream * | st, | ||
RMStream * | rst, | ||
int | len, | ||
AVPacket * | pkt, | ||
int * | seq, | ||
int | flags, | ||
int64_t | ts | ||
) |
Parse one rm-stream packet from the input bytestream.
s | context containing RMContext and AVIOContext for stream reading |
pb | context to read the data from |
st | stream to which the packet to be read belongs |
rst | Real-specific stream information |
len | packet length to read from the input |
pkt | packet location to store the parsed packet data |
seq | pointer to an integer containing the sequence number, may be updated |
flags | the packet flags |
ts | timestamp of the current packet |
Definition at line 882 of file rmdec.c.
Referenced by ivr_read_packet(), rdt_parse_packet(), and rm_read_packet().
int ff_rm_retrieve_cache | ( | AVFormatContext * | s, |
AVIOContext * | pb, | ||
AVStream * | st, | ||
RMStream * | rst, | ||
AVPacket * | pkt | ||
) |
Retrieve one cached packet from the rm-context.
The real container can store several packets (as interpreted by the codec) in a single container packet, which means the demuxer holds some back when the first container packet is parsed and returned. The result is that rm->audio_pkt_cnt is a positive number, the amount of cached packets. Using this function, each of those packets can be retrieved sequentially.
s | context containing RMContext and AVIOContext for stream reading |
pb | context to read the data from |
st | stream that this packet belongs to |
rst | Real-specific stream information |
pkt | location to store the packet data |
Definition at line 970 of file rmdec.c.
Referenced by ivr_read_packet(), rdt_parse_packet(), and rm_read_packet().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
AVInputFormat ff_rm_demuxer |
AVInputFormat ff_rdt_demuxer |
Definition at line 1153 of file rmdec.c.
Referenced by rdt_init().
AVInputFormat ff_ivr_demuxer |