From: Haejeong Kim Date: Fri, 10 Feb 2012 01:06:11 +0000 (+0900) Subject: fix bugs and support some codecs X-Git-Tag: 2.0_alpha~5 X-Git-Url: http://review.tizen.org/git/?p=framework%2Fmultimedia%2Fffmpeg.git;a=commitdiff_plain;h=d82c773d09f15cfed456f9e3874c1dea5385689f fix bugs and support some codecs --- diff --git a/debian/rules b/debian/rules index e3cc124..2dd780b 100755 --- a/debian/rules +++ b/debian/rules @@ -27,6 +27,9 @@ CONFIGURE_OPTIONS = --disable-static --enable-shared --disable-postproc \ --disable-mmx --disable-zlib --disable-network \ --disable-ffserver --disable-ffplay --disable-ffmpeg \ --disable-avfilter --disable-avdevice \ + --disable-bsfs --disable-filters \ + --disable-protocols \ + --enable-protocol=file \ --disable-encoders \ --disable-muxers \ --disable-parsers \ @@ -46,6 +49,11 @@ CONFIGURE_OPTIONS = --disable-static --enable-shared --disable-postproc \ --enable-decoder=h263 --enable-decoder=mpegvideo --enable-decoder=wmv3 \ --enable-decoder=vc1 \ --enable-decoder=h263i --enable-decoder=theora \ + --enable-encoder=h263 --enable-encoder=h263p --enable-encoder=mpeg4 \ + --enable-decoder=bmp --enable-encoder=bmp \ + --enable-decoder=tiff \ + --enable-decoder=mp3 --enable-decoder=amrnb \ + --enable-encoder=aac --enable-decoder=aac \ --enable-swscale --disable-yasm ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) diff --git a/libavformat/asf.c b/libavformat/asf.c old mode 100644 new mode 100755 index 1f6af18..4ddbb46 --- a/libavformat/asf.c +++ b/libavformat/asf.c @@ -155,6 +155,6 @@ const AVMetadataConv ff_asf_metadata_conv[] = { { "WM/Track" , "track" }, { "WM/MediaStationCallSign", "service_provider" }, { "WM/MediaStationName", "service_name" }, -// { "Year" , "date" }, TODO: conversion year<->date + { "WM/Year", "date" }, /*Modified // { "Year" , "date" }, TODO: conversion year<->date*/ { 0 } }; diff --git a/libavformat/utils.c b/libavformat/utils.c old mode 100644 new mode 100755 index e79f98e..258c804 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -2261,11 +2261,13 @@ int av_find_stream_info(AVFormatContext *ic) for(i=0;inb_streams;i++) { AVCodec *codec; st = ic->streams[i]; +#if 0 /*fix bug. m4a(aac) file's samperate,channel, frame_size is 0*/ if (st->codec->codec_id == CODEC_ID_AAC) { st->codec->sample_rate = 0; st->codec->frame_size = 0; st->codec->channels = 0; } +#endif if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO || st->codec->codec_type == AVMEDIA_TYPE_SUBTITLE) { /* if(!st->time_base.num) @@ -2360,6 +2362,12 @@ int av_find_stream_info(AVFormatContext *ic) /* NOTE: a new stream can be added there if no header in file (AVFMTCTX_NOHEADER) */ ret = av_read_frame_internal(ic, &pkt1); + + /*fix bug. + this function return error for some m4a(aac) and ogg file's. so, break here*/ + if(st->codec->codec_id == CODEC_ID_AAC || st->codec->codec_id == CODEC_ID_VORBIS) + break; + if (ret < 0 && ret != AVERROR(EAGAIN)) { /* EOF or error */ ret = -1; /* we could not have all the codec parameters before EOF */