26 #include "libavutil/mathematics.h"
27 #include "libavutil/opt.h"
38 #define CHECK_LOOP(type) \
39 if (ast->loop ## type > 0) { \
40 ast->loop ## type = av_rescale_rnd(ast->loop ## type, enc->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;
188 #define OFFSET(obj) offsetof(ASTMuxContext, obj)
212 .priv_class = &ast_muxer_class,
static int ast_write_packet(AVFormatContext *s, AVPacket *pkt)
#define AVERROR_PATCHWELCOME
#define AV_LOG_WARNING
Something somehow does not look correct.
#define LIBAVUTIL_VERSION_INT
AVCodecContext * codec
Codec context associated with this stream.
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...
int block_align
number of bytes per packet if constant and known or 0 Used by some WAV based audio codecs...
const char * av_default_item_name(void *ctx)
Return the context name.
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 av_cold int end(AVCodecContext *avctx)
AVOutputFormat ff_ast_muxer
static av_always_inline void ffio_wfourcc(AVIOContext *pb, const uint8_t *s)
const OptionDef options[]
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
void * priv_data
Format private data.
static int ast_write_trailer(AVFormatContext *s)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
#define AV_LOG_DEBUG
Stuff which is only useful for libav* developers.
unsigned int nb_streams
A list of all streams in the file.
int seekable
A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
static int write_trailer(AVFormatContext *s1)
int sample_rate
samples per second
main external API structure.
AVIOContext * pb
I/O context.
Describe the class of an AVClass context structure.
static int ast_write_header(AVFormatContext *s)
#define AV_OPT_FLAG_ENCODING_PARAM
a generic parameter which can be set by the user for muxing or encoding
const AVCodecTag ff_codec_ast_tags[]
int channels
number of audio channels
static void write_header(FFV1Context *f)
int frame_number
Frame counter, set by libavcodec.
This structure stores compressed data.
static int write_packet(AVFormatContext *s1, AVPacket *pkt)
static const AVClass ast_muxer_class