22 #include "libavutil/channel_layout.h"
23 #include "libavutil/opt.h"
42 avio_w8(pb, last_block ? 0x81 : 0x01);
44 while (n_padding_bytes > 0) {
52 int last_block,
int bitexact)
66 bytestream_put_byte(&p, last_block ? 0x84 : 0x04);
67 bytestream_put_be24(&p, len);
100 "already present, this muxer will not overwrite it.\n");
188 .mime_type =
"audio/x-flac",
189 .extensions =
"flac",
196 .priv_class = &flac_muxer_class,
#define AV_LOG_WARNING
Something somehow does not look correct.
AVCodecContext * codec
Codec context associated with this stream.
int ff_flac_is_native_layout(uint64_t channel_layout)
void av_log(void *avcl, int level, const char *fmt,...) av_printf_format(3
Send the specified message to the log if the level is less than or equal to the current av_log_level...
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
void av_freep(void *ptr)
Free a memory block which has been allocated with av_malloc(z)() or av_realloc() and set the pointer ...
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
int flags
Flags modifying the (de)muxer behaviour.
FLAC (Free Lossless Audio Codec) decoder/demuxer common functions.
void * priv_data
Format private data.
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
uint64_t channel_layout
Audio channel layout.
int seekable
A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
uint8_t * av_packet_get_side_data(AVPacket *pkt, enum AVPacketSideDataType type, int *size)
Get side information from packet.
AVStream ** streams
A list of all streams in the file.
void * av_malloc(size_t size) av_malloc_attrib 1(1)
Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if ...
#define FLAC_STREAMINFO_SIZE
int ff_flac_write_header(AVIOContext *pb, uint8_t *extradata, int extradata_size, int last_block)
main external API structure.
AVIOContext * pb
I/O context.
int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags)
Set the given entry in *pm, overwriting an existing entry.
Describe the class of an AVClass context structure.
AVDictionary * metadata
Metadata that applies to the whole file.
AVDictionaryEntry * av_dict_get(const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags)
Get a dictionary entry with matching key.
#define AV_OPT_FLAG_ENCODING_PARAM
a generic parameter which can be set by the user for muxing or encoding
static void write_header(FFV1Context *f)
av_default_item_name
Return the context name.
This structure stores compressed data.