examples/decoding_encoding.c: test mpeg1 and h264

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2011-10-17 20:36:03 +02:00
parent 65e32eea73
commit 107460c1e9
1 changed files with 7 additions and 5 deletions

View File

@ -194,7 +194,7 @@ static void audio_decode_example(const char *outfilename, const char *filename)
/*
* Video encoding example
*/
static void video_encode_example(const char *filename)
static void video_encode_example(const char *filename, int codec_id)
{
AVCodec *codec;
AVCodecContext *c= NULL;
@ -206,7 +206,7 @@ static void video_encode_example(const char *filename)
printf("Video encoding\n");
/* find the mpeg1 video encoder */
codec = avcodec_find_encoder(CODEC_ID_H264);
codec = avcodec_find_encoder(codec_id);
if (!codec) {
fprintf(stderr, "codec not found\n");
exit(1);
@ -226,7 +226,8 @@ static void video_encode_example(const char *filename)
c->max_b_frames=1;
c->pix_fmt = PIX_FMT_YUV420P;
av_opt_set(c->priv_data, "preset", "slow", 0);
if(codec_id == CODEC_ID_H264)
av_opt_set(c->priv_data, "preset", "slow", 0);
/* open it */
if (avcodec_open(c, codec) < 0) {
@ -449,8 +450,9 @@ int main(int argc, char **argv)
audio_encode_example("/tmp/test.mp2");
audio_decode_example("/tmp/test.sw", "/tmp/test.mp2");
video_encode_example("/tmp/test.h264");
filename = "/tmp/test.h264";
video_encode_example("/tmp/test.h264", CODEC_ID_H264);
video_encode_example("/tmp/test.mpg", CODEC_ID_MPEG1VIDEO);
filename = "/tmp/test.mpg";
} else {
filename = argv[1];
}