27typedef struct voc_enc_context {
35 const int header_size = 26;
38 if (
s->nb_streams != 1
71 if (
s->streams[0]->codecpar->ch_layout.nb_channels > 1) {
103 .p.mime_type =
"audio/x-voc",
104 .p.extensions =
"voc",
void avio_wl32(AVIOContext *s, unsigned int val)
void avio_wl16(AVIOContext *s, unsigned int val)
void avio_w8(AVIOContext *s, int b)
void avio_wl24(AVIOContext *s, unsigned int val)
void avio_write(AVIOContext *s, const unsigned char *buf, int size)
#define AVERROR_PATCHWELCOME
Not yet implemented in FFmpeg, patches welcome.
#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.
int nb_channels
Number of channels in this layout.
This struct describes the properties of an encoded stream.
int bits_per_coded_sample
The number of bits per sample in the codedwords.
AVChannelLayout ch_layout
The channel layout and number of channels.
uint32_t codec_tag
Additional information about the codec (corresponds to the AVI FOURCC).
enum AVCodecID codec_id
Specific type of the encoded data (the codec used).
int sample_rate
The number of audio samples per second.
This structure stores compressed data.
const AVCodecTag *const ff_voc_codec_tags_list[]
const unsigned char ff_voc_magic[21]
@ VOC_TYPE_VOICE_DATA_CONT
@ VOC_TYPE_NEW_VOICE_DATA
static int voc_write_trailer(AVFormatContext *s)
static int voc_write_packet(AVFormatContext *s, AVPacket *pkt)
static int voc_write_header(AVFormatContext *s)