我在我的应用程序中实现了视频录制功能,它可以在所有流行的 BB 设备上正常工作,操作系统版本为 6.0 及更高版本,除了 BB Torch。
在 BB Torch 中,录音机只显示了设备屏幕的一半。当我尝试设置 displaySize 或 displayFullScreen 时,它会抛出不支持这些功能的媒体异常。但是在 BB Bold/Curve 等中,它不会抛出这个异常。
有什么办法可以解决这个问题吗?请帮助....提前谢谢!
请在下面找到代码片段。
public void videoPlayer() {
try
{
// Start capturing video from the camera
m_oPlayer = javax.microedition.media.Manager
.createPlayer("capture://video?" + strEncoding);
m_oPlayer.realize();
m_oPlayer.start();
m_oVideoControl = (VideoControl) m_oPlayer
.getControl("VideoControl");
m_oRecordControl = (RecordControl) m_oPlayer
.getControl("RecordControl");
m_oZoomControl = (ZoomControl) m_oPlayer
.getControl("javax.microedition.amms.control.camera.ZoomControl");
// Initialize the video display
Field oVideoField = (Field) m_oVideoControl.initDisplayMode(
VideoControl.USE_GUI_PRIMITIVE,
"net.rim.device.api.ui.Field");
/**
* To make the video recorder layout fit the entire size of the device.
*/
try {
m_oVideoControl.setDisplaySize(Display.getWidth(), Display.getHeight());
} catch (MediaException mex) {
//System.out.println(mex);
videoExceptionAction(mex.getMessage());
}
VerticalFieldManager oVfmMainManager = (VerticalFieldManager) this.getMainManager();
oVfmMainManager.add(oVideoField);
m_strVideoFile = strFilePath;
m_oOutStream = new ByteArrayOutputStream();
}
catch (Exception e)
{
videoExceptionAction(e.getMessage());
}
}