BlackBerry Forums Support Community
              

Closed Thread
 
LinkBack Thread Tools
Old 10-08-2010, 08:51 AM   #1 (permalink)
New Member
 
Join Date: Oct 2010
Model: 8520
PIN: N/A
Carrier: Digitel
Posts: 4
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default Time limiting voice recording

Please Login to Remove!

Hey all, i'm new to BB development and i'm making a voice recording and playback app. I've managed to record, stop the recording and playback the recording, i'd like to know if there's a way i can put a time limit on the recording and also how to display a timer on the screen. Here's a sample of the Thread i use to do the tasks

Code:
package Clases;

import java.io.*;
import java.lang.*;
import javax.microedition.media.*;
import javax.microedition.media.control.*;

import net.rim.device.api.ui.component.Dialog;

public class AudioRecorderThread extends Thread implements javax.microedition.media.PlayerListener{

	private Player _player;
    private RecordControl _recordControl;
    private ByteArrayOutputStream output;
    private ByteArrayInputStream input;
    
    private byte[] _audioArray = null; 
    public byte[] get_audioArray() {
		return _audioArray;
	}



	AudioRecorderThread()
    {
		output = new ByteArrayOutputStream();
	
    }

	
	public void playerUpdate(Player player, String event, Object eventData) {
		// TODO Auto-generated method stub
		
	}
	
	public void run() 
	{
	
		try 
	    {
	        _player = Manager.createPlayer("capture://audio?encoding=audio/amr");
	        _player.addPlayerListener(this);
	        _player.realize();
	        _recordControl = (RecordControl) _player.getControl( "RecordControl" );
	        _recordControl.setRecordStream(output);
	        _recordControl.startRecord();
	        _player.start();
	        
	        
	        
	    }
	    catch( IOException e ) 
	    {
	        Dialog.alert(e.toString());
	    }
	    catch( MediaException e ) 
	    {
	        Dialog.alert(e.toString());
	    }
	}
	
	 public void stop() 
     {
         if (_player != null) 
         {
              _player.close();
              _player = null;
         }

         if (_recordControl != null) 
         {
                    
             try 
             {
                 _recordControl.commit();
                 _audioArray = output.toByteArray();
             } 
             catch (Exception e) 
             {
                 Dialog.alert(e.toString());
             }
             _recordControl = null;
         } 
     }
	 
	 public void play()
	 {
		
		 try {
			 input = new ByteArrayInputStream(_audioArray);
			 _player = Manager.createPlayer(input, "audio/x-wav");
			 _player.realize();
			 
			 VolumeControl volume = (VolumeControl)_player.getControl("VolumeControl");
			 volume.setLevel(100);
			 
			 _player.prefetch();
			 _player.start();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (MediaException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	 }
	 


}
Offline  
Closed Thread


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

A lot of 2 Genuine Apple A1105 OEM Power Adapters Mac mini 85W 18.5V 4.6A ~
$14.99
A lot of 2 Genuine Apple A1105 OEM Power Adapters Mac mini 85W 18.5V 4.6A ~ pictureOEM Apple iPod iMac Power Supply Cable 25A 125V
$10.0
OEM Apple iPod iMac Power Supply Cable 25A 125V picture Vintage OEM Apple Design Powered Speakers M2497 Rainbow Logo Used Works
$39.0
 Vintage OEM Apple Design Powered Speakers M2497 Rainbow Logo Used Works picture(C21) Genuine OEM Apple AC Cord
$25.0
(C21) Genuine OEM Apple AC Cord pictureOem Apple Earphones Earpods Headphones Iphone 4 4S 3Gs Mic Remote Christmas GIFT
$8.98
Oem Apple Earphones Earpods Headphones Iphone 4 4S 3Gs Mic Remote Christmas GIFT picture






Copyright 2004-2016 BlackBerryForums.com.
The names RIM and BlackBerry are registered Trademarks of BlackBerry Inc.