Win a copy of Murach's Java Programming this week in the Beginning Java forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Capture and play audio  RSS feed

 
Jarek P
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello

I have some questions about audio capturing

I use this code to capture audio

Player p = Manager.createPlayer("capture://audio?rate=8000&bits=8&channels=1");
p.realize();
RecordControl rc = (RecordControl) p.getControl("RecordControl");
ByteArrayOutputStream output = new ByteArrayOutputStream();
rc.setRecordStream(output);
rc.startRecord();
p.start();
Thread.currentThread().sleep(1000);
rc.commit();
p.close();
buf = output.toByteArray();

I'm using series 60 midp sdk 2_1_beta and it's emulator.

1. Bits are set to 8 and buf if byte array. But how data will be saved when i change bits=16. I must use something different that ByteArrayOutputStream or then two array cells store one 16bit number (then correct values is something like that: array[i]+255*array[i+1])??
2. Record time is set to 1000 and rate 8000 so output array size should be 8000, but every time i save i have different array size (about 7000 to 9000). Why is that. It does mean that emulator didn't save exactly one second or saving rate isn't equal 8000??
3. How can i play sound, that i have saved (stored in buf)??

Thanks for any help
 
How do they get the deer to cross at the signs? Or to read this tiny ad?
Thoughts on deprecation in Java
https://coderanch.com/t/683016/java/Deprecation-Java
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!