From 034c7f4a418b7a7ed54283b5e0c442e482aedf4c Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sat, 29 Oct 2005 03:25:39 +0000 Subject: [PATCH] bring back MovieTexture_FFMpeg::RegisterProtocols --- .../arch/MovieTexture/MovieTexture_FFMpeg.cpp | 19 ++++++++++++------- .../arch/MovieTexture/MovieTexture_FFMpeg.h | 1 + 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp b/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp index e1a45278af..249bdf2241 100644 --- a/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp +++ b/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp @@ -522,15 +522,20 @@ static avcodec::URLProtocol RageProtocol = NULL }; +void MovieTexture_FFMpeg::RegisterProtocols() +{ + static bool Done = false; + if( Done ) + return; + Done = true; + + avcodec::av_register_all(); + avcodec::register_protocol( &RageProtocol ); +} + CString MovieDecoder_FFMpeg::Open( CString sFile ) { - static bool bDone = false; - if( !bDone ) - { - avcodec::av_register_all(); - avcodec::register_protocol( &RageProtocol ); - bDone = true; - } + MovieTexture_FFMpeg::RegisterProtocols(); int ret = avcodec::av_open_input_file( &m_fctx, "rage://" + sFile, NULL, 0, NULL ); if( ret < 0 ) diff --git a/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.h b/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.h index d868d384e9..79d5f9471f 100644 --- a/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.h +++ b/stepmania/src/arch/MovieTexture/MovieTexture_FFMpeg.h @@ -10,6 +10,7 @@ class MovieTexture_FFMpeg: public MovieTexture_Generic public: MovieTexture_FFMpeg( RageTextureID ID ); + static void RegisterProtocols(); static RageSurface *AVCodecCreateCompatibleSurface( int iTextureWidth, int iTextureHeight, bool bPreferHighColor, int &iAVTexfmt ); }; #define USE_MOVIE_TEXTURE_FFMPEG