]> git.pld-linux.org Git - packages/kodi.git/blame - ffmpeg2.patch
- Up to 13.2, code name Gotham.
[packages/kodi.git] / ffmpeg2.patch
CommitLineData
bfa116d7
JR
1From 9f24c9a44aa625277e5c5f1d251cff262d0bc259 Mon Sep 17 00:00:00 2001\r
2From: FlyingRat <flyingrat@outlook.com>\r
3Date: Mon, 29 Apr 2013 10:49:06 +0200\r
4Subject: [PATCH] xbmc adjustments for ffmpeg master head, rev b691bc4,\r
5 2013-04-29\r
6\r
7---\r
8 lib/DllAvCodec.h | 8 +++\r
9 lib/DllAvFilter.h | 15 ++++--\r
10 xbmc/cores/dvdplayer/DVDAudio.h | 5 ++\r
11 .../DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 2 +\r
12 xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h | 5 ++\r
13 6 files changed, 94 insertions(+), 3 deletions(-)\r
14 create mode 100755 lib/ffmpeg/build_xbmc_win32.sh\r
15\r
16diff --git a/lib/DllAvCodec.h b/lib/DllAvCodec.h\r
17index 2b4ee22..5114a65 100644\r
18--- a/lib/DllAvCodec.h\r
19+++ b/lib/DllAvCodec.h\r
20@@ -41,6 +41,14 @@\r
21 #ifndef __GNUC__\r
22 #pragma warning(disable:4244)\r
23 #endif\r
24+ \r
25+#if !defined(CodecID) // @FFMPEGHEAD TODO: CodecID decrepated and autodef removed, define/rename AVCodecID globaly?\r
26+#define CodecID AVCodecID\r
27+#endif\r
28+\r
29+#if !defined(AVCODEC_MAX_AUDIO_FRAME_SIZE) // @FFMPEGHEAD TODO: stick with this or check for possible other solution?\r
30+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio (defintion orginated from ffmpeg)\r
31+#endif\r
32 \r
33 #if (defined USE_EXTERNAL_FFMPEG)\r
34 #if (defined HAVE_LIBAVCODEC_AVCODEC_H)\r
35diff --git a/lib/DllAvFilter.h b/lib/DllAvFilter.h\r
36index d44b918..5082618 100644\r
37--- a/lib/DllAvFilter.h\r
38+++ b/lib/DllAvFilter.h\r
39@@ -20,6 +20,9 @@\r
40 *\r
41 */\r
42 \r
43+// #define av_buffersrc_add_frame(ctx,frame) av_buffersrc_add_frame_flags(ctx, frame, 0);\r
44+\r
45+\r
46 #if (defined HAVE_CONFIG_H) && (!defined WIN32)\r
47 #include "config.h"\r
48 #endif\r
49@@ -56,6 +59,9 @@\r
50 #include "libavfilter/buffersink.h"\r
51 #include "libavfilter/avcodec.h"\r
52 #endif\r
53+\r
54+#include "libavfilter/buffersrc.h" // @FFMPEGHEAD temp hack\r
55+ \r
56 }\r
57 \r
58 #if LIBAVFILTER_VERSION_MICRO >= 100\r
59@@ -146,9 +153,9 @@ class DllAvFilter : public DllDynamic, DllAvFilterInterface\r
60 return ::avfilter_graph_config(graphctx, log_ctx);\r
61 }\r
62 #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0)\r
63- virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags) { return ::av_vsrc_buffer_add_frame(buffer_filter, frame, flags); }\r
64+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags) { return ::av_vsrc_buffer_add_frame_flags(buffer_filter, frame, flags); }\r
65 #else\r
66- virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame(buffer_filter, frame, flags); }\r
67+ virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame_flags(buffer_filter, frame, flags); }\r
68 #endif\r
69 virtual void avfilter_unref_buffer(AVFilterBufferRef *ref) { ::avfilter_unref_buffer(ref); }\r
70 virtual int avfilter_link(AVFilterContext *src, unsigned srcpad, AVFilterContext *dst, unsigned dstpad) { return ::avfilter_link(src, srcpad, dst, dstpad); }\r
71diff --git a/xbmc/cores/dvdplayer/DVDAudio.h b/xbmc/cores/dvdplayer/DVDAudio.h\r
72index e76d443..1a1b840 100644\r
73--- a/xbmc/cores/dvdplayer/DVDAudio.h\r
74+++ b/xbmc/cores/dvdplayer/DVDAudio.h\r
75@@ -42,6 +43,10 @@\r
76 #endif\r
77 }\r
78 #endif\r
79+#if !defined (CodecID)\r
80+#define CodecID AVCodecID //@FFMPEGHEAD TODO: CodecID decrepated and autodef removed, possible rename to AVCodecID globaly?\r
81+#endif\r
82+\r
83 typedef struct stDVDAudioFrame DVDAudioFrame;\r
84 \r
85 class CPTSOutputQueue\r
86diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp\r
87index eb45f9a..33c9da0 100644\r
88--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp\r
89+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp\r
90@@ -18,6 +18,8 @@\r
91 *\r
92 */\r
93 \r
94+#define FF_API_AVFILTERBUFFER 1 // @FFMPEGHEAD enable av_buffersrc_buffer & co. TODO: check for alt sol.\r
95+\r
96 #include "system.h"\r
97 #if (defined HAVE_CONFIG_H) && (!defined WIN32)\r
98 #include "config.h"\r
99diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h\r
100index bdad65b..8db5d7b 100644\r
101--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h\r
102+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h\r
103@@ -51,6 +52,10 @@\r
104 }\r
105 #endif\r
106 \r
107+#if !defined (CodecID)\r
108+#define CodecID AVCodecID //@FFMPEGHEAD TODO: CodecID decrepated and autodef removed, possible rename to AVCodecID glob\r
109+#endif\r
110+\r
111 #ifndef __GNUC__\r
112 #pragma warning(pop)\r
113 #endif\r
114-- \r
1151.8.1.6\r
792647b2
JR
116--- xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp~ 2013-05-03 07:57:41.000000000 +0200\r
117+++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp 2013-08-29 17:52:04.730897230 +0200\r
118@@ -60,7 +60,7 @@\r
119 m_pCodecContext->debug_mv = 0;\r
120 m_pCodecContext->debug = 0;\r
121 m_pCodecContext->workaround_bugs = FF_BUG_AUTODETECT;\r
122- m_pCodecContext->sub_id = hints.identifier;\r
123+// m_pCodecContext->sub_id = hints.identifier;\r
124 m_pCodecContext->codec_tag = hints.codec_tag;\r
125 m_pCodecContext->time_base.num = 1;\r
126 m_pCodecContext->time_base.den = DVD_TIME_BASE;\r
127--- xbmc-12.2/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp~ 2013-05-03 07:57:41.000000000 +0200\r
128+++ xbmc-12.2/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp 2013-08-29 17:53:46.268749616 +0200\r
129@@ -1043,7 +1043,7 @@\r
130 {\r
131 CDemuxStreamSubtitleFFmpeg* st = new CDemuxStreamSubtitleFFmpeg(this, pStream);\r
132 m_streams[iId] = st;\r
133- st->identifier = pStream->codec->sub_id;\r
134+// st->identifier = pStream->codec->sub_id;\r
135 \r
136 if(m_dllAvUtil.av_dict_get(pStream->metadata, "title", NULL, 0))\r
137 st->m_description = m_dllAvUtil.av_dict_get(pStream->metadata, "title", NULL, 0)->value;\r
4cf0b7a8
JR
138--- xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp~ 2013-08-29 17:38:17.554580558 +0200\r
139+++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp 2013-08-29 17:58:10.471835362 +0200\r
140@@ -275,7 +275,7 @@\r
141 }\r
142 \r
143 // set acceleration\r
144- m_pCodecContext->dsp_mask = 0;//FF_MM_FORCE | FF_MM_MMX | FF_MM_MMXEXT | FF_MM_SSE;\r
145+// m_pCodecContext->dsp_mask = 0;//FF_MM_FORCE | FF_MM_MMX | FF_MM_MMXEXT | FF_MM_SSE;\r
146 \r
147 // advanced setting override for skip loop filter (see avcodec.h for valid options)\r
148 // TODO: allow per video setting?\r
This page took 0.22016 seconds and 4 git commands to generate.