Posted to tcl by GPS at Wed Sep 26 11:28:24 GMT 2007view raw
- set aobj [alsa]; $aobj write [ogg:decode $data]
- The alternative interface:
- fconfigure $sock -translation binary -blocking 0
- set aobj [alsa]; $aobj write [ogg:read-stream $sock 4096]
- fileevent $sock readable [list write-to-aobj $aobj]
- Or:
- set data [read a bunch of binary]
- set aobj [alsa];
- proc audio-loop {aobj data} {
- audio-loop-next $aobj $data 0
- }
- proc audio-loop-next {aobj data offset} {
- $obj write [string range $data $offset [set next [expr {$offset + 4096}]]]
- if {$next >= [string length $data]} {
- set next 0
- }
- after 60 [list audio-loop-next $aobj $data $next]
- }
- audio-loop $aobj $data