Java by API/javax.microedition.media.control/RecordControl

Материал из Java эксперт
Перейти к: навигация, поиск

RecordControl: stopRecord()

   <source lang="java">

import javax.microedition.lcdui.Alert; import javax.microedition.lcdui.rumand; import javax.microedition.lcdui.rumandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.media.Manager; import javax.microedition.media.Player; import javax.microedition.media.control.RecordControl; import javax.microedition.midlet.MIDlet; public class SaveCapturedAudioMIDlet extends MIDlet implements CommandListener {

 private Display display = null;
 private Alert alert = new Alert("Message");
 private Command exitCommand = new Command("Exit", Command.EXIT, 1);
 private Player capturePlayer = null;
 private Player playbackPlayer = null;
 private RecordControl rControl = (RecordControl) capturePlayer.getControl("javax.microedition.media.control.RecordControl");
 public SaveCapturedAudioMIDlet() {
   display = Display.getDisplay(this);
   alert.setTimeout(Alert.FOREVER);
   alert.setString("Capturing for 10 seconds.");
   alert.addCommand(exitCommand);
   alert.setCommandListener(this);
   try {
     capturePlayer = Manager.createPlayer("capture://audio");
     if (capturePlayer != null) {
       capturePlayer.realize();
       display.setCurrent(alert);
       if (rControl == null)
         throw new Exception("No RecordControl available");
       rControl.setRecordLocation("file:///test.wav");
     } else {
       throw new Exception("Capture Audio Player is not available");
     }
   } catch (Exception e) {
     e.printStackTrace();
   }
 }
 public void startApp() {
   try {
     capturePlayer.start();
     rControl.startRecord();
     Thread.sleep(10000);
     rControl.stopRecord();
     rControl.rumit();
     capturePlayer.stop();
     capturePlayer.close();
     playbackPlayer = Manager.createPlayer("file:///test.wav");
     playbackPlayer.start();
   } catch (Exception e) {
     e.printStackTrace();
   }
 }
 public void pauseApp() {
 }
 public void destroyApp(boolean unconditional) {
 }
 public void commandAction(Command cmd, Displayable disp) {
   if (cmd == exitCommand) {
     destroyApp(true);
     notifyDestroyed();
   }
 }

}

 </source>