История изменений
Исправление Andrew, (текущая версия) :
Удалось пофиксить проблему в альсовом драйвере. Патч нашел тут. К сожалению, в апстрим видимо по какой-то причине патч не прошел, а багтрекер у альсы закрыт.
--- quirks.c Fri Jul 18 01:20:16 2014
+++ quirks.c Sun Jul 20 00:20:49 2014
@@ -723,7 +723,8 @@ static void set_format_emu_quirk(struct
* by playback substream
*/
if (subs->direction == SNDRV_PCM_STREAM_PLAYBACK) {
- if (subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].interface != -1)
+ if (subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].interface != -1 &&
+ subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].running)
return;
}
Исходная версия Andrew, :
Удалось пофиксить проблему в альсовом драйвере. Патч нашел тут.
--- quirks.c Fri Jul 18 01:20:16 2014
+++ quirks.c Sun Jul 20 00:20:49 2014
@@ -723,7 +723,8 @@ static void set_format_emu_quirk(struct
* by playback substream
*/
if (subs->direction == SNDRV_PCM_STREAM_PLAYBACK) {
- if (subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].interface != -1)
+ if (subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].interface != -1 &&
+ subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].running)
return;
}