Gentoo Archives: gentoo-commits

From: Michael Palimaka <kensington@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/files/, media-libs/mlt/
Date: Sun, 21 Aug 2016 20:08:54
Message-Id: 1471810118.a73ddafeb654f1d81b0953f742d3fe233007e285.kensington@gentoo
1 commit: a73ddafeb654f1d81b0953f742d3fe233007e285
2 Author: Michael Palimaka <kensington <AT> gentoo <DOT> org>
3 AuthorDate: Sun Aug 21 20:08:30 2016 +0000
4 Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
5 CommitDate: Sun Aug 21 20:08:38 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a73ddafe
7
8 media-libs/mlt: remove old
9
10 Package-Manager: portage-2.3.0
11
12 media-libs/mlt/Manifest | 1 -
13 media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch | 500 -------------------------
14 media-libs/mlt/files/mlt-0.9.8-ruby-link.patch | 19 -
15 media-libs/mlt/mlt-0.9.8-r2.ebuild | 218 -----------
16 media-libs/mlt/mlt-6.2.0-r1.ebuild | 200 ----------
17 5 files changed, 938 deletions(-)
18
19 diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
20 index 64044d7..aa1e385 100644
21 --- a/media-libs/mlt/Manifest
22 +++ b/media-libs/mlt/Manifest
23 @@ -1,2 +1 @@
24 -DIST mlt-0.9.8.tar.gz 1263364 SHA256 1214d6ad7fd1c3d36f0b1e64fd1c8d8a7ab6290e8452396003e79d58c0d21074 SHA512 2f3db19cbff8bdd11c53fe835fcc1c32d775ead061b2e225466376be98c622cdd18e67f66becda503a57725ac9a296bc48aae4c3ae1111ed09ba878f61fd1e10 WHIRLPOOL 615323613eeee9ea80f8d6727a05129a9dc32097a8c2bf41cb818843fa8d47885744c1534fd7d26817262f60404e4caa12ea67ae9b3f59984874981865ee9148
25 DIST mlt-6.2.0.tar.gz 1314506 SHA256 dd2ee742e89620de78a259790f92a7cadad67f0e0a6c1ea7ed932f96fb739fff SHA512 a36ee9c0684511dfa83e08027671d7c6f2c19741cc0504a12d19b4f859c596ca3457108785fa8d7321f5ba83f9498b9be26abb0d857b86743d0ec61e6fb2745b WHIRLPOOL a1554d58d7373711b8e99a185e0e57807ba438f1647480971feec26f6b7123af1c811a6219311d69444277e6ac1da95a1d7c8d351271dd0e3a80913028dba3fc
26
27 diff --git a/media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch b/media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch
28 deleted file mode 100644
29 index ef89fbb..0000000
30 --- a/media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch
31 +++ /dev/null
32 @@ -1,500 +0,0 @@
33 -commit 97c2dd0de4f578ad40d547eddf78fcb1e4a008a4
34 -Author: Dan Dennedy <dan@×××××××.org>
35 -Date: Sat Sep 5 13:06:21 2015 -0700
36 -
37 - Fix avformat build against FFmpeg and Libav master.
38 -
39 - This drops support for FFmpeg v1.0; requires at least v1.1. Still works
40 - with Libav v9.
41 - CPU flags are no longer required/used by libswscale. They are detected
42 - at runtime automatically.
43 -
44 -diff --git a/src/modules/avformat/consumer_avformat.c b/src/modules/avformat/consumer_avformat.c
45 -index ef8b153..7947c47 100644
46 ---- a/src/modules/avformat/consumer_avformat.c
47 -+++ b/src/modules/avformat/consumer_avformat.c
48 -@@ -439,18 +439,18 @@ static void apply_properties( void *obj, mlt_properties properties, int flags )
49 - }
50 - }
51 -
52 --static enum PixelFormat pick_pix_fmt( mlt_image_format img_fmt )
53 -+static enum AVPixelFormat pick_pix_fmt( mlt_image_format img_fmt )
54 - {
55 - switch ( img_fmt )
56 - {
57 - case mlt_image_rgb24:
58 -- return PIX_FMT_RGB24;
59 -+ return AV_PIX_FMT_RGB24;
60 - case mlt_image_rgb24a:
61 -- return PIX_FMT_RGBA;
62 -+ return AV_PIX_FMT_RGBA;
63 - case mlt_image_yuv420p:
64 -- return PIX_FMT_YUV420P;
65 -+ return AV_PIX_FMT_YUV420P;
66 - default:
67 -- return PIX_FMT_YUYV422;
68 -+ return AV_PIX_FMT_YUYV422;
69 - }
70 - }
71 -
72 -@@ -798,7 +798,7 @@ static AVStream *add_video_stream( mlt_consumer consumer, AVFormatContext *oc, A
73 - st->time_base = c->time_base;
74 -
75 - // Default to the codec's first pix_fmt if possible.
76 -- c->pix_fmt = pix_fmt? av_get_pix_fmt( pix_fmt ) : codec? codec->pix_fmts[0] : PIX_FMT_YUV420P;
77 -+ c->pix_fmt = pix_fmt? av_get_pix_fmt( pix_fmt ) : codec? codec->pix_fmts[0] : AV_PIX_FMT_YUV420P;
78 -
79 - switch ( colorspace )
80 - {
81 -@@ -1032,7 +1032,7 @@ static int open_video( mlt_properties properties, AVFormatContext *oc, AVStream
82 -
83 - if( codec && codec->pix_fmts )
84 - {
85 -- const enum PixelFormat *p = codec->pix_fmts;
86 -+ const enum AVPixelFormat *p = codec->pix_fmts;
87 - for( ; *p!=-1; p++ )
88 - {
89 - if( *p == video_enc->pix_fmt )
90 -@@ -1791,12 +1791,6 @@ static void *consumer_thread( void *arg )
91 -
92 - // Do the colour space conversion
93 - int flags = SWS_BICUBIC;
94 --#ifdef USE_MMX
95 -- flags |= SWS_CPU_CAPS_MMX;
96 --#endif
97 --#ifdef USE_SSE
98 -- flags |= SWS_CPU_CAPS_MMX2;
99 --#endif
100 - struct SwsContext *context = sws_getContext( width, height, pick_pix_fmt( img_fmt ),
101 - width, height, c->pix_fmt, flags, NULL, NULL, NULL);
102 - sws_scale( context, (const uint8_t* const*) video_avframe->data, video_avframe->linesize, 0, height,
103 -@@ -1808,9 +1802,9 @@ static void *consumer_thread( void *arg )
104 - // Apply the alpha if applicable
105 - if ( !mlt_properties_get( properties, "mlt_image_format" ) ||
106 - strcmp( mlt_properties_get( properties, "mlt_image_format" ), "rgb24a" ) )
107 -- if ( c->pix_fmt == PIX_FMT_RGBA ||
108 -- c->pix_fmt == PIX_FMT_ARGB ||
109 -- c->pix_fmt == PIX_FMT_BGRA )
110 -+ if ( c->pix_fmt == AV_PIX_FMT_RGBA ||
111 -+ c->pix_fmt == AV_PIX_FMT_ARGB ||
112 -+ c->pix_fmt == AV_PIX_FMT_BGRA )
113 - {
114 - uint8_t *alpha = mlt_frame_get_alpha_mask( frame );
115 - register int n;
116 -@@ -1844,8 +1838,6 @@ static void *consumer_thread( void *arg )
117 - av_init_packet(&pkt);
118 -
119 - // Set frame interlace hints
120 -- c->coded_frame->interlaced_frame = !mlt_properties_get_int( frame_properties, "progressive" );
121 -- c->coded_frame->top_field_first = mlt_properties_get_int( frame_properties, "top_field_first" );
122 - if ( mlt_properties_get_int( frame_properties, "progressive" ) )
123 - c->field_order = AV_FIELD_PROGRESSIVE;
124 - else
125 -diff --git a/src/modules/avformat/filter_avcolour_space.c b/src/modules/avformat/filter_avcolour_space.c
126 -index f70fd08..910de0c 100644
127 ---- a/src/modules/avformat/filter_avcolour_space.c
128 -+++ b/src/modules/avformat/filter_avcolour_space.c
129 -@@ -47,17 +47,17 @@ static int convert_mlt_to_av_cs( mlt_image_format format )
130 - switch( format )
131 - {
132 - case mlt_image_rgb24:
133 -- value = PIX_FMT_RGB24;
134 -+ value = AV_PIX_FMT_RGB24;
135 - break;
136 - case mlt_image_rgb24a:
137 - case mlt_image_opengl:
138 -- value = PIX_FMT_RGBA;
139 -+ value = AV_PIX_FMT_RGBA;
140 - break;
141 - case mlt_image_yuv422:
142 -- value = PIX_FMT_YUYV422;
143 -+ value = AV_PIX_FMT_YUYV422;
144 - break;
145 - case mlt_image_yuv420p:
146 -- value = PIX_FMT_YUV420P;
147 -+ value = AV_PIX_FMT_YUV420P;
148 - break;
149 - default:
150 - mlt_log_error( NULL, "[filter avcolor_space] Invalid format %s\n",
151 -@@ -123,16 +123,10 @@ static int av_convert_image( uint8_t *out, uint8_t *in, int out_fmt, int in_fmt,
152 - int flags = SWS_BICUBIC | SWS_ACCURATE_RND;
153 - int error = -1;
154 -
155 -- if ( out_fmt == PIX_FMT_YUYV422 )
156 -+ if ( out_fmt == AV_PIX_FMT_YUYV422 )
157 - flags |= SWS_FULL_CHR_H_INP;
158 - else
159 - flags |= SWS_FULL_CHR_H_INT;
160 --#ifdef USE_MMX
161 -- flags |= SWS_CPU_CAPS_MMX;
162 --#endif
163 --#ifdef USE_SSE
164 -- flags |= SWS_CPU_CAPS_MMX2;
165 --#endif
166 -
167 - avpicture_fill( &input, in, in_fmt, width, height );
168 - avpicture_fill( &output, out, out_fmt, width, height );
169 -@@ -141,7 +135,7 @@ static int av_convert_image( uint8_t *out, uint8_t *in, int out_fmt, int in_fmt,
170 - if ( context )
171 - {
172 - // libswscale wants the RGB colorspace to be SWS_CS_DEFAULT, which is = SWS_CS_ITU601.
173 -- if ( out_fmt == PIX_FMT_RGB24 || out_fmt == PIX_FMT_RGBA )
174 -+ if ( out_fmt == AV_PIX_FMT_RGB24 || out_fmt == AV_PIX_FMT_RGBA )
175 - dst_colorspace = 601;
176 - error = set_luma_transfer( context, src_colorspace, dst_colorspace, use_full_range );
177 - sws_scale( context, (const uint8_t* const*) input.data, input.linesize, 0, height,
178 -@@ -326,7 +320,7 @@ mlt_filter filter_avcolour_space_init( void *arg )
179 - int *width = (int*) arg;
180 - if ( *width > 0 )
181 - {
182 -- struct SwsContext *context = sws_getContext( *width, *width, PIX_FMT_RGB32, 64, 64, PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
183 -+ struct SwsContext *context = sws_getContext( *width, *width, AV_PIX_FMT_RGB32, 64, 64, AV_PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
184 - if ( context )
185 - sws_freeContext( context );
186 - else
187 -diff --git a/src/modules/avformat/filter_avdeinterlace.c b/src/modules/avformat/filter_avdeinterlace.c
188 -index 9c0189e..91c435c 100644
189 ---- a/src/modules/avformat/filter_avdeinterlace.c
190 -+++ b/src/modules/avformat/filter_avdeinterlace.c
191 -@@ -234,28 +234,28 @@ static int mlt_avpicture_deinterlace(AVPicture *dst, const AVPicture *src,
192 - {
193 - int i;
194 -
195 -- if (pix_fmt != PIX_FMT_YUV420P &&
196 -- pix_fmt != PIX_FMT_YUV422P &&
197 -- pix_fmt != PIX_FMT_YUYV422 &&
198 -- pix_fmt != PIX_FMT_YUV444P &&
199 -- pix_fmt != PIX_FMT_YUV411P)
200 -+ if (pix_fmt != AV_PIX_FMT_YUV420P &&
201 -+ pix_fmt != AV_PIX_FMT_YUV422P &&
202 -+ pix_fmt != AV_PIX_FMT_YUYV422 &&
203 -+ pix_fmt != AV_PIX_FMT_YUV444P &&
204 -+ pix_fmt != AV_PIX_FMT_YUV411P)
205 - return -1;
206 - if ((width & 3) != 0 || (height & 3) != 0)
207 - return -1;
208 -
209 -- if ( pix_fmt != PIX_FMT_YUYV422 )
210 -+ if ( pix_fmt != AV_PIX_FMT_YUYV422 )
211 - {
212 - for(i=0;i<3;i++) {
213 - if (i == 1) {
214 - switch(pix_fmt) {
215 -- case PIX_FMT_YUV420P:
216 -+ case AV_PIX_FMT_YUV420P:
217 - width >>= 1;
218 - height >>= 1;
219 - break;
220 -- case PIX_FMT_YUV422P:
221 -+ case AV_PIX_FMT_YUV422P:
222 - width >>= 1;
223 - break;
224 -- case PIX_FMT_YUV411P:
225 -+ case AV_PIX_FMT_YUV411P:
226 - width >>= 2;
227 - break;
228 - default:
229 -@@ -312,8 +312,8 @@ static int filter_get_image( mlt_frame frame, uint8_t **image, mlt_image_format
230 - AVPicture *output = mlt_pool_alloc( sizeof( AVPicture ) );
231 -
232 - // Fill the picture
233 -- avpicture_fill( output, *image, PIX_FMT_YUYV422, *width, *height );
234 -- mlt_avpicture_deinterlace( output, output, PIX_FMT_YUYV422, *width, *height );
235 -+ avpicture_fill( output, *image, AV_PIX_FMT_YUYV422, *width, *height );
236 -+ mlt_avpicture_deinterlace( output, output, AV_PIX_FMT_YUYV422, *width, *height );
237 -
238 - // Free the picture
239 - mlt_pool_release( output );
240 -diff --git a/src/modules/avformat/filter_swscale.c b/src/modules/avformat/filter_swscale.c
241 -index b8213a3..37c156d 100644
242 ---- a/src/modules/avformat/filter_swscale.c
243 -+++ b/src/modules/avformat/filter_swscale.c
244 -@@ -37,17 +37,17 @@ static inline int convert_mlt_to_av_cs( mlt_image_format format )
245 - switch( format )
246 - {
247 - case mlt_image_rgb24:
248 -- value = PIX_FMT_RGB24;
249 -+ value = AV_PIX_FMT_RGB24;
250 - break;
251 - case mlt_image_rgb24a:
252 - case mlt_image_opengl:
253 -- value = PIX_FMT_RGBA;
254 -+ value = AV_PIX_FMT_RGBA;
255 - break;
256 - case mlt_image_yuv422:
257 -- value = PIX_FMT_YUYV422;
258 -+ value = AV_PIX_FMT_YUYV422;
259 - break;
260 - case mlt_image_yuv420p:
261 -- value = PIX_FMT_YUV420P;
262 -+ value = AV_PIX_FMT_YUV420P;
263 - break;
264 - default:
265 - fprintf( stderr, "Invalid format...\n" );
266 -@@ -108,12 +108,6 @@ static int filter_scale( mlt_frame frame, uint8_t **image, mlt_image_format *for
267 - // XXX: we only know how to rescale packed formats
268 - return 1;
269 - }
270 --#ifdef USE_MMX
271 -- interp |= SWS_CPU_CAPS_MMX;
272 --#endif
273 --#ifdef USE_SSE
274 -- interp |= SWS_CPU_CAPS_MMX2;
275 --#endif
276 -
277 - // Convert the pixel formats
278 - int avformat = convert_mlt_to_av_cs( *format );
279 -@@ -148,7 +142,7 @@ static int filter_scale( mlt_frame frame, uint8_t **image, mlt_image_format *for
280 - uint8_t *alpha = mlt_frame_get_alpha( frame );
281 - if ( alpha )
282 - {
283 -- avformat = PIX_FMT_GRAY8;
284 -+ avformat = AV_PIX_FMT_GRAY8;
285 - struct SwsContext *context = sws_getContext( iwidth, iheight, avformat, owidth, oheight, avformat, interp, NULL, NULL, NULL);
286 - avpicture_fill( &input, alpha, avformat, iwidth, iheight );
287 - outbuf = mlt_pool_alloc( owidth * oheight );
288 -@@ -182,7 +176,7 @@ mlt_filter filter_swscale_init( mlt_profile profile, void *arg )
289 - int *width = (int*) arg;
290 - if ( *width > 0 )
291 - {
292 -- struct SwsContext *context = sws_getContext( *width, *width, PIX_FMT_RGB32, 64, 64, PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
293 -+ struct SwsContext *context = sws_getContext( *width, *width, AV_PIX_FMT_RGB32, 64, 64, AV_PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
294 - if ( context )
295 - sws_freeContext( context );
296 - else
297 -diff --git a/src/modules/avformat/producer_avformat.c b/src/modules/avformat/producer_avformat.c
298 -index 3495e2a..55e326d 100644
299 ---- a/src/modules/avformat/producer_avformat.c
300 -+++ b/src/modules/avformat/producer_avformat.c
301 -@@ -33,6 +33,7 @@
302 - #include <libavutil/pixdesc.h>
303 - #include <libavutil/dict.h>
304 - #include <libavutil/opt.h>
305 -+#include <libavutil/channel_layout.h>
306 -
307 - #ifdef VDPAU
308 - # include <libavcodec/vdpau.h>
309 -@@ -504,21 +505,21 @@ static char* parse_url( mlt_profile profile, const char* URL, AVInputFormat **fo
310 - return result;
311 - }
312 -
313 --static enum PixelFormat pick_pix_fmt( enum PixelFormat pix_fmt )
314 -+static enum AVPixelFormat pick_pix_fmt( enum AVPixelFormat pix_fmt )
315 - {
316 - switch ( pix_fmt )
317 - {
318 -- case PIX_FMT_ARGB:
319 -- case PIX_FMT_RGBA:
320 -- case PIX_FMT_ABGR:
321 -- case PIX_FMT_BGRA:
322 -- return PIX_FMT_RGBA;
323 -+ case AV_PIX_FMT_ARGB:
324 -+ case AV_PIX_FMT_RGBA:
325 -+ case AV_PIX_FMT_ABGR:
326 -+ case AV_PIX_FMT_BGRA:
327 -+ return AV_PIX_FMT_RGBA;
328 - #if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((2<<16)+(5<<8)+102))
329 - case AV_PIX_FMT_BAYER_RGGB16LE:
330 -- return PIX_FMT_RGB24;
331 -+ return AV_PIX_FMT_RGB24;
332 - #endif
333 - default:
334 -- return PIX_FMT_YUV422P;
335 -+ return AV_PIX_FMT_YUV422P;
336 - }
337 - }
338 -
339 -@@ -976,26 +977,26 @@ static int set_luma_transfer( struct SwsContext *context, int src_colorspace,
340 - brightness, contrast, saturation );
341 - }
342 -
343 --static mlt_image_format pick_image_format( enum PixelFormat pix_fmt )
344 -+static mlt_image_format pick_image_format( enum AVPixelFormat pix_fmt )
345 - {
346 - switch ( pix_fmt )
347 - {
348 -- case PIX_FMT_ARGB:
349 -- case PIX_FMT_RGBA:
350 -- case PIX_FMT_ABGR:
351 -- case PIX_FMT_BGRA:
352 -+ case AV_PIX_FMT_ARGB:
353 -+ case AV_PIX_FMT_RGBA:
354 -+ case AV_PIX_FMT_ABGR:
355 -+ case AV_PIX_FMT_BGRA:
356 - return mlt_image_rgb24a;
357 -- case PIX_FMT_YUV420P:
358 -- case PIX_FMT_YUVJ420P:
359 -- case PIX_FMT_YUVA420P:
360 -+ case AV_PIX_FMT_YUV420P:
361 -+ case AV_PIX_FMT_YUVJ420P:
362 -+ case AV_PIX_FMT_YUVA420P:
363 - return mlt_image_yuv420p;
364 -- case PIX_FMT_RGB24:
365 -- case PIX_FMT_BGR24:
366 -- case PIX_FMT_GRAY8:
367 -- case PIX_FMT_MONOWHITE:
368 -- case PIX_FMT_MONOBLACK:
369 -- case PIX_FMT_RGB8:
370 -- case PIX_FMT_BGR8:
371 -+ case AV_PIX_FMT_RGB24:
372 -+ case AV_PIX_FMT_BGR24:
373 -+ case AV_PIX_FMT_GRAY8:
374 -+ case AV_PIX_FMT_MONOWHITE:
375 -+ case AV_PIX_FMT_MONOBLACK:
376 -+ case AV_PIX_FMT_RGB8:
377 -+ case AV_PIX_FMT_BGR8:
378 - #if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((2<<16)+(5<<8)+102))
379 - case AV_PIX_FMT_BAYER_RGGB16LE:
380 - return mlt_image_rgb24;
381 -@@ -1071,21 +1072,14 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
382 - mlt_profile profile = mlt_service_profile( MLT_PRODUCER_SERVICE( self->parent ) );
383 - int result = self->yuv_colorspace;
384 -
385 --#ifdef USE_MMX
386 -- flags |= SWS_CPU_CAPS_MMX;
387 --#endif
388 --#ifdef USE_SSE
389 -- flags |= SWS_CPU_CAPS_MMX2;
390 --#endif
391 --
392 - mlt_log_debug( MLT_PRODUCER_SERVICE(self->parent), "%s @ %dx%d space %d->%d\n",
393 - mlt_image_format_name( *format ),
394 - width, height, self->yuv_colorspace, profile->colorspace );
395 -
396 - // extract alpha from planar formats
397 -- if ( ( pix_fmt == PIX_FMT_YUVA420P
398 -+ if ( ( pix_fmt == AV_PIX_FMT_YUVA420P
399 - #if defined(FFUDIV)
400 -- || pix_fmt == PIX_FMT_YUVA444P
401 -+ || pix_fmt == AV_PIX_FMT_YUVA444P
402 - #endif
403 - ) &&
404 - *format != mlt_image_rgb24a && *format != mlt_image_opengl &&
405 -@@ -1110,10 +1104,10 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
406 - // avformat with no filters and explicitly requested.
407 - #if defined(FFUDIV) && (LIBAVFORMAT_VERSION_INT >= ((55<<16)+(48<<8)+100))
408 - struct SwsContext *context = sws_getContext(width, height, src_pix_fmt,
409 -- width, height, PIX_FMT_YUV420P, flags, NULL, NULL, NULL);
410 -+ width, height, AV_PIX_FMT_YUV420P, flags, NULL, NULL, NULL);
411 - #else
412 - struct SwsContext *context = sws_getContext( width, height, pix_fmt,
413 -- width, height, self->full_luma ? PIX_FMT_YUVJ420P : PIX_FMT_YUV420P,
414 -+ width, height, self->full_luma ? AV_PIX_FMT_YUVJ420P : AV_PIX_FMT_YUV420P,
415 - flags, NULL, NULL, NULL);
416 - #endif
417 -
418 -@@ -1133,9 +1127,9 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
419 - else if ( *format == mlt_image_rgb24 )
420 - {
421 - struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
422 -- width, height, PIX_FMT_RGB24, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
423 -+ width, height, AV_PIX_FMT_RGB24, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
424 - AVPicture output;
425 -- avpicture_fill( &output, buffer, PIX_FMT_RGB24, width, height );
426 -+ avpicture_fill( &output, buffer, AV_PIX_FMT_RGB24, width, height );
427 - // libswscale wants the RGB colorspace to be SWS_CS_DEFAULT, which is = SWS_CS_ITU601.
428 - set_luma_transfer( context, self->yuv_colorspace, 601, self->full_luma, 0 );
429 - sws_scale( context, (const uint8_t* const*) frame->data, frame->linesize, 0, height,
430 -@@ -1145,9 +1139,9 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
431 - else if ( *format == mlt_image_rgb24a || *format == mlt_image_opengl )
432 - {
433 - struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
434 -- width, height, PIX_FMT_RGBA, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
435 -+ width, height, AV_PIX_FMT_RGBA, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
436 - AVPicture output;
437 -- avpicture_fill( &output, buffer, PIX_FMT_RGBA, width, height );
438 -+ avpicture_fill( &output, buffer, AV_PIX_FMT_RGBA, width, height );
439 - // libswscale wants the RGB colorspace to be SWS_CS_DEFAULT, which is = SWS_CS_ITU601.
440 - set_luma_transfer( context, self->yuv_colorspace, 601, self->full_luma, 0 );
441 - sws_scale( context, (const uint8_t* const*) frame->data, frame->linesize, 0, height,
442 -@@ -1158,13 +1152,13 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
443 - {
444 - #if defined(FFUDIV) && (LIBAVFORMAT_VERSION_INT >= ((55<<16)+(48<<8)+100))
445 - struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
446 -- width, height, PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
447 -+ width, height, AV_PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
448 - #else
449 - struct SwsContext *context = sws_getContext( width, height, pix_fmt,
450 -- width, height, PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
451 -+ width, height, AV_PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
452 - #endif
453 - AVPicture output;
454 -- avpicture_fill( &output, buffer, PIX_FMT_YUYV422, width, height );
455 -+ avpicture_fill( &output, buffer, AV_PIX_FMT_YUYV422, width, height );
456 - if ( !set_luma_transfer( context, self->yuv_colorspace, profile->colorspace, self->full_luma, 0 ) )
457 - result = profile->colorspace;
458 - sws_scale( context, (const uint8_t* const*) frame->data, frame->linesize, 0, height,
459 -@@ -1297,12 +1291,11 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
460 - double delay = mlt_properties_get_double( properties, "video_delay" );
461 -
462 - // Seek if necessary
463 -- const char *interp = mlt_properties_get( frame_properties, "rescale.interp" );
464 -- int preseek = must_decode
465 -+ int preseek = must_decode && codec_context->has_b_frames;
466 - #if defined(FFUDIV)
467 -- && ( interp && strcmp( interp, "nearest" ) )
468 -+ const char *interp = mlt_properties_get( frame_properties, "rescale.interp" );
469 -+ preseek = preseek && interp && strcmp( interp, "nearest" );
470 - #endif
471 -- && codec_context->has_b_frames;
472 - int paused = seek_video( self, position, req_position, preseek );
473 -
474 - // Seek might have reopened the file
475 -@@ -1310,10 +1303,10 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
476 - stream = context->streams[ self->video_index ];
477 - codec_context = stream->codec;
478 - if ( *format == mlt_image_none || *format == mlt_image_glsl ||
479 -- codec_context->pix_fmt == PIX_FMT_ARGB ||
480 -- codec_context->pix_fmt == PIX_FMT_RGBA ||
481 -- codec_context->pix_fmt == PIX_FMT_ABGR ||
482 -- codec_context->pix_fmt == PIX_FMT_BGRA )
483 -+ codec_context->pix_fmt == AV_PIX_FMT_ARGB ||
484 -+ codec_context->pix_fmt == AV_PIX_FMT_RGBA ||
485 -+ codec_context->pix_fmt == AV_PIX_FMT_ABGR ||
486 -+ codec_context->pix_fmt == AV_PIX_FMT_BGRA )
487 - *format = pick_image_format( codec_context->pix_fmt );
488 - #if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((2<<16)+(5<<8)+102))
489 - else if ( codec_context->pix_fmt == AV_PIX_FMT_BAYER_RGGB16LE ) {
490 -@@ -1346,7 +1339,7 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
491 - picture.linesize[1] = codec_context->width / 2;
492 - picture.linesize[2] = codec_context->width / 2;
493 - yuv_colorspace = convert_image( self, (AVFrame*) &picture, *buffer,
494 -- PIX_FMT_YUV420P, format, *width, *height, &alpha );
495 -+ AV_PIX_FMT_YUV420P, format, *width, *height, &alpha );
496 - }
497 - else
498 - #endif
499 -@@ -1539,7 +1532,7 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
500 - VdpStatus status = vdp_surface_get_bits( render->surface, dest_format, planes, pitches );
501 - if ( status == VDP_STATUS_OK )
502 - {
503 -- yuv_colorspace = convert_image( self, self->video_frame, *buffer, PIX_FMT_YUV420P,
504 -+ yuv_colorspace = convert_image( self, self->video_frame, *buffer, AV_PIX_FMT_YUV420P,
505 - format, *width, *height, &alpha );
506 - mlt_properties_set_int( frame_properties, "colorspace", yuv_colorspace );
507 - }
508 -diff --git a/src/modules/avformat/vdpau.c b/src/modules/avformat/vdpau.c
509 -index 719db1c..4f2e6b9 100644
510 ---- a/src/modules/avformat/vdpau.c
511 -+++ b/src/modules/avformat/vdpau.c
512 -@@ -136,9 +136,9 @@ static int vdpau_init( producer_avformat self )
513 - return success;
514 - }
515 -
516 --static enum PixelFormat vdpau_get_format( struct AVCodecContext *s, const enum PixelFormat *fmt )
517 -+static enum AVPixelFormat vdpau_get_format( struct AVCodecContext *s, const enum AVPixelFormat *fmt )
518 - {
519 -- return PIX_FMT_VDPAU_H264;
520 -+ return AV_PIX_FMT_VDPAU_H264;
521 - }
522 -
523 - static int vdpau_get_buffer( AVCodecContext *codec_context, AVFrame *frame )
524 -@@ -240,7 +240,7 @@ static int vdpau_decoder_init( producer_avformat self )
525 - self->video_codec->release_buffer = vdpau_release_buffer;
526 - self->video_codec->draw_horiz_band = vdpau_draw_horiz;
527 - self->video_codec->slice_flags = SLICE_FLAG_CODED_ORDER | SLICE_FLAG_ALLOW_FIELD;
528 -- self->video_codec->pix_fmt = PIX_FMT_VDPAU_H264;
529 -+ self->video_codec->pix_fmt = AV_PIX_FMT_VDPAU_H264;
530 -
531 - VdpDecoderProfile profile = VDP_DECODER_PROFILE_H264_HIGH;
532 - uint32_t max_references = self->video_codec->refs;
533
534 diff --git a/media-libs/mlt/files/mlt-0.9.8-ruby-link.patch b/media-libs/mlt/files/mlt-0.9.8-ruby-link.patch
535 deleted file mode 100644
536 index 9b2327d..0000000
537 --- a/media-libs/mlt/files/mlt-0.9.8-ruby-link.patch
538 +++ /dev/null
539 @@ -1,19 +0,0 @@
540 -The build system tries to link to installed system libraries first, which
541 -fails because the ABI has changed...
542 -
543 -Index: mlt-0.9.8/src/swig/ruby/build
544 -===================================================================
545 ---- mlt-0.9.8.orig/src/swig/ruby/build
546 -+++ mlt-0.9.8/src/swig/ruby/build
547 -@@ -5,8 +5,10 @@ if ARGV.shift == 'clean'
548 - exit 0
549 - end
550 - system( "ln -sf ../mlt.i" )
551 -+system( "ln -sf ../../framework/libmlt.so" )
552 -+system( "ln -sf ../../mlt++/libmlt++.so" )
553 - system( "swig -c++ -ruby -I../../mlt++ -I../.. mlt.i" )
554 - $CFLAGS += " -I../.. " + (ENV.has_key?('CXXFLAGS')? ENV['CXXFLAGS'] : '')
555 --$LDFLAGS += " -L../../mlt++ -lmlt++"
556 -+$LIBS += " -lmlt++ -lmlt -lstdc++"
557 - create_makefile('mlt')
558 - system( "make" )
559
560 diff --git a/media-libs/mlt/mlt-0.9.8-r2.ebuild b/media-libs/mlt/mlt-0.9.8-r2.ebuild
561 deleted file mode 100644
562 index bfb4844..0000000
563 --- a/media-libs/mlt/mlt-0.9.8-r2.ebuild
564 +++ /dev/null
565 @@ -1,218 +0,0 @@
566 -# Copyright 1999-2016 Gentoo Foundation
567 -# Distributed under the terms of the GNU General Public License v2
568 -# $Id$
569 -
570 -EAPI=5
571 -PYTHON_COMPAT=( python2_7 )
572 -USE_RUBY="ruby19"
573 -inherit eutils toolchain-funcs multilib python-single-r1 ruby-single
574 -
575 -DESCRIPTION="Open source multimedia framework for television broadcasting"
576 -HOMEPAGE="http://www.mltframework.org/"
577 -SRC_URI="https://github.com/mltframework/mlt/archive/v0.9.8.tar.gz -> ${P}.tar.gz"
578 -
579 -LICENSE="GPL-3"
580 -SLOT="0"
581 -KEYWORDS="amd64 ~ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux"
582 -IUSE="compressed-lumas debug ffmpeg fftw frei0r gtk jack kde kdenlive libav libsamplerate melt opengl
583 -cpu_flags_x86_mmx qt4 qt5 rtaudio sdl cpu_flags_x86_sse cpu_flags_x86_sse2 xine xml lua python ruby vdpau"
584 -# java perl php tcl vidstab
585 -IUSE="${IUSE} kernel_linux"
586 -
587 -#rtaudio will use OSS on non linux OSes
588 -COMMON_DEPEND="
589 - ffmpeg? (
590 - libav? ( media-video/libav:0=[vdpau?] )
591 - !libav? ( media-video/ffmpeg:0=[vdpau?] )
592 - )
593 - xml? ( >=dev-libs/libxml2-2.5 )
594 - sdl? ( >=media-libs/libsdl-1.2.10[X,opengl,video]
595 - >=media-libs/sdl-image-1.2.4 )
596 - libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
597 - jack? ( >=media-sound/jack-audio-connection-kit-0.121.3
598 - media-libs/ladspa-sdk
599 - >=dev-libs/libxml2-2.5 )
600 - fftw? ( sci-libs/fftw:3.0= )
601 - frei0r? ( media-plugins/frei0r-plugins )
602 - gtk? ( x11-libs/gtk+:2
603 - media-libs/libexif
604 - x11-libs/pango )
605 - opengl? ( media-video/movit )
606 - rtaudio? ( kernel_linux? ( media-libs/alsa-lib ) )
607 - xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
608 - qt5? (
609 - dev-qt/qtcore:5
610 - dev-qt/qtgui:5
611 - dev-qt/qtsvg:5
612 - dev-qt/qtwidgets:5
613 - dev-qt/qtxml:5
614 - media-libs/libexif
615 - x11-libs/libX11
616 - opengl? ( dev-qt/qtopengl:5 )
617 - )
618 - qt4? (
619 - dev-qt/qtcore:4
620 - dev-qt/qtgui:4
621 - dev-qt/qtsvg:4
622 - media-libs/libexif
623 - x11-libs/libX11
624 - opengl? ( dev-qt/qtopengl:4 )
625 - )
626 - kde? ( kde-base/kdelibs:4 )
627 - lua? ( >=dev-lang/lua-5.1.4-r4:= )
628 - ruby? ( ${RUBY_DEPS} )"
629 -# sox? ( media-sound/sox )
630 -# java? ( >=virtual/jre-1.5 )
631 -# perl? ( dev-lang/perl )
632 -# php? ( dev-lang/php )
633 -# tcl? ( dev-lang/tcl:0= )
634 -# vidstab? ( media-libs/libvidstab )
635 -SWIG_DEPEND=">=dev-lang/swig-2.0"
636 -DEPEND="${COMMON_DEPEND}
637 - virtual/pkgconfig
638 - compressed-lumas? ( || ( media-gfx/imagemagick[png]
639 - media-gfx/graphicsmagick[imagemagick,png] ) )
640 - lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
641 - python? ( ${SWIG_DEPEND} ${PYTHON_DEPS} )
642 - ruby? ( ${SWIG_DEPEND} )"
643 -# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
644 -# perl? ( ${SWIG_DEPEND} )
645 -# php? ( ${SWIG_DEPEND} )
646 -# tcl? ( ${SWIG_DEPEND} )
647 -REPEND="${COMMON_DEPEND}
648 - !media-libs/mlt++
649 -"
650 -
651 -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
652 - qt5? ( !qt4 ) kde? ( qt4 )
653 -"
654 -
655 -pkg_setup() {
656 - use python && python-single-r1_pkg_setup
657 -}
658 -
659 -src_prepare() {
660 - epatch "${FILESDIR}"/${PN}-0.9.8-ruby-link.patch \
661 - "${FILESDIR}/${P}-ffmpeg3.patch"
662 -
663 - # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
664 - for x in python lua; do
665 - sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
666 - done
667 - sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
668 -
669 - epatch_user
670 -}
671 -
672 -src_configure() {
673 - tc-export CC CXX
674 -
675 - local myconf="--enable-gpl
676 - --enable-gpl3
677 - --enable-motion-est
678 - --target-arch=$(tc-arch)
679 - --disable-swfdec
680 - $(use_enable debug)
681 - $(use compressed-lumas && echo ' --luma-compress')
682 - $(use_enable cpu_flags_x86_sse sse)
683 - $(use_enable cpu_flags_x86_sse2 sse2)
684 - $(use_enable gtk gtk2)
685 - $(use_enable sdl)
686 - $(use_enable jack jackrack)
687 - $(use_enable ffmpeg avformat)
688 - $(use ffmpeg && echo ' --avformat-swscale')
689 - $(use_enable fftw plus)
690 - $(use_enable frei0r)
691 - $(use_enable melt)
692 - $(use_enable opengl)
693 - $(use_enable libsamplerate resample)
694 - $(use_enable rtaudio)
695 - $(use vdpau && echo ' --avformat-vdpau')
696 - $(use_enable xml)
697 - $(use_enable xine)
698 - $(use_enable kdenlive)
699 - --disable-sox"
700 - #$(use_enable sox) FIXME
701 -
702 - # kde means kde4 at this point
703 - if use qt5 ; then
704 - myconf+=" --enable-qt
705 - --qt-includedir=$(pkg-config Qt5Core --variable=includedir)
706 - --qt-libdir=$(pkg-config Qt5Core --variable=libdir)"
707 - elif use qt4 ; then
708 - # pkg-config QtCore does not give us qt4 parent include dir
709 - local qtinclude=$(pkg-config QtCore --variable=includedir)
710 - [[ ${qtinclude} == *QtCore ]] && qtinclude=$(dirname ${qtinclude})
711 - myconf+=" --enable-qt $(use_with kde)
712 - --qt-includedir=${qtinclude}
713 - --qt-libdir=$(pkg-config QtCore --variable=libdir)"
714 - else
715 - myconf+=" --disable-qt"
716 - fi
717 -
718 - if use x86 || use amd64 ; then
719 - myconf+=" $(use_enable cpu_flags_x86_mmx mmx)"
720 - else
721 - myconf+=" --disable-mmx"
722 - fi
723 -
724 - if ! use melt; then
725 - sed -i -e "s;src/melt;;" Makefile || die
726 - fi
727 -
728 - # TODO: add swig language bindings
729 - # see also http://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
730 -
731 - local swig_lang
732 - # TODO: java perl php tcl
733 - for i in lua python ruby ; do
734 - use $i && swig_lang="${swig_lang} $i"
735 - done
736 - [ -z "${swig_lang}" ] && swig_lang="none"
737 -
738 - econf ${myconf} --swig-languages="${swig_lang}"
739 -
740 - sed -i -e s/^OPT/#OPT/ "${S}/config.mak" || die
741 - if use qt5 || use qt4 ; then
742 - if ! use opengl ; then
743 - sed -i -e "/^USE_QT_OPENGL/ s/^/#/" "${S}/src/modules/qt/config.mak" || die
744 - fi
745 - fi
746 -}
747 -
748 -src_install() {
749 - emake DESTDIR="${D}" install
750 - dodoc AUTHORS ChangeLog NEWS README docs/*.txt
751 -
752 - dodir /usr/share/${PN}
753 - insinto /usr/share/${PN}
754 - doins -r demo
755 -
756 - docinto swig
757 -
758 - # Install SWIG bindings
759 - if use lua; then
760 - cd "${S}"/src/swig/lua || die
761 - exeinto $(pkg-config --variable INSTALL_CMOD lua)
762 - doexe mlt.so
763 - dodoc play.lua
764 - fi
765 -
766 - if use python; then
767 - cd "${S}"/src/swig/python || die
768 - insinto $(python_get_sitedir)
769 - doins mlt.py
770 - exeinto $(python_get_sitedir)
771 - doexe _mlt.so
772 - dodoc play.py
773 - python_optimize
774 - fi
775 -
776 - if use ruby; then
777 - cd "${S}"/src/swig/ruby || die
778 - exeinto $("${EPREFIX}"/usr/bin/ruby -r rbconfig -e 'print Config::CONFIG["sitearchdir"]')
779 - doexe mlt.so
780 - dodoc play.rb thumbs.rb
781 - fi
782 - # TODO: java perl php tcl
783 -}
784
785 diff --git a/media-libs/mlt/mlt-6.2.0-r1.ebuild b/media-libs/mlt/mlt-6.2.0-r1.ebuild
786 deleted file mode 100644
787 index 8288c66..0000000
788 --- a/media-libs/mlt/mlt-6.2.0-r1.ebuild
789 +++ /dev/null
790 @@ -1,200 +0,0 @@
791 -# Copyright 1999-2016 Gentoo Foundation
792 -# Distributed under the terms of the GNU General Public License v2
793 -# $Id$
794 -
795 -EAPI=6
796 -PYTHON_COMPAT=( python2_7 )
797 -USE_RUBY="ruby20"
798 -inherit eutils multilib python-single-r1 ruby-single toolchain-funcs
799 -
800 -DESCRIPTION="Open source multimedia framework for television broadcasting"
801 -HOMEPAGE="http://www.mltframework.org/"
802 -SRC_URI="https://github.com/mltframework/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
803 -
804 -LICENSE="GPL-3"
805 -SLOT="0"
806 -KEYWORDS="~amd64 ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
807 -IUSE="compressed-lumas debug ffmpeg fftw frei0r gtk jack kdenlive libav libsamplerate melt opengl
808 -cpu_flags_x86_mmx qt5 rtaudio sdl cpu_flags_x86_sse cpu_flags_x86_sse2 xine xml lua python ruby vdpau"
809 -# java perl php tcl vidstab
810 -IUSE="${IUSE} kernel_linux"
811 -
812 -#rtaudio will use OSS on non linux OSes
813 -COMMON_DEPEND="
814 - ffmpeg? (
815 - libav? ( media-video/libav:0=[vdpau?] )
816 - !libav? ( media-video/ffmpeg:0=[vdpau?] )
817 - )
818 - xml? ( >=dev-libs/libxml2-2.5 )
819 - sdl? ( >=media-libs/libsdl-1.2.10[X,opengl,video]
820 - >=media-libs/sdl-image-1.2.4 )
821 - libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
822 - jack? ( >=media-sound/jack-audio-connection-kit-0.121.3
823 - media-libs/ladspa-sdk
824 - >=dev-libs/libxml2-2.5 )
825 - fftw? ( sci-libs/fftw:3.0= )
826 - frei0r? ( media-plugins/frei0r-plugins )
827 - gtk? ( x11-libs/gtk+:2
828 - media-libs/libexif
829 - x11-libs/pango )
830 - opengl? ( media-video/movit )
831 - rtaudio? ( kernel_linux? ( media-libs/alsa-lib ) )
832 - xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
833 - qt5? (
834 - dev-qt/qtcore:5
835 - dev-qt/qtgui:5
836 - dev-qt/qtsvg:5
837 - dev-qt/qtwidgets:5
838 - dev-qt/qtxml:5
839 - media-libs/libexif
840 - x11-libs/libX11
841 - opengl? ( dev-qt/qtopengl:5 )
842 - )
843 - lua? ( >=dev-lang/lua-5.1.4-r4:= )
844 - ruby? ( ${RUBY_DEPS} )"
845 -# sox? ( media-sound/sox )
846 -# java? ( >=virtual/jre-1.5 )
847 -# perl? ( dev-lang/perl )
848 -# php? ( dev-lang/php )
849 -# tcl? ( dev-lang/tcl:0= )
850 -# vidstab? ( media-libs/libvidstab )
851 -SWIG_DEPEND=">=dev-lang/swig-2.0"
852 -DEPEND="${COMMON_DEPEND}
853 - virtual/pkgconfig
854 - compressed-lumas? ( || ( media-gfx/imagemagick[png]
855 - media-gfx/graphicsmagick[imagemagick,png] ) )
856 - lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
857 - python? ( ${SWIG_DEPEND} ${PYTHON_DEPS} )
858 - ruby? ( ${SWIG_DEPEND} )"
859 -# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
860 -# perl? ( ${SWIG_DEPEND} )
861 -# php? ( ${SWIG_DEPEND} )
862 -# tcl? ( ${SWIG_DEPEND} )
863 -RDEPEND="${COMMON_DEPEND}
864 - !media-libs/mlt++
865 -"
866 -
867 -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
868 -
869 -pkg_setup() {
870 - use python && python-single-r1_pkg_setup
871 -}
872 -
873 -src_prepare() {
874 -
875 - epatch "${FILESDIR}"/${PN}-6.2.0-ruby-link.patch
876 -
877 - # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
878 - for x in python lua; do
879 - sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
880 - done
881 - sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
882 -
883 - default
884 -}
885 -
886 -src_configure() {
887 - tc-export CC CXX
888 -
889 - local myconf="--enable-gpl
890 - --enable-gpl3
891 - --enable-motion-est
892 - --target-arch=$(tc-arch)
893 - --disable-kde
894 - --disable-swfdec
895 - $(use_enable debug)
896 - $(use compressed-lumas && echo ' --luma-compress')
897 - $(use_enable cpu_flags_x86_sse sse)
898 - $(use_enable cpu_flags_x86_sse2 sse2)
899 - $(use_enable gtk gtk2)
900 - $(use_enable sdl)
901 - $(use_enable jack jackrack)
902 - $(use_enable ffmpeg avformat)
903 - $(use ffmpeg && echo ' --avformat-swscale')
904 - $(use_enable fftw plus)
905 - $(use_enable frei0r)
906 - $(use_enable melt)
907 - $(use_enable opengl)
908 - $(use_enable libsamplerate resample)
909 - $(use_enable rtaudio)
910 - $(use vdpau && echo ' --avformat-vdpau')
911 - $(use_enable xml)
912 - $(use_enable xine)
913 - $(use_enable kdenlive)
914 - --disable-sox"
915 - #$(use_enable sox) FIXME
916 -
917 - if use qt5 ; then
918 - myconf+=" --enable-qt
919 - --qt-includedir=$(pkg-config Qt5Core --variable=includedir)
920 - --qt-libdir=$(pkg-config Qt5Core --variable=libdir)"
921 - else
922 - myconf+=" --disable-qt"
923 - fi
924 -
925 - if use x86 || use amd64 ; then
926 - myconf+=" $(use_enable cpu_flags_x86_mmx mmx)"
927 - else
928 - myconf+=" --disable-mmx"
929 - fi
930 -
931 - if ! use melt; then
932 - sed -i -e "s;src/melt;;" Makefile || die
933 - fi
934 -
935 - # TODO: add swig language bindings
936 - # see also http://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
937 -
938 - local swig_lang
939 - # TODO: java perl php tcl
940 - for i in lua python ruby ; do
941 - use $i && swig_lang="${swig_lang} $i"
942 - done
943 - [ -z "${swig_lang}" ] && swig_lang="none"
944 -
945 - econf ${myconf} --swig-languages="${swig_lang}"
946 -
947 - sed -i -e s/^OPT/#OPT/ "${S}/config.mak" || die
948 - if use qt5 ; then
949 - if ! use opengl ; then
950 - sed -i -e "/^USE_QT_OPENGL/ s/^/#/" "${S}/src/modules/qt/config.mak" || die
951 - fi
952 - fi
953 -}
954 -
955 -src_install() {
956 - emake DESTDIR="${D}" install
957 - dodoc AUTHORS ChangeLog NEWS README docs/*.txt
958 -
959 - dodir /usr/share/${PN}
960 - insinto /usr/share/${PN}
961 - doins -r demo
962 -
963 - docinto swig
964 -
965 - # Install SWIG bindings
966 - if use lua; then
967 - cd "${S}"/src/swig/lua || die
968 - exeinto $(pkg-config --variable INSTALL_CMOD lua)
969 - doexe mlt.so
970 - dodoc play.lua
971 - fi
972 -
973 - if use python; then
974 - cd "${S}"/src/swig/python || die
975 - insinto $(python_get_sitedir)
976 - doins mlt.py
977 - exeinto $(python_get_sitedir)
978 - doexe _mlt.so
979 - dodoc play.py
980 - python_optimize
981 - fi
982 -
983 - if use ruby; then
984 - cd "${S}"/src/swig/ruby || die
985 - exeinto $("${EPREFIX}"/usr/bin/ruby -r rbconfig -e 'print Config::CONFIG["sitearchdir"]')
986 - doexe mlt.so
987 - dodoc play.rb thumbs.rb
988 - fi
989 - # TODO: java perl php tcl
990 -}