[PATCH] adapt for libav-0.7

Sergey Bolshakov sbolshakov на altlinux.org
Ср Июн 22 10:54:42 UTC 2011


---
 src/mgui/ffviewer.cpp              |   15 ++++++---------
 src/mgui/project/media-browser.cpp |    2 +-
 2 files changed, 7 insertions(+), 10 deletions(-)

diff --git a/src/mgui/ffviewer.cpp b/src/mgui/ffviewer.cpp
index 30d65a7..c2d9cc6 100644
--- a/src/mgui/ffviewer.cpp
+++ b/src/mgui/ffviewer.cpp
@@ -315,15 +315,15 @@ bool OpenInfo(FFData& ffi, const char* fname, std::string& err_str)
     {
         switch( av_res )
         {
-        case AVERROR_NOENT:
+        case AVERROR(ENOENT):
             // :TODO: решить, ставить в конце точки или нет (сообщения пользователю
             // показывается не HIG-ого)
             err_str = _("No such file");
             break;
-        case AVERROR_NOFMT:
+        case AVERROR(EILSEQ):
             err_str = _("Unknown file format");
             break;
-        case AVERROR_UNKNOWN:
+        case AVERROR(EINVAL):
         default:
             err_str = boost::format("FFmpeg unknown error: %1%") % av_res % bf::stop;
             break;
@@ -351,13 +351,13 @@ bool OpenInfo(FFData& ffi, const char* fname, std::string& err_str)
         {
             AVStream* strm = ic->streams[i];
             AVCodecContext* avctx = strm->codec;
-            if( SetIndex(video_idx, i, avctx->codec_type == CODEC_TYPE_VIDEO) )
+            if( SetIndex(video_idx, i, avctx->codec_type == AVMEDIA_TYPE_VIDEO) )
                 ;
             else
                 // для демиксера имеет значение только NONE и ALL
                 strm->discard = AVDISCARD_ALL;
 
-            SetIndex(audio_idx, i, avctx->codec_type == CODEC_TYPE_AUDIO);
+            SetIndex(audio_idx, i, avctx->codec_type == AVMEDIA_TYPE_AUDIO);
         }
 
         if( video_idx == -1 )
@@ -522,7 +522,7 @@ static double TS2Time(int64_t ts, FFViewer& ffv)
 
 static bool IsInHurry(AVCodecContext* dec)
 {
-    return dec->hurry_up != 0;
+    return dec->skip_frame != AVDISCARD_DEFAULT;
 }
 
 struct HurryModeEnabler
@@ -531,8 +531,6 @@ struct HurryModeEnabler
 
     HurryModeEnabler(AVCodecContext* dec_): dec(dec_)
     {
-        // как признак (хоть и устаревший)
-        dec->hurry_up = 1;
         // Прирост скорости (h264): 
         // - AVDISCARD_NONREF: 2x
         // - AVDISCARD_BIDIR: для h264 (и других современных кодеков?) разница в скорости 
@@ -552,7 +550,6 @@ struct HurryModeEnabler
     }
    ~HurryModeEnabler()
     {
-        dec->hurry_up = 0;
         dec->skip_frame = AVDISCARD_DEFAULT;
         //dec->skip_idct = AVDISCARD_DEFAULT;
         //dec->skip_loop_filter = AVDISCARD_DEFAULT;
diff --git a/src/mgui/project/media-browser.cpp b/src/mgui/project/media-browser.cpp
index 541dc81..c50fe11 100644
--- a/src/mgui/project/media-browser.cpp
+++ b/src/mgui/project/media-browser.cpp
@@ -232,7 +232,7 @@ RTCache& GetRTC(VideoItem vi)
         for( int i=0; i < (int)ic->nb_streams; i++ )
         {
             AVCodecContext* avctx = ic->streams[i]->codec;
-            if( avctx->codec_type == CODEC_TYPE_AUDIO )
+            if( avctx->codec_type == AVMEDIA_TYPE_AUDIO )
                 rtc.audioNum++;
         }
 
-- 
1.7.5.4


--=-=-=


-- 

--=-=-=--


Подробная информация о списке рассылки Devel