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-video/vlc/, media-video/vlc/files/
Date: Sat, 26 Nov 2016 18:00:30
Message-Id: 1480183209.6ffd3e6806dc84eabb4ca910038a4628304b8db2.kensington@gentoo
1 commit: 6ffd3e6806dc84eabb4ca910038a4628304b8db2
2 Author: Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
3 AuthorDate: Sat Nov 26 15:34:39 2016 +0000
4 Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
5 CommitDate: Sat Nov 26 18:00:09 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6ffd3e68
7
8 media-video/vlc: Drop USE=media-library, fix some ALSA issues
9
10 Upstream seems unwilling to fix it in 2.2 branch.
11
12 Gentoo-bug: 594126, 592784
13
14 Package-Manager: portage-2.3.0
15
16 .../vlc/files/vlc-2.2.4-alsa-large-buffers.patch | 47 ++++++++++++++++++++++
17 .../vlc/files/vlc-2.2.4-decoder-lock-scope.patch | 47 ++++++++++++++++++++++
18 media-video/vlc/metadata.xml | 1 -
19 media-video/vlc/vlc-2.2.1-r1.ebuild | 2 +-
20 media-video/vlc/vlc-2.2.4.ebuild | 2 +-
21 media-video/vlc/vlc-2.2.9999.ebuild | 6 ++-
22 6 files changed, 101 insertions(+), 4 deletions(-)
23
24 diff --git a/media-video/vlc/files/vlc-2.2.4-alsa-large-buffers.patch b/media-video/vlc/files/vlc-2.2.4-alsa-large-buffers.patch
25 new file mode 100644
26 index 00000000..b5a9ff7
27 --- /dev/null
28 +++ b/media-video/vlc/files/vlc-2.2.4-alsa-large-buffers.patch
29 @@ -0,0 +1,47 @@
30 +X-Git-Url: https://git.videolan.org/?p=vlc.git;a=blobdiff_plain;f=modules%2Faudio_output%2Falsa.c;h=4e9fd53592d048baa8b57f30df15ab5806139d07;hp=2d1f99e9cb743bca12c6bdf32cc84a92d07fda8b;hb=47f74a83c161173b0d15e95dab8ceb7c97de51b4;hpb=6ae2905ef7fbc7de3a3a4a1bdf8ad6df46ce570a
31 +
32 +diff --git a/modules/audio_output/alsa.c b/modules/audio_output/alsa.c
33 +index 2d1f99e..4e9fd53 100644
34 +--- a/modules/audio_output/alsa.c
35 ++++ b/modules/audio_output/alsa.c
36 +@@ -495,6 +495,15 @@ static int Start (audio_output_t *aout, audio_sample_format_t *restrict fmt)
37 + }
38 + sys->rate = fmt->i_rate;
39 +
40 ++#if 1 /* work-around for period-long latency outputs (e.g. PulseAudio): */
41 ++ param = AOUT_MIN_PREPARE_TIME;
42 ++ val = snd_pcm_hw_params_set_period_time_near (pcm, hw, &param, NULL);
43 ++ if (val)
44 ++ {
45 ++ msg_Err (aout, "cannot set period: %s", snd_strerror (val));
46 ++ goto error;
47 ++ }
48 ++#endif
49 + /* Set buffer size */
50 + param = AOUT_MAX_ADVANCE_TIME;
51 + val = snd_pcm_hw_params_set_buffer_time_near (pcm, hw, &param, NULL);
52 +@@ -503,14 +512,22 @@ static int Start (audio_output_t *aout, audio_sample_format_t *restrict fmt)
53 + msg_Err (aout, "cannot set buffer duration: %s", snd_strerror (val));
54 + goto error;
55 + }
56 +-
57 +- param = AOUT_MIN_PREPARE_TIME;
58 ++#if 0
59 ++ val = snd_pcm_hw_params_get_buffer_time (hw, &param, NULL);
60 ++ if (val)
61 ++ {
62 ++ msg_Warn (aout, "cannot get buffer time: %s", snd_strerror(val));
63 ++ param = AOUT_MIN_PREPARE_TIME;
64 ++ }
65 ++ else
66 ++ param /= 2;
67 + val = snd_pcm_hw_params_set_period_time_near (pcm, hw, &param, NULL);
68 + if (val)
69 + {
70 + msg_Err (aout, "cannot set period: %s", snd_strerror (val));
71 + goto error;
72 + }
73 ++#endif
74 +
75 + /* Commit hardware parameters */
76 + val = snd_pcm_hw_params (pcm, hw);
77
78 diff --git a/media-video/vlc/files/vlc-2.2.4-decoder-lock-scope.patch b/media-video/vlc/files/vlc-2.2.4-decoder-lock-scope.patch
79 new file mode 100644
80 index 00000000..51a2cdc
81 --- /dev/null
82 +++ b/media-video/vlc/files/vlc-2.2.4-decoder-lock-scope.patch
83 @@ -0,0 +1,47 @@
84 +X-Git-Url: https://git.videolan.org/?p=vlc.git;a=blobdiff_plain;f=src%2Finput%2Fdecoder.c;h=fe3cd428c65c18bfbdadb55baf11521afdc2bfc7;hp=83aa5bf54e2c29ad93fae803117558e4fcd0f658;hb=6ae2905ef7fbc7de3a3a4a1bdf8ad6df46ce570a;hpb=5b2de76965ee8b1ab5e3257f8b6d71bbb4e9e3f9
85 +
86 +--- a/src/input/decoder.c
87 ++++ b/src/input/decoder.c
88 +@@ -1162,7 +1162,10 @@
89 + b_paused = p_owner->b_paused;
90 +
91 + if (!p_audio)
92 ++ {
93 ++ vlc_mutex_unlock( &p_owner->lock );
94 + break;
95 ++ }
96 +
97 + /* */
98 + int i_rate = INPUT_RATE_DEFAULT;
99 +@@ -1180,6 +1183,9 @@
100 +
101 + if( unlikely(p_owner->b_paused != b_paused) )
102 + continue; /* race with input thread? retry... */
103 ++
104 ++ vlc_mutex_unlock( &p_owner->lock );
105 ++
106 + if( p_aout == NULL )
107 + b_reject = true;
108 +
109 +@@ -1199,7 +1205,6 @@
110 +
111 + break;
112 + }
113 +- vlc_mutex_unlock( &p_owner->lock );
114 + }
115 +
116 + static void DecoderDecodeAudio( decoder_t *p_dec, block_t *p_block )
117 +@@ -1961,11 +1966,10 @@
118 +
119 + /* Parameters changed, restart the aout */
120 + vlc_mutex_lock( &p_owner->lock );
121 +-
122 +- aout_DecDelete( p_owner->p_aout );
123 + p_owner->p_aout = NULL;
124 +-
125 + vlc_mutex_unlock( &p_owner->lock );
126 ++ aout_DecDelete( p_owner->p_aout );
127 ++
128 + input_resource_PutAout( p_owner->p_resource, p_aout );
129 + }
130 +
131
132 diff --git a/media-video/vlc/metadata.xml b/media-video/vlc/metadata.xml
133 index ec1f07d..a1e4706 100644
134 --- a/media-video/vlc/metadata.xml
135 +++ b/media-video/vlc/metadata.xml
136 @@ -47,7 +47,6 @@
137 <flag name="macosx-quartztext">Enables Mac OS X quartz text module.</flag>
138 <flag name="macosx-qtkit">Enables Mac OS X qtkit module: qtcapture (video) and qtsound (audio) module.</flag>
139 <flag name="matroska">Enables matroska support using reference libraries (fallback on other existing matroska support if disabled, i.e., matroska enabled FFmpeg)</flag>
140 - <flag name="media-library">Build the (sqlite based) media library.</flag>
141 <flag name="mpeg">Add libmpeg2 support for mpeg-1 and mpeg-2 video streams</flag>
142 <flag name="omxil">Enables OpenMAX Integration Layer codec module.</flag>
143 <flag name="optimisememory">Enable optimisation for memory rather than performance.</flag>
144
145 diff --git a/media-video/vlc/vlc-2.2.1-r1.ebuild b/media-video/vlc/vlc-2.2.1-r1.ebuild
146 index 59b277c..1d3bc72 100644
147 --- a/media-video/vlc/vlc-2.2.1-r1.ebuild
148 +++ b/media-video/vlc/vlc-2.2.1-r1.ebuild
149 @@ -45,7 +45,7 @@ IUSE="a52 aalib alsa altivec atmo +audioqueue +avcodec
150 growl httpd ieee1394 jack jpeg kate kde libass libav libcaca libnotify
151 +libsamplerate libtiger linsys libtar lirc live lua
152 macosx-dialog-provider macosx-eyetv macosx-quartztext macosx-qtkit
153 - matroska media-library cpu_flags_x86_mmx modplug mp3 mpeg
154 + matroska cpu_flags_x86_mmx modplug mp3 mpeg
155 mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus
156 png postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba
157 schroedinger sdl sdl-image sftp shout sid skins speex cpu_flags_x86_sse svg +swscale
158
159 diff --git a/media-video/vlc/vlc-2.2.4.ebuild b/media-video/vlc/vlc-2.2.4.ebuild
160 index a165e1d..f5ab6f9 100644
161 --- a/media-video/vlc/vlc-2.2.4.ebuild
162 +++ b/media-video/vlc/vlc-2.2.4.ebuild
163 @@ -45,7 +45,7 @@ IUSE="a52 aalib alsa altivec atmo +audioqueue +avcodec
164 growl httpd ieee1394 jack jpeg kate kde libass libav libcaca libnotify
165 +libsamplerate libtiger linsys libtar lirc live lua
166 macosx-dialog-provider macosx-eyetv macosx-quartztext macosx-qtkit
167 - matroska media-library cpu_flags_x86_mmx modplug mp3 mpeg
168 + matroska cpu_flags_x86_mmx modplug mp3 mpeg
169 mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus
170 png postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba
171 schroedinger sdl sdl-image sftp shout sid skins speex cpu_flags_x86_sse svg +swscale
172
173 diff --git a/media-video/vlc/vlc-2.2.9999.ebuild b/media-video/vlc/vlc-2.2.9999.ebuild
174 index 7047721..8c5988f 100644
175 --- a/media-video/vlc/vlc-2.2.9999.ebuild
176 +++ b/media-video/vlc/vlc-2.2.9999.ebuild
177 @@ -45,7 +45,7 @@ IUSE="a52 aalib alsa altivec atmo +audioqueue +avcodec
178 growl gstreamer httpd ieee1394 jack jpeg kate kde libass libav libcaca libnotify
179 +libsamplerate libtiger linsys libtar lirc live lua
180 macosx-dialog-provider macosx-eyetv macosx-quartztext macosx-qtkit
181 - matroska media-library cpu_flags_x86_mmx modplug mp3 mpeg
182 + matroska cpu_flags_x86_mmx modplug mp3 mpeg
183 mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus
184 png +postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba
185 schroedinger sdl sdl-image sftp shout sid skins speex cpu_flags_x86_sse svg +swscale
186 @@ -224,6 +224,10 @@ PATCHES=(
187
188 # Bug #589396
189 "${FILESDIR}"/${PN}-2.2.4-cxx0x.patch
190 +
191 + # Bug #594126
192 + "${FILESDIR}"/${PN}-2.2.4-decoder-lock-scope.patch
193 + "${FILESDIR}"/${PN}-2.2.4-alsa-large-buffers.patch
194 )
195
196 DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt )