31#define AUPR_HDR 0x415550522D484452
32#define AUPRINFO 0x41555052494E464F
33#define BITSHVTB 0x4249545348565442
34#define BLACKOUT 0x424C41434B4F5554
35#define BRANCHPT 0x4252414E43485054
36#define BUILDVER 0x4255494C44564552
37#define CORESSMD 0x434F524553534D44
38#define DTSHDHDR 0x4454534844484452
39#define EXTSS_MD 0x45585453535f4d44
40#define FILEINFO 0x46494C45494E464F
41#define NAVI_TBL 0x4E4156492D54424C
42#define STRMDATA 0x5354524D44415441
43#define TIMECODE 0x54494D45434F4445
60 uint64_t chunk_type, chunk_size;
86 if (chunk_size > ((uint64_t)1 << 61)) {
94 dtshd->
data_end = data_start + chunk_size;
112 orig_nb_samples <<= 8;
113 orig_nb_samples |=
avio_r8(pb);
124 if (chunk_size > INT_MAX)
134 value[chunk_size - 1] = 0;
173 pkt->stream_index = 0;
182 .p.extensions =
"dtshd",
int64_t avio_seek(AVIOContext *s, int64_t offset, int whence)
fseek() equivalent for AVIOContext.
#define AVIO_SEEKABLE_NORMAL
Seeking works like for a local file.
uint64_t avio_rb64(AVIOContext *s)
unsigned int avio_rb16(AVIOContext *s)
int avio_feof(AVIOContext *s)
Similar to feof() but also returns nonzero on read errors.
static av_always_inline int64_t avio_tell(AVIOContext *s)
ftell() equivalent for AVIOContext.
int64_t avio_skip(AVIOContext *s, int64_t offset)
Skip given number of bytes forward.
unsigned int avio_rb24(AVIOContext *s)
unsigned int avio_rb32(AVIOContext *s)
int avio_r8(AVIOContext *s)
int ffio_read_size(AVIOContext *s, unsigned char *buf, int size)
Read size bytes from AVIOContext into buf.
static int read_packet(void *opaque, uint8_t *buf, int buf_size)
static void BS_FUNC skip(BSCTX *bc, unsigned int n)
Skip n bits in the buffer.
static int BS_FUNC left(const BSCTX *bc)
Return the number of the bits left in a buffer.
static int read_probe(const AVProbeData *p)
static int ff_dca_count_chs_for_mask(unsigned int mask)
Return number of individual channels in DCASpeakerPair mask.
static int raw_read_packet(AVFormatContext *s, AVPacket *pkt)
static int dtshd_read_header(AVFormatContext *s)
static int dtshd_probe(const AVProbeData *p)
static int read_header(FFV1Context *f, RangeCoder *c)
AVStream * avformat_new_stream(AVFormatContext *s, const struct AVCodec *c)
Add a new stream to a media file.
#define AV_DICT_DONT_STRDUP_VAL
Take ownership of a value that's been allocated with av_malloc() or another memory allocation functio...
int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags)
Set the given entry in *pm, overwriting an existing entry.
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
#define AVERROR_EOF
End of file.
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Memory handling functions.
int nb_channels
Number of channels in this layout.
AVChannelLayout ch_layout
The channel layout and number of channels.
enum AVMediaType codec_type
General type of the encoded data.
int trailing_padding
Number of padding audio samples at the end.
enum AVCodecID codec_id
Specific type of the encoded data (the codec used).
int sample_rate
The number of audio samples per second.
int initial_padding
Number of padding audio samples at the start.
int seekable
A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
This structure stores compressed data.
This structure contains the data a format has to probe a file.
AVCodecParameters * codecpar
Codec parameters associated with this stream.
int64_t duration
Decoding: duration of the stream, in stream time base.
int64_t start_time
Decoding: pts of the first frame of the stream in presentation order, in stream time base.
int64_t last_discard_sample
The sample after last sample that is intended to be discarded after first_discard_sample.
int64_t start_skip_samples
If not 0, the number of samples that should be skipped from the start of the stream (the samples are ...
int64_t first_discard_sample
If not 0, the first audio sample that should be discarded from the stream.
enum AVStreamParseType need_parsing