[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