QtMultimediaKit视频录制和播放
文章信息
Contents |
介绍
利用QtMultimediaKit中的APIs进行视频的录制和播放,这个开发框架中提供了上层的APIs进行简单的使用即可达到使用Camera进行视频的录制和播放功能。
APIs
QCamera, 提供了操作设备Camera的接口,控制Camera的focus,lock等
QMediaRecorder,进行音频或视频录制的接口
QMediaPlayer,播放多媒体资源
QCameraViewFinder,显示来自Camera的图像
录制
在开始编程之前,需要在.pro工程中添加Mobility中Multimedia模块,以及Symbian设备所需的能力
CONFIG += mobility
MOBILITY = multimedia
symbian{
TARGET.CAPABILITY = UserEnvironment WriteUserData ReadUserData
}
初始化QCamera对象,设置使用模式和显示图像的widget-QCameraViewFinder
camera = new QCamera;
camera->setViewfinder(ui->viewFinder);
camera->setCaptureMode(QCamera::CaptureVideo);
camera->start();
用camera初始化QMediaRecorder对象
recorder = new QMediaRecorder(camera);
再进行一些所需的信号和槽的连接,至此视频录制所需的初始化工作就完成了,使用QMediarecorder提供的record(),pause(),stop()控制录制过程。
播放
播放视频需要用QVideoWidget来显示视频,因此初始化QMediaPlayer并设置视频的地址如下:
player = new QMediaPlayer;
player->setVideoOutput(ui->videoWidget);
player->setVolume(80);
player->setMedia(QUrl::fromLocalFile(filePath));
可以通过QMediaPlayer的play(),pause(),stop()来控制播放过程,也可以通过QMediaPlayerControl来实现。另外需要一提的是,可将存在于网络中的视频或音频文件以参数形式传入setMedia()方法,即可用QMediaPlayer来播放流媒体,此时应用程序使用默认的接入点接入网络,设置接入点的方法参见在symbian手机上设置流媒体播放使用的网络接入点。
示例代码
File:VideoRecorderandPlayer.zip 测试环境:Symbian^3,Nokia Belle,Device: E7


(no comments yet)