> (DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi
> /phmedia-alsa.c:316) alsa_stream_open: (name: alsa: in=0 out=0, rate: 16000,
> framesize: 640)
> 
> (confirming that the alsa driver is given an alsa name)
> 
> After that you should look on line (122) of phmedia-alsa:
>   rc = snd_pcm_open(&handle, name, type, 0);
> 
> It seems to me that using "name" is a bug here
> And this would be why it tells you
> "unable to open < in=0 out=0> pcm device"

Thats true, with a little bit of debugging I've found some improvements
to the code (file is attached). Now it parse correctly the in= and out=
options. The syntaxes that work for me are :

*  PH_FORCE_AUDIO_DEVICE="alsa:in=hw:0 out=hw:0"
*  PH_FORCE_AUDIO_DEVICE="alsa:in=default out=default"

This accept only some specific value. See [1] for some examples, close
to the end of the page (PCM naming conventions).

The device initialization works like a charm. The phlogger debug
informations file is attached.

But, yes sorry ..., the session ending abruptly by a segfault. I've
paste the backtrace in the ticket #1271 [2].

For the moment Alsa is broken by a problem in ph_downsample or
ph_upsample problem. The same "rctx" param is null and lead to a
segfault.

I hope my try help you and I'm open to all suggestions and test
cases/patches etc etc.

Best regards.

Didier Link


[1] http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html

[2] http://dev.openwengo.com/trac/openwengo/trac.cgi/ticket/1271

(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:39) registering audio driver of kind "alsa" ...
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:58) ...registration ok
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:39) registering audio driver of kind "pa" ...
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:58) ...registration ok
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:39) registering audio driver of kind "null" ...
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:58) ...registration ok
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:39) registering audio driver of kind "file" ...
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phaudiodriver.c:58) ...registration ok
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:314) alsa_stream_open: (name: alsa:in=hw:0 out=hw:0, rate: 16000, framesize: 640)
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:94) alsa_dev_open: (name: alsa:in=hw:0 out=hw:0, rate: 16000, framesize: 320)
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:206) PCM handle name = 'hw:0'
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:207) PCM state = PREPARED
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:209) access type = RW_INTERLEAVED
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:211) format = 'S16_LE' (Signed 16 bit Little Endian)
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:213) subformat = 'STD' (Standard)
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:217) channels = 1
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:219) rate = 16000 bps
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:221) period time = 20000 us
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:223) period size = 320 frames
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:225) buffer time = 2040000 us
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:227) buffer size = 32640 frames
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:229) periods per buffer = 102 frames
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:231) exact rate = 16000/1 bps
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:233) significant bits = 16
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:235) tick time = 1000 us
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:237) is batch = 0
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:239) is block transfer = 1
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:241) is double = 0
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:243) is half duplex = 0
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:245) is joint duplex = 0
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:247) can overrange = 0
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:249) can mmap = 1
(DBG_DYNA_AUDIO_DRV:/home/didier/temp/openwengo-ng/wengophone-2.1/wifo/phapi/phmedia-alsa.c:
Index: wengophone-2.1/wifo/phapi/phmedia-alsa.c
===================================================================
--- wengophone-2.1/wifo/phapi/phmedia-alsa.c    (révision 9408)
+++ wengophone-2.1/wifo/phapi/phmedia-alsa.c    (copie de travail)
@@ -107,15 +107,19 @@
       {
         *nmend = 0;
       }
+
+      name += 3;
     }
   }
-  else if (!strncasecmp(name, "out=", 4))
+  else if ((name = strstr(name, "out=")) != NULL)
   {
     nmend = strchr(name+4, ' ');
     if (nmend)
     {
       *nmend = 0;
     }
+
+    name += 4;
   }
 
   /* Open PCM device */
_______________________________________________
Wengophone-devel mailing list
Wengophone-devel@lists.openwengo.com
http://dev.openwengo.com/mailman/listinfo/wengophone-devel

Reply via email to