38 #define CHECK_LOOP(type) \
39 if (ast->loop ## type > 0) { \
40 ast->loop ## type = av_rescale_rnd(ast->loop ## type, par->sample_rate, 1000, AV_ROUND_DOWN); \
41 if (ast->loop ## type < 0 || ast->loop ## type > UINT_MAX) { \
42 av_log(s, AV_LOG_ERROR, "Invalid loop" #type " value\n"); \
43 return AVERROR(EINVAL); \
52 unsigned int codec_tag;
54 if (
s->nb_streams == 1) {
55 par =
s->streams[0]->codecpar;
114 if (
s->streams[0]->nb_frames == 0)
136 int64_t samples = (file_size - 64 - (32 *
s->streams[0]->nb_frames)) / par->
block_align;
185 #define OFFSET(obj) offsetof(ASTMuxContext, obj)
const AVCodecTag ff_codec_ast_tags[]
const AVCodecTag *const ff_ast_codec_tags_list[]
static const AVOption options[]
static int ast_write_trailer(AVFormatContext *s)
static int ast_write_packet(AVFormatContext *s, AVPacket *pkt)
AVOutputFormat ff_ast_muxer
static const AVClass ast_muxer_class
static int ast_write_header(AVFormatContext *s)
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.
void avio_wl32(AVIOContext *s, unsigned int val)
void avio_wb32(AVIOContext *s, unsigned int val)
void avio_wb16(AVIOContext *s, unsigned int val)
static av_always_inline int64_t avio_tell(AVIOContext *s)
ftell() equivalent for AVIOContext.
void avio_wb64(AVIOContext *s, uint64_t val)
int64_t avio_skip(AVIOContext *s, int64_t offset)
Skip given number of bytes forward.
void avio_write(AVIOContext *s, const unsigned char *buf, int size)
static av_always_inline void ffio_wfourcc(AVIOContext *pb, const uint8_t *s)
static void write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int unqueue)
static void write_header(FFV1Context *f)
@ AV_CODEC_ID_PCM_S16BE_PLANAR
#define AVERROR_PATCHWELCOME
Not yet implemented in FFmpeg, patches welcome.
#define AV_LOG_DEBUG
Stuff which is only useful for libav* developers.
#define AV_LOG_WARNING
Something somehow does not look correct.
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
const char * av_default_item_name(void *ptr)
Return the context name.
#define LIBAVUTIL_VERSION_INT
common internal API header
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
#define AV_OPT_FLAG_ENCODING_PARAM
a generic parameter which can be set by the user for muxing or encoding
Describe the class of an AVClass context structure.
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
This struct describes the properties of an encoded stream.
int block_align
Audio only.
enum AVCodecID codec_id
Specific type of the encoded data (the codec used).
int sample_rate
Audio only.
This structure stores compressed data.
static int write_trailer(AVFormatContext *s1)