×
Namespaces

Variants
Actions

QtMultimediaKit视频录制和播放

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

代码示例
兼容于
平台:
Symbian

文章
renlin 在 07 Dec 2011 创建
最后由 hamishwillee 在 12 Apr 2012 编辑

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

相关链接

This page was last modified on 12 April 2012, at 06:56.
100 page views in the last 30 days.
×