Hi List,
I read an old thread where Kai ported ecasound to the ipaq (familiar distro) back in 2002. I wanted to do the same, to use my ipaq 2215 as a simple multitrack recorder (recording track at a time, maybe be able to hear two other tracks at least at the same time, no effects).
I'm getting buffer overruns, and before i do anything like try to patch kernel, any list suggestions? I read that patching the familiar kernel with low latency isn't very clean.. i'm willing to try if necessary but i'd hope for an easier way.
here's one attempt with ecasound:
root@email-addr-hidden:~/ecasound-2.4.4/ecasound# ecasound -i:/dev/dsp -o test.wav
********************************************************************************
* ecasound v2.4.4 (C) 1997-2005 Kai Vehmanen and others
********************************************************************************
(eca-resources) WARNING: Global resource file '/usr/local/share/ecasound/ecasoundrc' not available! Ecasound may not function properly!
[* Session created *]
[* Chainsetup created (cmdline) *]
(eca-resources) WARNING: Global resource file '/usr/local/share/ecasound/ecasoundrc' not available! Ecasound may not function properly!
(eca-chainsetup) WARNING: Unable to read global resources. May result in incorrect behaviour.
[* Connecting chainsetup *]
(eca-chainsetup) 'rt' buffering mode selected.
(eca-chainsetup) Audio object "/dev/dsp", mode "read".
(audio-io) Format: s16_le, channels 2, srate 44100, interleaved.
(eca-chainsetup) Audio object "test.wav", mode "read/write".
(audio-io) Format: s16_le, channels 2, srate 44100, interleaved.
[* Chainsetup connected *]
(eca-control-objects) Connected chainsetup: "command-line-setup".
[* Controller/Starting batch processing *]
[* Engine init - Driver start *]
(eca-engine) Using realtime-scheduling (SCHED_FIFO:50).
(audioio-db-client) WARNING: Overrun in writing to "test.wav". Trying to recover.
(audioio-db-client) WARNING: Overrun in writing to "test.wav". Trying to recover.
(audioio-db-client) WARNING: Overrun in writing to "test.wav". Trying to recover.
[* Controller/Processing stopped (cond) *]
[* Engine exiting *]
(eca-control-objects) Disconnecting chainsetup: "command-line-setup".
[* Chainsetup disconnected *]
(audioio-db-client) There were total 3 xruns.
That recording was about 10 seconds.. xruns begin after about 3 seconds. This is with the 2.6.16 familiar kernel.
Her'es another attempt (i tried some more settings frome here - http://eca.cx/ecasound-list/2005/04/0038.html, it doesn't seem to help much)
root@email-addr-hidden:~/ecasound-2.4.4/ecasound# ecasound -z:db,500000 -r -b:8092 -z:intbuf -i /dev/dsp -o foo.wav
********************************************************************************
* ecasound v2.4.4 (C) 1997-2005 Kai Vehmanen and others
********************************************************************************
(eca-resources) WARNING: Global resource file '/usr/local/share/ecasound/ecasoundrc' not available! Ecasound may not function properly!
[* Session created *]
[* Chainsetup created (cmdline) *]
(eca-resources) WARNING: Global resource file '/usr/local/share/ecasound/ecasoundrc' not available! Ecasound may not function properly!
(eca-chainsetup) WARNING: Unable to read global resources. May result in incorrect behaviour.
(eca-chainsetup-parser) Using double-buffer of 500000 sample frames.
(eca-chainsetup-parser) Raised-priority mode enabled. (prio:50)
(eca-chainsetup-parser) Setting buffersize to (samples) 8092.
(eca-chainsetup-parser) Enabling extra buffering on realtime devices.
[* Connecting chainsetup *]
(eca-chainsetup) 'rt' buffering mode selected.
(eca-chainsetup) Audio object "/dev/dsp", mode "read".
(audio-io) Format: s16_le, channels 2, srate 44100, interleaved.
(eca-chainsetup) Audio object "foo.wav", mode "read/write".
(audio-io) Format: s16_le, channels 2, srate 44100, interleaved.
[* Chainsetup connected *]
(eca-control-objects) Connected chainsetup: "command-line-setup".
[* Controller/Starting batch processing *]
[* Engine init - Driver start *]
(eca-engine) Using realtime-scheduling (SCHED_FIFO:50).
(audioio-db-client) WARNING: Overrun in writing to "foo.wav". Trying to recover.
(audioio-db-server) wait_for_full failed
(audioio-db-client) WARNING: Overrun in writing to "foo.wav". Trying to recover.
(audioio-db-server) wait_for_full failed
(audioio-db-client) WARNING: Overrun in writing to "foo.wav". Trying to recover.
[* Controller/Processing stopped (cond) *]
(audioio-db-server) wait_for_full failed
[* Engine exiting *]
(eca-control-objects) Disconnecting chainsetup: "command-line-setup".
[* Controller/Batch processing finished *]
this one actually didn't start producing xruns until about 17 seconds into the recording, so a bigger improvement. I don't have a hard disk (recording to SD card) so i'm not sure if running hdparm would be of any use.
cheers,
Matt Becker
_______________________________________________
Join Excite! - http://www.excite.com
The most personalized portal on the Web!
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Ecasound-list mailing list
Ecasound-list@email-addr-hidden
https://lists.sourceforge.net/lists/listinfo/ecasound-list
Received on Wed Jul 12 04:15:01 2006
This archive was generated by hypermail 2.1.8 : Wed Jul 12 2006 - 04:15:01 EEST