RIM黑莓录制3GP视频
Posted
技术标签:
【中文标题】RIM黑莓录制3GP视频【英文标题】:RIM blackberry Record 3GP video 【发布时间】:2011-01-12 06:49:31 【问题描述】:我正在编写一个可以录制 3GP 视频的应用程序。 我已经尝试过 MMAPI 和 Invoke API。但有以下问题。
使用 MMAPI:
-
当我录制到流媒体时,它以 RIMM 流媒体格式录制视频。当我尝试播放此视频播放器时出现错误
"Unsupported media format."
当我录制到文件时。它将创建一个大小为 0 的文件。
使用调用 API:
-
在彩信模式下,它不允许录制超过 30 秒的视频。
在正常模式下,文件的大小非常大。
调用相机应用程序后,我无法控制应用程序。
这是我的源代码:
_player = javax.microedition.media.Manager
.createPlayer("capture://video?encoding=video/3gpp&mode=mms");
// 我已经尝试过从 System.getProperty("video.encodings") 方法返回的每个编码
_player.realize();
_videoControl = (VideoControl) _player.getControl("VideoControl");
_recordControl = (RecordControl) _player.getControl("RecordControl");
_volumeControl = (VolumeControl) _player.getControl("VolumeControl");
String videoPath = System.getProperty("fileconn.dir.videos");
if (videoPath == null)
videoPath = "file:///store/home/user/videos/";
_recordControl.setRecordLocation(videoPath + "RecordedVideo.3gp");
_player.addPlayerListener(this);
Field videoField = (Field) _videoControl.initDisplayMode(
VideoControl.USE_GUI_PRIMITIVE,
"net.rim.device.api.ui.Field");
_videoControl.setVisible(true);
add(videoField);
_player.start();
开启开始菜单项选择:
try
_recordControl.startRecord();
catch (Exception e)
_player.close();
showAlert(e.getClass() + " " + e.getMessage());
停止菜单项选择:
try
_recordControl.commit();
catch (Exception e)
_player.close();
showAlert(e.getClass() + " " + e.getMessage());
如果我做错了什么请告诉我。
【问题讨论】:
【参考方案1】:我也有同样的问题,我只知道这是 RIM 专有格式: http://docs.blackberry.com/en/developers/deliverables/11942/RIM_proprietary_video_format_1001586_11.jsp
你得到的文件大小为 0,因为这段代码:
_recordControl.setRecordLocation(videoPath + "RecordedVideo.3gp");
我在复制 RIM 演示时遇到了同样的问题,但这是错误的。
请改用setRecordStream()
。
【讨论】:
以上是关于RIM黑莓录制3GP视频的主要内容,如果未能解决你的问题,请参考以下文章
Android:使用 MediaRecorder 录制音频 - 文件不播放