dtkmultimedia
DTK Multimedia module
载入中...
搜索中...
未找到
Dtk::Multimedia::DMultiOperateInterface类 参考

DMultiOperateInterface类提供多媒体信息查看与转换功能. 更多...

#include <dmultioperateinterface.h>

类 Dtk::Multimedia::DMultiOperateInterface 继承关系图:

Public 类型

enum  videoCodecName {
  h264 = 0 , Hevc , mpeg4 , vp8 ,
  vp9 , avs2
}
 多媒体视频格式 更多...
 
enum  audioCodecName {
  aac = 0 , mp3 , ac_3 , flac ,
  vorbis , opus
}
 多媒体音频格式 更多...
 
enum  muxerName { mp4 = 0 , mkv , webm }
 多媒体音频格式 更多...
 

Public 成员函数

 DMultiOperateInterface (QObject *parent=nullptr)
 
QStringList showVideoMuxList (const videoCodecName &name)
 获取视频格式支持的容器格式列表.
 
QStringList showAudioMuxList (const audioCodecName &name)
 获取音频格式支持的容器格式列表.
 
QString nameOfMuxer (const muxerName &name)
 获取容器格式的名称.
 
QString nameOfVideoCodec (const videoCodecName &name)
 获取视频格式的名称.
 
QString nameOfAudioCodec (const audioCodecName &name)
 获取音频格式的名称.
 
void setOutFilePath (const QString &outFileName)
 设置输出文件路径.
 
QString outFilePath ()
 获取输出文件路径.
 
QString showFileInfo (const QString &fileName)
 显示媒体文件媒体信息.
 
QString showVideoInfo (const QString &fileName)
 显示媒体文件视频流信息.
 
QString showAudioInfo (const QString &fileName)
 显示媒体文件音频流信息.
 
QString showSubtitleInfo (const QString &fileName)
 显示媒体文件字幕流信息.
 
