aboutsummaryrefslogtreecommitdiff
path: root/desktop/ffmpegthumbnailer/ffmpeg.patch
blob: f3167d40f322a42505c21e64f02835dfb159dafb (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
50
51
52
53
54
55
56
57
58
Index: libffmpegthumbnailer/moviedecoder.cpp
===================================================================
--- libffmpegthumbnailer/moviedecoder.cpp	(revision 240)
+++ libffmpegthumbnailer/moviedecoder.cpp	(revision 241)
@@ -58,19 +58,26 @@
 void MovieDecoder::initialize(const string& filename)
 {
     av_register_all();
-    avcodec_init();
     avcodec_register_all();
 
     string inputFile = filename == "-" ? "pipe:" : filename;
     m_AllowSeek = (filename != "-") && (filename.find("rtsp://") != 0);
-
+    
+#if LIBAVCODEC_VERSION_MAJOR < 53
     if ((!m_FormatContextWasGiven) && av_open_input_file(&m_pFormatContext, inputFile.c_str(), NULL, 0, NULL) != 0)
+#else
+	if ((!m_FormatContextWasGiven) && avformat_open_input(&m_pFormatContext, inputFile.c_str(), NULL, NULL) != 0)
+#endif
     {
 		destroy();
         throw logic_error(string("Could not open input file: ") + filename);
     }
 
+#if LIBAVCODEC_VERSION_MAJOR < 53
     if (av_find_stream_info(m_pFormatContext) < 0)
+#else
+	if (avformat_find_stream_info(m_pFormatContext, NULL) < 0)
+#endif
     {
 		destroy();
         throw logic_error(string("Could not find stream information"));
@@ -90,8 +97,12 @@
 
     if ((!m_FormatContextWasGiven) && m_pFormatContext)
     {
+#if LIBAVCODEC_VERSION_MAJOR < 53
         av_close_input_file(m_pFormatContext);
         m_pFormatContext = NULL;
+#else
+        avformat_close_input(&m_pFormatContext);
+#endif
     }
 
     if (m_pPacket)
@@ -159,7 +170,11 @@
 
     m_pVideoCodecContext->workaround_bugs = 1;
 
+#if LIBAVCODEC_VERSION_MAJOR < 53
     if (avcodec_open(m_pVideoCodecContext, m_pVideoCodec) < 0)
+#else
+	if (avcodec_open2(m_pVideoCodecContext, m_pVideoCodec, NULL) < 0)
+#endif
     {
         throw logic_error("Could not open video codec");
     }