blob: b5b9bcd8f2467d674467f1252bd300beabb19499 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
See [6] and [7].
[6] https://github.com/Tatsh/tatsh-overlay/blob/master/games-arcade/stepmania/files/stepmania-ffmpeg-6.patch
[7] https://github.com/Tatsh/tatsh-overlay/blob/master/games-arcade/stepmania/files/stepmania-ffmpeg-7.patch
diff --git a/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp b/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp
index 935ddf324b0..d4eed01d599 100644
--- a/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp
+++ b/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp
@@ -9,6 +9,10 @@
#include <cerrno>
+#if LIBAVCODEC_VERSION_MAJOR > 59
+#define frame_number frame_num
+#endif
+
static void FixLilEndian()
{
#if defined(ENDIAN_LITTLE)
@@ -405,7 +405,7 @@ void MovieTexture_FFMpeg::RegisterProtocols()
return;
Done = true;
-#if !FF_API_NEXT
+#if LIBAVCODEC_VERSION_MAJOR < 58
avcodec::avcodec_register_all();
avcodec::av_register_all();
#endif
@@ -508,7 +508,7 @@ RString MovieDecoder_FFMpeg::OpenCodec()
if( m_pStreamCodec->codec )
avcodec::avcodec_close( m_pStreamCodec );
- avcodec::AVCodec *pCodec = avcodec::avcodec_find_decoder( m_pStreamCodec->codec_id );
+ const avcodec::AVCodec *pCodec = avcodec::avcodec_find_decoder( m_pStreamCodec->codec_id );
if( pCodec == nullptr )
return ssprintf( "Couldn't find decoder %i", m_pStreamCodec->codec_id );
diff --git a/src/arch/MovieTexture/MovieTexture_FFMpeg.h b/src/arch/MovieTexture/MovieTexture_FFMpeg.h
index c092b765fc2..99f5ffcb1be 100644
--- a/src/arch/MovieTexture/MovieTexture_FFMpeg.h
+++ b/src/arch/MovieTexture/MovieTexture_FFMpeg.h
@@ -13,6 +13,7 @@ namespace avcodec
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavutil/pixdesc.h>
+ #include <libavcodec/avcodec.h>
#if LIBAVCODEC_VERSION_MAJOR >= 58
#define av_free_packet av_packet_unref
|