52 len = strlen(tag->
value);
53 len =
FFMIN(len, maxlen);
63 uint64_t time_reference = 0;
73 time_reference = strtoll(tmp_tag->
value,
NULL, 10);
78 unsigned char umidpart_str[17] = {0};
83 for (i = 0; i < len/16; i++) {
84 memcpy(umidpart_str, tmp_tag->
value + 2 + (i*16), 16);
85 umidpart = strtoll(umidpart_str,
NULL, 16);
172 avio_wl32(pb, (uint32_t)(file_size - 8));
179 int number_of_samples;
192 #define OFFSET(x) offsetof(WAVMuxContext, x)
193 #define ENC AV_OPT_FLAG_ENCODING_PARAM
209 .mime_type =
"audio/x-wav",
void avio_wb64(AVIOContext *s, uint64_t val)
const struct AVCodec * codec
void avio_wl16(AVIOContext *s, unsigned int val)
AVOutputFormat ff_wav_muxer
void ff_end_tag(AVIOContext *pb, int64_t start)
int64_t ff_start_tag(AVIOContext *pb, const char *tag)
int64_t avio_seek(AVIOContext *s, int64_t offset, int whence)
fseek() equivalent for AVIOContext.
static int wav_write_trailer(AVFormatContext *s)
AVDictionaryEntry * av_dict_get(AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags)
Get a dictionary entry with matching key.
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
static int wav_write_header(AVFormatContext *s)
void avio_wl32(AVIOContext *s, unsigned int val)
AVStream ** streams
A list of all streams in the file.
static av_always_inline int64_t avio_tell(AVIOContext *s)
ftell() equivalent for AVIOContext.
void avio_write(AVIOContext *s, const unsigned char *buf, int size)
static av_always_inline void ffio_wfourcc(AVIOContext *pb, const uint8_t *s)
int duration
Duration of this packet in AVStream->time_base units, 0 if unknown.
void avio_wl64(AVIOContext *s, uint64_t val)
static int wav_write_packet(AVFormatContext *s, AVPacket *pkt)
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
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. ...
void av_log(void *avcl, int level, const char *fmt,...)
const char * name
Name of the codec implementation.
static void bwf_write_bext_chunk(AVFormatContext *s)
const AVCodecTag ff_codec_wav_tags[]
AVCodecContext * codec
Codec context associated with this stream.
int seekable
A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
int void avio_flush(AVIOContext *s)
int64_t av_rescale(int64_t a, int64_t b, int64_t c)
Rescale a 64-bit integer with rounding to nearest.
void ffio_fill(AVIOContext *s, int b, int count)
static const AVClass wav_muxer_class
internal header for RIFF based (de)muxers do NOT include this in end user applications ...
int avio_put_str(AVIOContext *s, const char *str)
Write a NULL-terminated string.
int sample_rate
samples per second
AVIOContext * pb
I/O context.
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
static void bwf_write_bext_string(AVFormatContext *s, const char *key, int maxlen)
void ff_riff_write_info(AVFormatContext *s)
Write all recognized RIFF tags from s->metadata.
Describe the class of an AVClass context structure.
static const AVOption options[]
common internal and external API header
int ff_put_wav_header(AVIOContext *pb, AVCodecContext *enc)
void * priv_data
Format private data.
static void write_header(FFV1Context *f)
AVRational time_base
This is the fundamental unit of time (in seconds) in terms of which frame timestamps are represented...
This structure stores compressed data.
int64_t pts
Presentation timestamp in AVStream->time_base units; the time at which the decompressed packet will b...
#define AV_NOPTS_VALUE
Undefined timestamp value.