ALSA'yı kullanarak bazı ses verilerini bir PCM cihazına oynatmak istiyorum. Örnek olarak this sample example'u indirip bilgisayarımda çalıştırdım. Şu anda ses kartı kullanan başka bir işlem olmadığında iyi çalışır. diğer bazı süreç ses cihazı kullandığında Ama hiçbir şey çalmıyor (yani şarkılarını çalmaya medya oynatıcı) hata takibi ve gösteriler - ALSA: paylaşılan modda bir PCM cihazı açın
Playback open error: Device or resource busy
Bu örneğin kaynak koduna ben demek olabilir Looking o
snd_pcm_open işlevi 882 satırında bu hatayı atıyor. Başka bir işlem şu anda kullanıyor olduğundan, cihazı meşgul buluyor.
Ayrıca tersi yolu denedim - önce örneği başlattıktan sonra bir şarkı başlatmaya çalıştım. Bu durumda medya oynatıcı boşta kalır, sadece ilerleme çubuğunun yanında “boşta” durur (Banshee'yi kullanıyorum). snd_pcm_open
'un aygıt kaynağının münhasır hakkını kazanacağını varsayıyorum, böylece başka hiçbir işlem bunu kullanamaz.
Ama bunu istemiyorum. Özel bir hak gerektirmeden bir ses cihazına ses çalmak istiyorum, böylece PC'deki diğer işlemler ses verilerini çıkarmak için aynı cihazı paylaşabilir.
Bunu nasıl yapabilirim? Bir PCM cihazını nasıl açabilirim, böylece diğer işlemler aynı cihazı paylaşabilir mi?
Hayır, OSS uyumluluk katmanım etkin değil ve gerçekten ona güvenmek istemiyorum. Ayrıca/proc/asound/devices'ı da kontrol ettim ve cihaz listesini orada gördüm (o listeyi programsal olarak alabilirim). Farklı oynatma cihazlarına da erişebilirim. Ama bunların hiçbiri burada gerçekten sorun değil. Paylaşılan modda tek bir cihaz açıp açamayacağımı bilmek istedim. –