diff options
author | Benoit Bolsee <benoit.bolsee@online.be> | 2008-11-01 20:15:17 +0300 |
---|---|---|
committer | Benoit Bolsee <benoit.bolsee@online.be> | 2008-11-01 20:15:17 +0300 |
commit | e6a2ab319f10fa318aa4d9b4e7c5cef0fd95dc87 (patch) | |
tree | e6b1405fe4412257270a9d617d01c740985ac431 | |
parent | 4870db578b8a08a58ae6e553094c3998a92fcb7e (diff) |
VideoTexture: AVFormatContext::pb is not a pointer for avformat library older than 52 (linux uses 51)
-rw-r--r-- | source/gameengine/VideoTexture/VideoFFmpeg.cpp | 10 | ||||
-rw-r--r-- | source/gameengine/VideoTexture/VideoFFmpeg.h | 4 |
2 files changed, 12 insertions, 2 deletions
diff --git a/source/gameengine/VideoTexture/VideoFFmpeg.cpp b/source/gameengine/VideoTexture/VideoFFmpeg.cpp index 65bd5f4cbf4..19e10cf02f8 100644 --- a/source/gameengine/VideoTexture/VideoFFmpeg.cpp +++ b/source/gameengine/VideoTexture/VideoFFmpeg.cpp @@ -248,7 +248,13 @@ void VideoFFmpeg::openFile (char * filename) // open base class VideoBase::openFile(filename); - if (m_formatCtx->pb->is_streamed) + if ( +#ifdef FFMPEG_PB_IS_POINTER + m_formatCtx->pb->is_streamed +#else + m_formatCtx->pb.is_streamed +#endif + ) { // the file is in fact a streaming source, prevent seeking m_isFile = false; @@ -265,7 +271,7 @@ void VideoFFmpeg::openCam (char * file, short camIdx) AVInputFormat *inputFormat; AVFormatParameters formatParams; AVRational frameRate; - char filename[28], rateStr[20]; + char *p, filename[28], rateStr[20]; do_init_ffmpeg(); diff --git a/source/gameengine/VideoTexture/VideoFFmpeg.h b/source/gameengine/VideoTexture/VideoFFmpeg.h index 7980e06686c..4720bef1841 100644 --- a/source/gameengine/VideoTexture/VideoFFmpeg.h +++ b/source/gameengine/VideoTexture/VideoFFmpeg.h @@ -36,6 +36,10 @@ extern "C" { #define FFMPEG_CODEC_IS_POINTER 1 #endif +#if LIBAVFORMAT_VERSION_INT >= (52 << 16) +#define FFMPEG_PB_IS_POINTER 1 +#endif + #ifdef FFMPEG_CODEC_IS_POINTER static inline AVCodecContext* get_codec_from_stream(AVStream* stream) { |