From: Jakub Bogusz Date: Fri, 9 Aug 2013 18:11:53 +0000 (+0200) Subject: - updated to 2.0.8a X-Git-Tag: auto/th/vlc-2.0.8-1~1 X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=commitdiff_plain;h=e4b3c153ebb878ae86ea386fd3d32409bf4319d9;p=packages%2Fvlc.git - updated to 2.0.8a - removed obsolete libva,flac patches - completed ffmpeg,libdvbpsi patches - package shine,omxil,egl/gl,media-library plugins --- diff --git a/libva.patch b/libva.patch deleted file mode 100644 index 724336f..0000000 --- a/libva.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 581e530bf98f253fea39ec9bfd9f3287acb1a8c6 Mon Sep 17 00:00:00 2001 -From: Timo Rothenpieler -Date: Sun, 20 Jan 2013 15:49:23 +0000 -Subject: [PATCH] Make vaapi decoder compatible with latest libva changes - -Signed-off-by: Jean-Baptiste Kempf -(cherry picked from commit dc4b64c97b82d4d590ccf7fa1c938435cc26d98e) -Signed-off-by: Jean-Baptiste Kempf ---- - modules/codec/avcodec/vaapi.c | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/modules/codec/avcodec/vaapi.c b/modules/codec/avcodec/vaapi.c -index 893ea15..d8703a0 100644 ---- a/modules/codec/avcodec/vaapi.c -+++ b/modules/codec/avcodec/vaapi.c -@@ -41,6 +41,11 @@ - #include "va.h" - #include "copy.h" - -+#ifndef VA_SURFACE_ATTRIB_SETTABLE -+#define vaCreateSurfaces(d, f, w, h, s, ns, a, na) \ -+ vaCreateSurfaces(d, w, h, f, ns, s) -+#endif -+ - #ifdef HAVE_AVCODEC_VAAPI - - #include -@@ -258,8 +263,8 @@ static int CreateSurfaces( vlc_va_sys_t *p_va, void **pp_hw_ctx, vlc_fourcc_t *p - - /* Create surfaces */ - VASurfaceID pi_surface_id[p_va->i_surface_count]; -- if( vaCreateSurfaces( p_va->p_display, i_width, i_height, VA_RT_FORMAT_YUV420, -- p_va->i_surface_count, pi_surface_id ) ) -+ if( vaCreateSurfaces( p_va->p_display, VA_RT_FORMAT_YUV420, i_width, i_height, -+ pi_surface_id, p_va->i_surface_count, NULL, 0 ) ) - { - for( int i = 0; i < p_va->i_surface_count; i++ ) - p_va->p_surface[i].i_id = VA_INVALID_SURFACE; --- -1.7.10.4 - diff --git a/vlc-ffmpeg.patch b/vlc-ffmpeg.patch index 5764be4..54113af 100644 --- a/vlc-ffmpeg.patch +++ b/vlc-ffmpeg.patch @@ -154,3 +154,93 @@ else p_sys->i_buffer_out = p_sys->i_frame_size * p_sys->i_sample_bytes; p_sys->p_buffer_out = malloc( p_sys->i_buffer_out ); +--- vlc-2.0.8/modules/stream_out/switcher.c.orig 2013-06-18 00:07:53.000000000 +0200 ++++ vlc-2.0.8/modules/stream_out/switcher.c 2013-08-09 18:03:43.092571170 +0200 +@@ -361,27 +361,28 @@ + + /* Set CPU capabilities */ + unsigned i_cpu = vlc_CPU(); +- id->ff_enc_c->dsp_mask = 0; ++ int cpu_flags = av_get_cpu_flags(); + if( !(i_cpu & CPU_CAPABILITY_MMX) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_MMX; ++ cpu_flags &= ~AV_CPU_FLAG_MMX; + } + if( !(i_cpu & CPU_CAPABILITY_MMXEXT) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_MMX2; ++ cpu_flags &= ~AV_CPU_FLAG_MMX2; + } + if( !(i_cpu & CPU_CAPABILITY_3DNOW) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_3DNOW; ++ cpu_flags &= ~AV_CPU_FLAG_3DNOW; + } + if( !(i_cpu & CPU_CAPABILITY_SSE) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_SSE; ++ cpu_flags &= ~AV_CPU_FLAG_SSE; + } + if( !(i_cpu & CPU_CAPABILITY_SSE2) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_SSE2; ++ cpu_flags &= ~AV_CPU_FLAG_SSE2; + } ++ av_force_cpu_flags(cpu_flags); + + id->ff_enc_c->sample_rate = p_fmt->audio.i_rate; + id->ff_enc_c->time_base.num = 1; +@@ -404,7 +405,7 @@ + } + vlc_avcodec_unlock(); + +- id->p_buffer_out = malloc( AVCODEC_MAX_AUDIO_FRAME_SIZE * 2 ); ++ id->p_buffer_out = malloc( 192000 /* AVCODEC_MAX_AUDIO_FRAME_SIZE */ * 2 ); + id->p_samples = calloc( id->ff_enc_c->frame_size * p_fmt->audio.i_channels, + sizeof(int16_t) ); + if( !id->p_buffer_out || !id->p_samples ) +@@ -762,27 +763,28 @@ + + /* Set CPU capabilities */ + unsigned i_cpu = vlc_CPU(); +- id->ff_enc_c->dsp_mask = 0; ++ int cpu_flags = av_get_cpu_flags(); + if( !(i_cpu & CPU_CAPABILITY_MMX) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_MMX; ++ cpu_flags &= ~AV_CPU_FLAG_MMX; + } + if( !(i_cpu & CPU_CAPABILITY_MMXEXT) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_MMX2; ++ cpu_flags &= ~AV_CPU_FLAG_MMX2; + } + if( !(i_cpu & CPU_CAPABILITY_3DNOW) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_3DNOW; ++ cpu_flags &= ~AV_CPU_FLAG_3DNOW; + } + if( !(i_cpu & CPU_CAPABILITY_SSE) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_SSE; ++ cpu_flags &= ~AV_CPU_FLAG_SSE; + } + if( !(i_cpu & CPU_CAPABILITY_SSE2) ) + { +- id->ff_enc_c->dsp_mask |= AV_CPU_FLAG_SSE2; ++ cpu_flags &= ~AV_CPU_FLAG_SSE2; + } ++ av_force_cpu_flags(cpu_flags); + + id->ff_enc_c->width = p_sys->p_pictures[p_sys->i_cmd-1].format.i_width; + id->ff_enc_c->height = p_sys->p_pictures[p_sys->i_cmd-1].format.i_height; +@@ -969,7 +971,7 @@ + + (void)p_stream; + i_out = avcodec_encode_audio( id->ff_enc_c, id->p_buffer_out, +- 2 * AVCODEC_MAX_AUDIO_FRAME_SIZE, ++ 2 * 192000 /* AVCODEC_MAX_AUDIO_FRAME_SIZE */, + id->p_samples ); + + if ( i_out <= 0 ) diff --git a/vlc-flac.patch b/vlc-flac.patch deleted file mode 100644 index 303417f..0000000 --- a/vlc-flac.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- vlc-2.0.6/modules/codec/flac.c.orig 2013-01-25 13:30:14.000000000 +0100 -+++ vlc-2.0.6/modules/codec/flac.c 2013-06-06 22:26:47.176022021 +0200 -@@ -38,8 +38,8 @@ - #include - #include - --#include --#include -+#include -+#include - - #include - #include diff --git a/vlc-libdvbpsi.patch b/vlc-libdvbpsi.patch index 1d384fe..37cf280 100644 --- a/vlc-libdvbpsi.patch +++ b/vlc-libdvbpsi.patch @@ -501,3 +501,82 @@ Index: modules/mux/mpeg/ts.c p_sdt = WritePSISection( p_mux->p_sout, p_section2 ); PEStoTS( p_mux->p_sout, c, p_sdt, &p_sys->sdt ); dvbpsi_DeletePSISections( p_section2 ); +--- modules/demux/ts.c.orig 2013-08-08 19:38:57.049290576 +0200 ++++ modules/demux/ts.c 2013-08-09 16:06:44.526199046 +0200 +@@ -3264,7 +3264,7 @@ + { + if( b_current_following && + ( p_sys->i_current_program == -1 || +- p_sys->i_current_program == p_eit->i_service_id ) ) ++ p_sys->i_current_program == p_eit->i_extension ) ) + { + p_sys->i_dvb_length = 0; + p_sys->i_dvb_start = 0; +@@ -3275,7 +3275,7 @@ + p_sys->i_dvb_length = CLOCK_FREQ * p_epg->p_current->i_duration; + } + } +- es_out_Control( p_demux->out, ES_OUT_SET_GROUP_EPG, p_eit->i_service_id, p_epg ); ++ es_out_Control( p_demux->out, ES_OUT_SET_GROUP_EPG, p_eit->i_extension, p_epg ); + } + vlc_epg_Delete( p_epg ); + +@@ -4506,7 +4506,8 @@ + { + PIDInit( pmt, true, pat->psi ); + pmt->psi->prg[pmt->psi->i_prg-1]->handle = +- dvbpsi_pmt_attach( p_program->i_number, ++ dvbpsi_new(NULL, 0); ++ dvbpsi_pmt_attach(pmt->psi->prg[pmt->psi->i_prg-1]->handle, p_program->i_number, + (dvbpsi_pmt_callback)PMTCallBack, + p_demux ); + pmt->psi->prg[pmt->psi->i_prg-1]->i_number = +--- modules/mux/mpeg/ts.c.orig 2013-08-09 16:18:12.519503507 +0200 ++++ modules/mux/mpeg/ts.c 2013-08-09 17:30:33.465988000 +0200 +@@ -2341,8 +2341,10 @@ + p_sys->i_pmt_program_number[i], + p_sys->pmt[i].i_pid ); + +- p_section = dvbpsi_pat_sections_generate( &pat, ++ dvbpsi_t *dvbpsi = dvbpsi_new(NULL, 0); ++ p_section = dvbpsi_pat_sections_generate( dvbpsi, &pat, + 0 ); /* max program per section */ ++ dvbpsi_delete(dvbpsi); + + p_pat = WritePSISection( p_mux->p_sout, p_section ); + +@@ -2394,7 +2396,7 @@ + } + + if( p_sys->b_sdt ) +- dvbpsi_sdt_init( &sdt, p_sys->i_tsid, 1, 1, p_sys->i_netid ); ++ dvbpsi_sdt_init( &sdt, p_sys->i_tsid, 1, 1, false, p_sys->i_netid ); + + for( i = 0; i < p_sys->i_num_pmt; i++ ) + { +@@ -2737,9 +2739,10 @@ + } + } + ++ dvbpsi_t *dvbpsi = dvbpsi_new(NULL, 0); + for( i = 0; i < p_sys->i_num_pmt; i++ ) + { +- p_section[i] = dvbpsi_pmt_sections_generate( &p_sys->dvbpmt[i] ); ++ p_section[i] = dvbpsi_pmt_sections_generate( dvbpsi, &p_sys->dvbpmt[i] ); + p_pmt[i] = WritePSISection( p_mux->p_sout, p_section[i] ); + PEStoTS( p_mux->p_sout, c, p_pmt[i], &p_sys->pmt[i] ); + dvbpsi_DeletePSISections( p_section[i] ); +@@ -2748,10 +2751,11 @@ + + if( p_sys->b_sdt ) + { +- p_section2 = dvbpsi_sdt_sections_generate( &sdt ); ++ p_section2 = dvbpsi_sdt_sections_generate( dvbpsi, &sdt ); + p_sdt = WritePSISection( p_mux->p_sout, p_section2 ); + PEStoTS( p_mux->p_sout, c, p_sdt, &p_sys->sdt ); + dvbpsi_DeletePSISections( p_section2 ); +- dvbpsi_EmptySDT( &sdt ); ++ dvbpsi_sdt_empty( &sdt ); + } ++ dvbpsi_delete(dvbpsi); + } diff --git a/vlc.spec b/vlc.spec index 77dad56..458eecf 100644 --- a/vlc.spec +++ b/vlc.spec @@ -9,11 +9,6 @@ # - /usr/share/vlc/utils scripts insecure (use /tmp hardcoded paths) # - [recheck old TODO]: flac plugin doesn't work with mono files # - --enable-wma-fixed (fixed-point WMA - does it make sense on non-embedded?) -## - --enable-shine (fixed-point MP3 encoding) -## - --enable-omxil (openmax il codec) -# - --enable-iomx (iomx codec) -## - --enable-egl (R: OpenGL-devel, EGL-devel) -## - --enable-media-library (Qt-based?) # - decklink plugin (BR: Blackmagick DeckLink SDI, DeckLinkAPIDispatch.cpp) [proprietary?] # - Hildon (hildon-1.pc hildon-fm-2.pc) # - OSSO_SCREENSAVER (libosso.pc - Maemo platform) @@ -59,25 +54,24 @@ Summary: VLC - a multimedia player and stream server Summary(pl.UTF-8): VLC - odtwarzacz multimedialny oraz serwer strumieni Name: vlc -Version: 2.0.7 -Release: 4 +Version: 2.0.8 +Release: 1 License: GPL v2+ Group: X11/Applications/Multimedia -Source0: http://download.videolan.org/pub/videolan/vlc/%{version}/%{name}-%{version}.tar.xz -# Source0-md5: 3b0e465b0990097b65abaf3e25589957 +Source0: http://download.videolan.org/pub/videolan/vlc/%{version}/%{name}-%{version}a.tar.xz +# Source0-md5: e5000677181406d026ffe448633d1ca0 Patch0: %{name}-buildflags.patch Patch1: %{name}-defaultfont.patch Patch2: %{name}-system-minizip.patch Patch3: xmas-sucks.patch Patch4: %{name}-opencv.patch -Patch5: libva.patch -Patch6: %{name}-flac.patch Patch7: no-cache.patch Patch8: %{name}-ffmpeg.patch Patch9: %{name}-libdvbpsi.patch Patch10: %{name}-live555.patch URL: http://www.videolan.org/vlc/ %{?with_directfb:BuildRequires: DirectFB-devel} +BuildRequires: EGL-devel BuildRequires: OpenGL-devel BuildRequires: QtCore-devel >= %{qtver} BuildRequires: QtGui-devel >= %{qtver} @@ -324,8 +318,6 @@ Akcje klienta VLC dla Solid. %patch3 -p1 %endif %patch4 -p1 -%patch5 -p1 -%patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p0 @@ -615,6 +607,8 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/vlc/plugins/codec/liblibmpeg2_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/codec/liblpcm_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/codec/libmpeg_audio_plugin.so +# R: libomxil-bellagio (dlopened, no .so NEEDED dependency) +%attr(755,root,root) %{_libdir}/vlc/plugins/codec/libomxil_plugin.so # R: opus %attr(755,root,root) %{_libdir}/vlc/plugins/codec/libopus_plugin.so # R: libpng @@ -625,6 +619,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/vlc/plugins/codec/libschroedinger_plugin.so # R: SDL_image >= 1.2.10 %attr(755,root,root) %{_libdir}/vlc/plugins/codec/libsdl_image_plugin.so +%attr(755,root,root) %{_libdir}/vlc/plugins/codec/libshine_plugin.so # R: speex >= 1.0.5 %{?with_speex:%attr(755,root,root) %{_libdir}/vlc/plugins/codec/libspeex_plugin.so} %attr(755,root,root) %{_libdir}/vlc/plugins/codec/libspudec_plugin.so @@ -718,6 +713,8 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/vlc/plugins/meta_engine/libfolder_plugin.so # R: taglib >= 1.5 %attr(755,root,root) %{_libdir}/vlc/plugins/meta_engine/libtaglib_plugin.so +%dir %{_libdir}/vlc/plugins/media_library +%attr(755,root,root) %{_libdir}/vlc/plugins/media_library/libmedia_library_plugin.so %dir %{_libdir}/vlc/plugins/misc %attr(755,root,root) %{_libdir}/vlc/plugins/misc/libaudioscrobbler_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/misc/libexport_plugin.so @@ -726,6 +723,8 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/vlc/plugins/misc/libinhibit_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/misc/liblogger_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/misc/libmemcpy_plugin.so +# R: sqlite3 +%attr(755,root,root) %{_libdir}/vlc/plugins/misc/libsqlite_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/misc/libxdg_screensaver_plugin.so %ifarch %{ix86} %{x8664} @@ -938,6 +937,10 @@ rm -rf $RPM_BUILD_ROOT %{?with_aalib:%attr(755,root,root) %{_libdir}/vlc/plugins/video_output/libaa_plugin.so} # R: libcaca >= 0.99-0.beta14 %{?with_caca:%attr(755,root,root) %{_libdir}/vlc/plugins/video_output/libcaca_plugin.so} +# R: EGL, xorg-lib-libX11 +%attr(755,root,root) %{_libdir}/vlc/plugins/video_output/libegl_plugin.so +# R: OpenGL +%attr(755,root,root) %{_libdir}/vlc/plugins/video_output/libgl_plugin.so # R: OpenGL libxcb >= 1.6 %attr(755,root,root) %{_libdir}/vlc/plugins/video_output/libxcb_glx_plugin.so %attr(755,root,root) %{_libdir}/vlc/plugins/video_output/libxcb_window_plugin.so