bool videoConvert (const QString &fileName, const videoCodecName &destCodecName, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 指定格式视频转换.
 
bool audioConvert (const QString &fileName, const audioCodecName &destCodecName, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 指定格式音频转换.
 
bool muxerConvert (const QString &fileName, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 指定媒体容器格式转换.
 
bool adjustRate (const QString &fileName, const qint64 &minSize, const qint64 &maxSize, const qint64 &cacheSize, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 调整视频码率.
 
bool changeResolution (const QString &fileName, const QSize &Resolution, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 改变视频分辨率.
 
bool changeResolution (const QString &fileName, const int &nWidth, const int &nHeight, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 改变视频分辨率.
 
bool audioStreamFile (const QString &fileName, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc, const int audioId=-1)
 媒体文件中提取音频流.
 
bool videoStreamFile (const QString &fileName, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 媒体文件中提取视频流.
 
bool addAudioforVideo (const QString &videoName, const QString &audioName, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 为媒体文件添加音轨.
 
bool cutVideoToDuration (const QString &fileName, const QString &startTime, const QString &durationTime, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 为媒体文件添加音轨.
 
bool cutVideoToEnd (const QString &fileName, const QString &startTime, const QString &endTime, const muxerName &outMuxerFormat, const QString &sOutFileName, QString &strErrDesc)
 媒体文件裁剪视频,根据时间段,指定开始时间与结束时间.
 

Protected 属性

QScopedPointer< DMultiOperateInterfacePrivate > d_ptr
 

详细描述

DMultiOperateInterface类提供多媒体信息查看与转换功能.

成员枚举类型说明

◆ audioCodecName

多媒体音频格式

枚举值
aac 

aac音频

mp3 

mp3音频

ac_3 

ac-3音频

flac 

flac音频

vorbis 

vorbis音频

opus 

opus音频

◆ muxerName

多媒体音频格式

枚举值
mp4 

mp4容器

mkv 

mkv容器

webm 

webm容器

◆ videoCodecName

多媒体视频格式

枚举值
h264 

h264视频

Hevc 

h265视频

mpeg4 

mpeg4视频

vp8 

vp8视频

vp9 

vp9视频

avs2 

avs2视频

成员函数说明

◆ addAudioforVideo()

bool DMultiOperateInterface::addAudioforVideo ( const QString &  videoName,
const QString &  audioName,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

为媒体文件添加音轨.

参数
[in]videoName媒体文件名.
[in]audioName音频文件名.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ adjustRate()

bool DMultiOperateInterface::adjustRate ( const QString &  fileName,
const qint64 &  minSize,
const qint64 &  maxSize,
const qint64 &  cacheSize,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

调整视频码率.

参数
[in]fileName媒体文件名.
[in]minSize最小码率.
[in]maxSize最大码率.
[in]cacheSize缓存区大小.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ audioConvert()

bool DMultiOperateInterface::audioConvert ( const QString &  fileName,
const audioCodecName destCodecName,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

指定格式音频转换.

参数
[in]fileName媒体文件名.
[in]destCodecName目标音频编码名称.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ audioStreamFile()

bool DMultiOperateInterface::audioStreamFile ( const QString &  fileName,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc,
const int  audioId = -1 
)

媒体文件中提取音频流.

参数
[in]fileName媒体文件名.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
[in]audioId音频id,默认为-1,自动取媒体中的默认音频流.
返回
true表示转换成功,false为失败.

◆ changeResolution() [1/2]

bool DMultiOperateInterface::changeResolution ( const QString &  fileName,
const int &  nWidth,
const int &  nHeight,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

改变视频分辨率.

参数
[in]fileName媒体文件名.
[in]nWidth视频分辨率宽.
[in]nHeight视频分辨率高.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ changeResolution() [2/2]

bool DMultiOperateInterface::changeResolution ( const QString &  fileName,
const QSize &  Resolution,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

改变视频分辨率.

参数
[in]fileName媒体文件名.
[in]Resolution视频分辨率大小.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ cutVideoToDuration()

bool DMultiOperateInterface::cutVideoToDuration ( const QString &  fileName,
const QString &  startTime,
const QString &  durationTime,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

为媒体文件添加音轨.

媒体文件裁剪视频,根据持续时间.

参数
[in]startTime视频开始时间.
[in]durationTime视频持续时间.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ cutVideoToEnd()

bool DMultiOperateInterface::cutVideoToEnd ( const QString &  fileName,
const QString &  startTime,
const QString &  endTime,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

媒体文件裁剪视频,根据时间段,指定开始时间与结束时间.

参数
[in]startTime剪切视频开始时间.
[in]endTime剪切视频结束时间.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ muxerConvert()

bool DMultiOperateInterface::muxerConvert ( const QString &  fileName,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

指定媒体容器格式转换.

参数
[in]fileName媒体文件名.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ nameOfAudioCodec()

QString DMultiOperateInterface::nameOfAudioCodec ( const audioCodecName name)

获取音频格式的名称.

参数
[in]name音频格式.
返回
音频格式的名称.

◆ nameOfMuxer()

QString DMultiOperateInterface::nameOfMuxer ( const muxerName name)

获取容器格式的名称.

参数
[in]name容器格式.
返回
容器格式的名称.

◆ nameOfVideoCodec()

QString DMultiOperateInterface::nameOfVideoCodec ( const videoCodecName name)

获取视频格式的名称.

参数
[in]name视频格式.
返回
视频格式的名称.

◆ outFilePath()

QString DMultiOperateInterface::outFilePath ( )

获取输出文件路径.

返回
输出文件路径.

◆ setOutFilePath()

void DMultiOperateInterface::setOutFilePath ( const QString &  outFileName)

设置输出文件路径.

参数
[in]outFileName输出文件路径.

◆ showAudioInfo()

QString DMultiOperateInterface::showAudioInfo ( const QString &  fileName)

显示媒体文件音频流信息.

参数
[in]fileName媒体文件名.
返回
媒体文件音频流信息.

◆ showAudioMuxList()

QStringList DMultiOperateInterface::showAudioMuxList ( const audioCodecName name)

获取音频格式支持的容器格式列表.

参数
[in]name视频格式.
返回
音频格式支持的容器格式列表.

◆ showFileInfo()

QString DMultiOperateInterface::showFileInfo ( const QString &  fileName)

显示媒体文件媒体信息.

参数
[in]fileName媒体文件名.
返回
媒体文件媒体信息.

◆ showSubtitleInfo()

QString DMultiOperateInterface::showSubtitleInfo ( const QString &  fileName)

显示媒体文件字幕流信息.

参数
[in]fileName媒体文件名.
返回
媒体文件字幕流信息.

◆ showVideoInfo()

QString DMultiOperateInterface::showVideoInfo ( const QString &  fileName)

显示媒体文件视频流信息.

参数
[in]fileName媒体文件名.
返回
媒体文件视频流信息.

◆ showVideoMuxList()

QStringList DMultiOperateInterface::showVideoMuxList ( const videoCodecName name)

获取视频格式支持的容器格式列表.

参数
[in]name视频格式.
返回
视频格式支持的容器格式列表.

◆ videoConvert()

bool DMultiOperateInterface::videoConvert ( const QString &  fileName,
const videoCodecName destCodecName,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

指定格式视频转换.

参数
[in]fileName媒体文件名.
[in]destCodecName目标视频编码名称.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

◆ videoStreamFile()

bool DMultiOperateInterface::videoStreamFile ( const QString &  fileName,
const muxerName outMuxerFormat,
const QString &  sOutFileName,
QString &  strErrDesc 
)

媒体文件中提取视频流.

参数
[in]fileName媒体文件名.
[in]outMuxerFormat目标媒体容器格式名称.
[in]sOutFileName输出媒体容器文件名.
[out]strErrDesc错误描述.
返回
true表示转换成功,false为失败.

该类的文档由以下文件生成: