Projects

Ticket #733: coreaudio_sample.rb

File coreaudio_sample.rb, 0.6 KB (added by nagachika00@…, 2 years ago)
Line 
1require "coreaudio"
2
3outdevid =  CoreAudio.get_default_output_device
4puts "Default Output Device ID = #{outdevid}"
5
6callback = lambda do |devid, now, input, in_time, output, out_time, userdata|
7  p out_time
8  output.mNumberBuffers.times do |i|
9    ptr = output.mBuffers[i].mData.cast!("^C")
10    output.mBuffers[i].mDataByteSize.times do |j|
11      ptr[j] = 0
12    end
13  end
14  0
15end
16procid =  CoreAudio.create_io_proc_id(outdevid, &callback)
17
18p procid
19puts "start"
20CoreAudio.device_start(outdevid, procid)
21puts "sleep"
22sleep 5
23puts "stop"
24CoreAudio.device_stop(outdevid, procid)
25
26CoreAudio.destroy_io_proc_id(outdevid, procid)
27