[ecasound] Possible bug: setpos does nothing after 'c-select noexist'

From: Joel Roth <joelz@email-addr-hidden>
Date: Sat Jan 30 2010 - 09:57:38 EET

Hi Kai and all,

With ecasound v2.7.1+dev:

-- short summary --

ecasound -c -a 1 -i test.wav -o alsa-default

> t
(engine starts)
> getpos
4.44
> c-select noexist
> setpos 0
> getpos
8.88

-- actual debug output with -ddd -- (skip to <<< for relevant lines)

(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): ksv to regexp ^ksv$
(eca-chainsetup) Using hardcoded defaults for "bmode-defaults-nonrt".
(eca-chainsetup) Adding "-B" to options (loaded from "Setup.no-ff.ecs".
(eca-chainsetup) Adding "auto" to options (loaded from "Setup.no-ff.ecs".
(eca-chainsetup) Adding "-r" to options (loaded from "Setup.no-ff.ecs".
(eca-chainsetup) Adding "-z:mixmode,sum" to options (loaded from
... "Setup.no-ff.ecs".
(eca-chainsetup) Adding "-a:2" to options (loaded from "Setup.no-ff.ecs".
(eca-chainsetup) Adding "-i:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to
... options (loaded from "Setup.no-ff.ecs".
(eca-chainsetup) Adding "-a:2" to options (loaded from "Setup.no-ff.ecs".
(eca-chainsetup) Adding "-o:alsa,default" to options (loaded from
... "Setup.no-ff.ecs".
(eca-chainsetup-parser) Interpreting global option "-B:auto".
(eca-chainsetup-parser) Buffering mode is selected automatically.
(eca-chainsetup-parser) Interpreting global option "-r".
(eca-chainsetup) sched_priority.
(eca-chainsetup-parser) Raised-priority mode enabled. (prio:50)
(eca-chainsetup) overriding raised priority.
(eca-chainsetup-parser) Interpreting global option "-z:mixmode,sum".
(eca-chainsetup-parser) Enabling 'sum' mixmode.
(eca-chainsetup-parser) Interpreting global option "-a:2".
(eca-chain) constructor: CHAIN
(eca-chainsetup) Chain "2" created.
(eca-chainsetup-parser) Selected chain ids: 2
(eca-chainsetup-parser) Interpreting global option
... "-i:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav".
(eca-chainsetup-parser) Interpreting global option "-a:2".
(eca-chainsetup-parser) Selected chain ids: 2
(eca-chainsetup-parser) Interpreting global option "-o:alsa,default".
(eca-chainsetup-parser) Interpreting object option "-B:auto".
(eca-chainsetup-parser) Interpreting object option "-r".
(eca-chainsetup-parser) Interpreting object option "-z:mixmode,sum".
(eca-chainsetup-parser) Interpreting object option "-a:2".
(eca-chainsetup-parser) Selected chain ids: 2
(eca-chainsetup-parser) Interpreting object option
... "-i:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav".
(eca-static-object-maps) register_audio_io_rt_objects()
(eca-object-map) match (1): /dev/dsp to regexp /dev/dsp[0-9]*
(eca-object-map) match (1): /dev/sound/dsp to regexp /dev/sound/dsp[0-9]*
(eca-object-map) match (1): rtnull to regexp ^rtnull$
(eca-object-map) match (1): alsahw_09 to regexp (^alsahw_09$)|(^alsaplugin_09$)
(eca-object-map) match (1): alsa_09 to regexp ^alsa_09$
(eca-object-map) match (1): arts to regexp ^arts$
(audioio_jack) constructor
(eca-object-map) match (1): jack to regexp
... (^jack$)|(^jack_multi$)|(^jack_alsa$)|(^jack_auto$)|(^jack_generic$)
(eca-object-map) match (1): alsahw to regexp ^alsahw$
(eca-object-map) match (1): alsaplugin to regexp ^alsaplugin$
(eca-object-map) match (1): alsa to regexp ^alsa$
(eca-static-object-maps) register_audio_io_nonrt_objects()
(eca-object-map) match (1): wav to regexp wav$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): ewf to regexp ewf$
(eca-object-map) match (1): cdr to regexp cdr$
(eca-object-map) match (1): raw to regexp raw$
(eca-object-map) match (1): mp3 to regexp mp3$
(eca-object-map) match (1): mp2 to regexp mp2$
(eca-object-map) match (1): ogg to regexp ogg$
(eca-object-map) match (1): mikmod to regexp
... (^mikmod$)|(xm$)|(669$)|(amf$)|(dsm$)|(far$)|(gdm$)|(imf$)|(it$)|(m15$)|(ed$
... )|(mod$)|(mtm$)|(s3m$)|(stm$)|(stx$)|(ult$)|(uni$)
(eca-object-map) match (1): mid to regexp (mid$)|(midi$)
(eca-object-map) match (1): aac to regexp aac$
(eca-object-map) match (1): mp4 to regexp mp4$
(eca-object-map) match (1): m4a to regexp m4a$
(eca-static-object-maps) All libsndfile supported extensions:
... aiff,au,avr,caf,flac,htk,iff,mat,mat,oga,paf,pvf,raw,sd2,sds,sf,voc,w64,wav,
... wav,wav,wve,xi,
(eca-object-map) match (1): sndfile to regexp
... (^sndfile$)|(flac$)|(avr$)|(caf$)|(htk$)|(iff$)|(mat$)|(paf$)|(pvf$)|(sf$)|(
... sd2$)|(sds$)|(voc$)|(w64$)|(xi$)|(aif*$)|(au$)|(snd$)
(eca-object-map) match (1): audiofile to regexp (^audiofile$)
(eca-object-map) match (1): - to regexp ^-$
(eca-object-map) match (1): stdin to regexp ^stdin$
(eca-object-map) match (1): stdout to regexp ^stdout$
(eca-object-map) match (1): null to regexp ^null$
(eca-object-map) match (1): typeselect to regexp ^typeselect$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): resample to regexp ^resample$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): resample-hq to regexp ^resample-hq$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): resample-lq to regexp ^resample-lq$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): reverse to regexp ^reverse$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): tone to regexp ^tone$
(samplebuffer) Buffer created, channels: 0, length-samples: 0.
(eca-object-map) match (1): audioloop to regexp ^(audioloop|select|playat)$
(eca-object-map) match (1): /mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav to
... regexp wav$
(eca-object-factory) Object
... "-i:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" created, type "RIFF
... wave file". Has 2 parameter(s) (variable: no).
(eca-chainsetup-parser) adding file
... "/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav".
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio-db-client) DB-client created for
... /mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav.
(audioio) set srate, aobj "DB => RIFF wave file:uninitialized" to 44100.
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(eca-chainsetup) Assigning file to chains: 2
(eca-chainsetup-parser) Interpreting object option "-a:2".
(eca-chainsetup-parser) Selected chain ids: 2
(eca-chainsetup-parser) Interpreting object option "-o:alsa,default".
(eca-object-map) match (1): alsa to regexp ^alsa$
(eca-object-factory) Object "-o:alsa,default" created, type "ALSA named PCM
... device". Has 2 parameter(s) (variable: no).
(eca-chainsetup-parser) adding file "alsa".
(audioio) set srate, aobj "ALSA named PCM device:alsa" to 44100.
(eca-chainsetup) Assigning file to chains: 2
(eca-chainsetup) Chainsetup "Setup.no-ff.ecs" created (file: Setup.no-ff.ecs)
(eca-session) Session created
(eca-control) ECA_CONTROL constructor
ecasound ('h' for help)> fs
(eca-control) processing cmd and arg: fs
### Audio input/output status (chainsetup 'Setup.no-ff.ecs') ###
Input (1): "/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav," - [DB => RIFF
... wave file]
 -> connected to chains "2": position (0.000/0.000) seconds.
 -> closed, audio format not available until object is opened.
Output (1): "alsa,default" - [ALSA named PCM device]
 -> connected to chains "2": realtime-device; position 0, delay 0.
 -> closed, s16_le/2ch/44100Hz, buffer 1024.
ecasound ('h' for help)> t
(eca-control) processing cmd and arg: t
(eca-control) NOTE: No chainsetup connected. Trying to connect currently
... selected chainsetup "Setup.no-ff.ecs"
(eca-session) Connecting chainsetup
(eca-chainsetup) bmode-selection case-3
(eca-chainsetup) "rt" buffering mode selected.
(eca-chainsetup) Set buffering parameters to:
--cut--
buffersize: 128
raised_priority: 1
sched_priority: 50
double buffering: 1
double buffer size: 100000
max buffers: 0
--cut--
(eca-chainsetup) Memory locked!
(audioio-db-client) open /mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav.
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio-wave) data block length in header 607875072, file length after data
... block 607875072, length set to 151968768 samples
(audioio) set srate, aobj "DB => RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio-db-server) Registering client 0. Buffer count 781.
(samplebuffer) Buffer created, channels: 2, length-samples: 128.

