// libav includes // from /usr/include extern "C" { #ifndef __STDC_CONSTANT_MACROS # define __STDC_CONSTANT_MACROS #endif #ifndef UINT64_C #define UINT64_C(c) (c ## ULL) #endif #include #include "libavcodec/avcodec.h" #include "libavutil/opt.h" #include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/imgutils.h" #include "libavutil/mathematics.h" #include "libavutil/samplefmt.h" } namespace avCodec { static int check_sample_fmt(AVCodec *codec, enum AVSampleFormat sample_fmt); static void audio_decode_example(const char *outfilename, const char *filename); static void pgm_save(unsigned char *buf, int wrap, int xsize, int ysize,char *filename); static int decode_write_frame(const char *outfilename, AVCodecContext *avctx,AVFrame *frame, int *frame_count, AVPacket *pkt, int last); static int select_channel_layout(AVCodec *codec); static void video_encode_example(const char *filename, int codec_id); static void audio_encode_example(const char *filename); static int select_sample_rate(AVCodec *codec); static void video_decode_example(const char *outfilename, const char *filename); }