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安装目录。

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

相关推荐
foundbug9994 天前
基于qt5和stk10开发的互联调试
qt5
奇树谦14 天前
VTK|显示三维图像的二维切片
c++·vtk·qt5·三维显示
钟剑锋-JeffChong1 个月前
一文详解 Linux下的开源打印系统CUPS(Common UNIX Printing System)
linux·嵌入式·qt5·打印机·cups
Zfox_1 个月前
【Qt】网络
开发语言·网络·c++·qt·qt5·客户端开发
钟剑锋-JeffChong1 个月前
Qt快速上手:QSettings高效配置读写实战指南
跨平台·qt5·配置管理·qsettings
Zfox_1 个月前
【Qt】文件
c++·qt·qt5·客户端开发
Zfox_1 个月前
【Qt】QDialog类
c++·qt·qt5·客户端开发
1024熙1 个月前
【Qt】——理解信号与槽,学会使用connect
前端·数据库·c++·qt5
Zfox_1 个月前
【Qt】QMainWindow类
开发语言·c++·qt·qt5·客户端开发
小刘同学++2 个月前
Qt 自定义控件
qt5