67 pict_list = pict_list->
next;
180 avio_wb16(pb, (sample_rate >> 52) + (16383 - 1023));
181 avio_wb64(pb, UINT64_C(1) << 63 | sample_rate << 11);
246 last->
next = pict_list;
262 int64_t file_size, end_size;
304 #define OFFSET(x) offsetof(AIFFOutputContext, x)
305 #define ENC AV_OPT_FLAG_ENCODING_PARAM
307 {
"write_id3v2",
"Enable ID3 tags writing.",
309 {
"id3v2_version",
"Select ID3v2 version to write. Currently 3 and 4 are supported.",
324 .mime_type =
"audio/aiff",
325 .extensions =
"aif,aiff,afc,aifc",
void avio_wb64(AVIOContext *s, uint64_t val)
void av_free_packet(AVPacket *pkt)
Free a packet.
void ff_id3v2_start(ID3v2EncContext *id3, AVIOContext *pb, int id3v2_version, const char *magic)
Initialize an ID3v2 tag.
#define AV_LOG_WARNING
Something somehow does not look correct.
#define LIBAVUTIL_VERSION_INT
void ff_id3v2_finish(ID3v2EncContext *id3, AVIOContext *pb, int padding_bytes)
Finalize an opened ID3v2 tag.
static int aiff_write_packet(AVFormatContext *s, AVPacket *pkt)
#define ID3v2_DEFAULT_MAGIC
Default magic bytes for ID3v2 header: "ID3".
int64_t avio_seek(AVIOContext *s, int64_t offset, int whence)
fseek() equivalent for AVIOContext.
static av_always_inline uint64_t av_double2int(double f)
Reinterpret a double as a 64-bit integer.
int block_align
number of bytes per packet if constant and known or 0 Used by some WAV based audio codecs...
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
void avio_wl32(AVIOContext *s, unsigned int val)
static av_cold int end(AVCodecContext *avctx)
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
AVStream ** streams
A list of all streams in the file.
AVDictionaryEntry * av_dict_get(const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags)
Get a dictionary entry with matching key.
static av_always_inline int64_t avio_tell(AVIOContext *s)
ftell() equivalent for AVIOContext.
int bits_per_coded_sample
bits per sample/pixel from the demuxer (needed for huffyuv).
void avio_write(AVIOContext *s, const unsigned char *buf, int size)
static av_always_inline void ffio_wfourcc(AVIOContext *pb, const uint8_t *s)
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
int av_get_bits_per_sample(enum AVCodecID codec_id)
Return codec bits per sample.
AVDictionary * metadata
Metadata that applies to the whole file.
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
static const AVOption options[]
uint64_t channel_layout
Audio channel layout.
AVCodecContext * codec
Codec context associated with this stream.
unsigned int nb_streams
Number of elements in AVFormatContext.streams.
int seekable
A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
int void avio_flush(AVIOContext *s)
Force flushing of buffered data.
int ff_id3v2_write_metadata(AVFormatContext *s, ID3v2EncContext *id3)
Convert and write all global metadata from s into an ID3v2 tag.
static int write_trailer(AVFormatContext *s1)
static int aiff_write_trailer(AVFormatContext *s)
static int put_id3v2_tags(AVFormatContext *s, AIFFOutputContext *aiff)
int metadata_header_padding
Number of bytes to be written as padding in a metadata header.
enum AVMediaType codec_type
int sample_rate
samples per second
AVIOContext * pb
I/O context.
void avio_w8(AVIOContext *s, int b)
main external API structure.
int av_copy_packet(AVPacket *dst, const AVPacket *src)
Copy packet, including contents.
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
Describe the class of an AVClass context structure.
static int aiff_write_header(AVFormatContext *s)
void avio_wb16(AVIOContext *s, unsigned int val)
int ff_id3v2_write_apic(AVFormatContext *s, ID3v2EncContext *id3, AVPacket *pkt)
Write an attached picture from pkt into an ID3v2 tag.
void ff_mov_write_chan(AVIOContext *pb, int64_t channel_layout)
static void put_meta(AVFormatContext *s, const char *key, uint32_t id)
struct AVPacketList * next
static const AVCodecTag ff_codec_aiff_tags[]
int64_t nb_frames
number of frames in this stream if known or 0
int channels
number of audio channels
void * priv_data
Format private data.
static const AVClass aiff_muxer_class
static void write_header(FFV1Context *f)
common header for AIFF muxer and demuxer
void avio_wb32(AVIOContext *s, unsigned int val)
#define MKTAG(a, b, c, d)
This structure stores compressed data.
static int write_packet(AVFormatContext *s1, AVPacket *pkt)
void * av_mallocz(size_t size)
Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if ...
AVOutputFormat ff_aiff_muxer