< skipping 780 lines identical to above >

(audioio-db-client) seek /mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav to pos
... 0.
(audioio-db-client) seek /mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav to pos
... 0.
(eca-chainsetup) Opened input
... "/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav", mode "read". Format:
... s16_le, channels 2, srate 44100, interleaved (locked params).
(eca-chainsetup) sample rate change, chainsetup Setup.no-ff.ecs to rate 44100.
(audioio) set srate, aobj "DB => RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio) set srate, aobj "RIFF wave
... file:/mnt/wd/childspace/s5-audio/s5-d5/Mixdown_1.wav" to 44100.
(audioio) set srate, aobj "ALSA named PCM device:alsa" to 44100.
(audioio_alsa) open
(audioio_alsa) set_audio_format_params
(audioio_alsa) fill_and_set_hw_params
(audioio_alsa) Using interleaved stream format.
(audioio_alsa) period time set to 21333 usecs.
(audioio_alsa) period time set to 940 frames.
(audioio_alsa) Warning! Period-size differs from current client buffersize.
(audioio_alsa) buffer time set to 42653 usecs.
(audioio_alsa) buffer time set to 1881 frames.
(audioio_alsa) total latency is 128 frames.
(audioio_alsa) fill_and_set_sw_params
(eca-chainsetup) Opened output "alsa", mode "write". Format: s16_le, channels
... 2, srate 44100, interleaved.
(eca-session) Chainsetup connected
- [ Connected chainsetup: "Setup.no-ff.ecs" ] ----------------------------
- [ Controller/Processing started ] --------------------------------------
(eca-engine) ECA_ENGINE constructor
(samplebuffer) Buffer created, channels: 0, length-samples: 128.
(eca-engine) Prefill loops: 3 (blocksize 128).
(samplebuffer) Increasing channel-count (1).
(samplebuffer) Buffer created, channels: 2, length-samples: 128.
(eca-chain) Initialized chain 2 with 0 chainops and 0 gcontrollers. Sbuf points
... to 157554056.
(eca-control-base) ecasound ('h' for help)> Engine thread started with pid: 1932
- [ Engine - Driver start ] ----------------------------------------------
(eca-engine) Request start
(audioio-db-server) start
(audioio-db-server) starting processing
(eca-engine) prefilling i/o buffers.
(audioio-db-server) Hey, in the I/O loop!
(audioio-db-server) Using idle timeout of 226000000 nsecs.
(audioio-db-server) wait_for_client_activity failed
(eca-engine) i/o buffers prefilled.
(audioio_alsa) prepare - alsa.
(eca-engine) prefilling rt-outputs with 3 blocks.
(eca-engine) Using realtime-scheduling (SCHED_FIFO:50).
(eca-engine) starting engine operation!
(audioio_alsa) start - alsa.
getpos <<<
(eca-control) processing cmd and arg: getpos
4.940045351
ecasound ('h' for help)> c-select dWARNING: ALSA playback underrun, glitches in audio playback possible! Break was at least 14379.15 ms long.
(audioio_alsa) stop - alsa.
(audioio_alsa) prepare - alsa.
(audioio_alsa) start - alsa.
ecasound ('h' for help)> cs-select noexist
(eca-control) processing cmd and arg: cs-select noexist
(eca-control-objects) Chainsetup "noexist" doesn't exist!
ERROR: Chainsetup "noexist" doesn't exist!
ecasound ('h' for help)> c-select noexist <<<
(eca-control) processing cmd and arg: c-select noexist
(eca-control) WARNING: No chainsetup selected. Connected chainsetup will be
... selected.
ecasound ('h' for help)> setpos 0 <<<
(eca-control) processing cmd and arg: setpos 0
ecasound ('h' for help)> getpos <<<
(eca-control) processing cmd and arg: getpos
37.128707483 <<<
ecasound ('h' for help)> (eca-engine) Request stop
(eca-engine) stopping engine operation!
(audioio_alsa) stop - alsa.
(audioio-db-server) stop
(audioio-db-server) wait_for_client_activity failed
(eca-engine) Changed back to non-realtime scheduling SCHED_OTHER.
(eca-engine) Signaling stop
(eca-engine) ecasound_queue: exit!
(eca-engine) Signaling exit
(eca-engine) Engine state when finishing: 4
(eca-control-base) Engine thread 1932 will exit.

--cut--

-- 
Joel Roth
------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Ecasound-list mailing list
Ecasound-list@email-addr-hidden
https://lists.sourceforge.net/lists/listinfo/ecasound-list
Received on Sat Jan 30 12:15:03 2010

This archive was generated by hypermail 2.1.8 : Sat Jan 30 2010 - 12:15:03 EET