DirectShowPlayerService::doSetUrlSource: Unresolved error code 0x800c000d

报出这个问题,应该是对给的url解析不正确,我给的是rtsp的视频流地址,应该是对该格式解析异常。

所以参考两篇文:

QT无法播放视频:报错:DirectShowPlayerService::doRender: Unresolved error code 0x80040266

用QML实现简单音视频播放器的实践

根据报错和文中提示可以知道:

在Windows系列(Windows XP、Windows 7、Windows 8)平台上,用QML的MediaPlayer控件配合VideoOutput对音频文件和视频文件进行播放,运行时会报错:
DirectShowPlayerService::doRender: Unresolved error code 80040266

或者我这个错误

DirectShowPlayerService::doSetUrlSource: Unresolved error code 0x800c000d

chatGPT相关回答:


解决方法,安装有关DirectShowService解码器 LAV Filters

Qt在windows上的多媒体播放功能是使用系统的DirectShow(底层是使用DirectShowPlayerService),所以安装或者更新DirectShow解码器就行了。

Qt在Linux下使用gstreamer,Windows下使用directshow。总之,Qt没有直接使用解码库,而是对平台相关的播放器框架做了封装,提供了平台无关的API。gstreamer依赖ffmpeg,它里面的很多元素是基于ffmpeg实现的。因此,Linux下Qt的自带的mediaplayer需要安装gstreamer-0.10-ffmpeg。

LAV Filters下载链接:

Releases · Nevcairiel/LAVFilters (github.com)

安装位置在你的qt安装目录。

安装完成后,在运行程序,视频可以正常播放。

相关推荐
Zfox_8 小时前
【Qt】文件
c++·qt·qt5·客户端开发
Zfox_3 天前
【Qt】QDialog类
c++·qt·qt5·客户端开发
1024熙5 天前
【Qt】——理解信号与槽,学会使用connect
前端·数据库·c++·qt5
Zfox_5 天前
【Qt】QMainWindow类
开发语言·c++·qt·qt5·客户端开发
小刘同学++9 天前
Qt 自定义控件
qt5
Zfox_9 天前
【QT】常用控件 【多元素类 | 容器类 | 布局类】
c++·qt·qt5·客户端开发
Zfox_11 天前
【QT】 常用控件【输入类】
c++·qt·qt5·客户端开发
码农新猿类1 个月前
Qt中信号带参传值
qt·qt5
laimaxgg1 个月前
Qt的网络编程
网络·c++·qt·qt5·qt6.3
laimaxgg1 个月前
Qt窗口控件之浮动窗口QDockWidget
开发语言·c++·qt·qt5·qt6.3