FFmpeg
|
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/channel_layout.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 |
Functions | |
static void | get_strl (AVIOContext *pb, char *buf, int buf_size, int len) |
static void | get_str8 (AVIOContext *pb, char *buf, int buf_size) |
static int | rm_read_extradata (AVIOContext *pb, AVCodecContext *avctx, unsigned size) |
static void | rm_read_metadata (AVFormatContext *s, int wide) |
RMStream * | ff_rm_alloc_rmstream (void) |
void | ff_rm_free_rmstream (RMStream *rms) |
static int | rm_read_audio_stream_info (AVFormatContext *s, AVIOContext *pb, AVStream *st, RMStream *ast, int read_all) |
int | ff_rm_read_mdpr_codecdata (AVFormatContext *s, AVIOContext *pb, AVStream *st, RMStream *rst, int codec_data_size, const uint8_t *mime) |
Read the MDPR chunk, which contains stream-specific codec initialization parameters. More... | |
static int | rm_read_index (AVFormatContext *s) |
this function assumes that the demuxer has already seeked to the start of the INDX chunk, and will bail out if not. More... | |
static int | rm_read_header_old (AVFormatContext *s) |
static int | rm_read_header (AVFormatContext *s) |
static int | get_num (AVIOContext *pb, int *len) |
static int | sync (AVFormatContext *s, int64_t *timestamp, int *flags, int *stream_index, int64_t *pos) |
static int | rm_assemble_video_frame (AVFormatContext *s, AVIOContext *pb, RMDemuxContext *rm, RMStream *vst, AVPacket *pkt, int len, int *pseq, int64_t *timestamp) |
static void | rm_ac3_swap_bytes (AVStream *st, AVPacket *pkt) |
int | ff_rm_parse_packet (AVFormatContext *s, AVIOContext *pb, AVStream *st, RMStream *ast, int len, AVPacket *pkt, int *seq, int flags, int64_t timestamp) |
Parse one rm-stream packet from the input bytestream. More... | |
int | ff_rm_retrieve_cache (AVFormatContext *s, AVIOContext *pb, AVStream *st, RMStream *ast, AVPacket *pkt) |
Retrieve one cached packet from the rm-context. More... | |
static int | rm_read_packet (AVFormatContext *s, AVPacket *pkt) |
static int | rm_read_close (AVFormatContext *s) |
static int | rm_probe (AVProbeData *p) |
static int64_t | rm_read_dts (AVFormatContext *s, int stream_index, int64_t *ppos, int64_t pos_limit) |
static int | rm_read_seek (AVFormatContext *s, int stream_index, int64_t pts, int flags) |
Variables | |
AVInputFormat | ff_rm_demuxer |
AVInputFormat | ff_rdt_demuxer |
Macro Definition Documentation
interleaving for Cooker/Atrac
Definition at line 33 of file rmdec.c.
Referenced by ff_rm_parse_packet(), and rm_read_audio_stream_info().
no interleaving needed
Definition at line 34 of file rmdec.c.
Referenced by rm_read_audio_stream_info().
interleaving for 28.8
Definition at line 35 of file rmdec.c.
Referenced by ff_rm_parse_packet(), and rm_read_audio_stream_info().
interleaving for Sipro
Definition at line 36 of file rmdec.c.
Referenced by ff_rm_parse_packet(), and rm_read_audio_stream_info().
VBR case for AAC.
Definition at line 37 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 38 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 587 of file rmdec.c.
Referenced by rm_read_packet().
Function Documentation
Definition at line 109 of file rmdec.c.
Referenced by rdt_parse_sdp_line(), rm_read_header(), and rm_read_header_old().
Definition at line 116 of file rmdec.c.
Referenced by rdt_free_context(), and rm_read_close().
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.
- Parameters
-
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
- Returns
- <0 on error, 0 if a packet was placed in the pkt pointer. A value >0 means that no data was placed in pkt, but that cached data is available by calling ff_rm_retrieve_cache().
Definition at line 771 of file rmdec.c.
Referenced by rdt_parse_packet(), and rm_read_packet().
int ff_rm_read_mdpr_codecdata | ( | AVFormatContext * | s, |
AVIOContext * | pb, | ||
AVStream * | st, | ||
RMStream * | rst, | ||
int | codec_data_size, | ||
const uint8_t * | mime | ||
) |
Read the MDPR chunk, which contains stream-specific codec initialization parameters.
- 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
- Returns
- 0 on success, errno codes on error
Definition at line 303 of file rmdec.c.
Referenced by rdt_load_mdpr(), and rm_read_header().
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.
- Parameters
-
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
- Returns
- the number of samples left for subsequent calls to this same function, or 0 if all samples have been retrieved.
Definition at line 861 of file rmdec.c.
Referenced by rdt_parse_packet(), and rm_read_packet().
|
static |
Definition at line 570 of file rmdec.c.
Referenced by rm_assemble_video_frame().
|
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().
|
inlinestatic |
Definition at line 65 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), get_str8(), and rm_read_metadata().
Definition at line 756 of file rmdec.c.
Referenced by ff_rm_parse_packet().
|
static |
Definition at line 657 of file rmdec.c.
Referenced by ff_rm_parse_packet().
|
static |
|
static |
Definition at line 121 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), and rm_read_header_old().
|
static |
|
static |
|
static |
Definition at line 84 of file rmdec.c.
Referenced by ff_rm_read_mdpr_codecdata(), and rm_read_audio_stream_info().
|
static |
|
static |
Definition at line 451 of file rmdec.c.
Referenced by rm_read_header().
|
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 395 of file rmdec.c.
Referenced by rm_read_header().
|
static |
Definition at line 98 of file rmdec.c.
Referenced by rm_read_audio_stream_info(), and rm_read_header().
|
static |
|
static |
|
static |
Definition at line 589 of file rmdec.c.
Referenced by rm_read_dts(), and rm_read_packet().
Variable Documentation
AVInputFormat ff_rdt_demuxer |
Definition at line 1036 of file rmdec.c.
Referenced by rdt_new_context().
AVInputFormat ff_rm_demuxer |
Generated on Fri Dec 20 2024 06:56:15 for FFmpeg by 1.8.11