QML中使用 VLC-Qt 播放网络视频流(附实例)

2023-10-29

VLC-Qt库:一个在libVLC基础上结合了Qt框架的开源库。它提供了媒体播放的视频、音频处理控制的核心类,并提供基于QWidget和QML的GUI框架。QWidget中使用VLC方法见我博文:Qt 中使用 VLC-Qt 播放网络视频流(附实例)_zjgo007的专栏-CSDN博客_qt vlc

此文介绍在QML中使用VLC播放网络流视频,效果图:

下载编译好的库VLC-Qt_1.1.0_win32_mingw.7z,解压到本地磁盘中,我解压路径为   E:\VLC\VLC

VLC-Qt 编译好的库下载地址:VLC-Qt_1.1.0_win32_mingw.7z_vlc-qt如何使用-C++文档类资源-CSDN下载,把解压后的bin目录下的dll库拷贝至Qt安装目录下的bin文件夹中 E:\Qt5.11.2\5.11.2\mingw53_32\bin。

新建工程,在.pro文件中添加VLC库文件(添加VLCQtCore库和VLCQtQml)在main.cpp文件中添加插件所处路径。

完整代码:

main.cpp:

#include <QtCore/QCoreApplication>
#include <QtGui/QGuiApplication>
#include <QtQuick/QQuickView>

#include <VLCQtCore/Common.h>
#include <VLCQtQml/QmlVideoPlayer.h>

int main(int argc, char *argv[])
{
    QCoreApplication::setApplicationName("VLC-QML播放器");
    QCoreApplication::setAttribute(Qt::AA_X11InitThreads);

    QGuiApplication app(argc, argv);
    VlcCommon::setPluginPath("E:/VLC/VLC/bin/plugins");
    VlcQmlVideoPlayer::registerPlugin();

    QQuickView quickView;
    quickView.setSource(QUrl(QStringLiteral("qrc:/main.qml")));
    quickView.setResizeMode(QQuickView::SizeRootObjectToView);
    quickView.show();

    return app.exec();
}

main.qml:

import QtQuick 2.0
import VLCQt 1.0

Rectangle {
    width: 640
    height: 480
    color: "black"

    VlcVideoPlayer {
        id: vidwidget
        anchors.fill: parent
        url: "http://ivi.bupt.edu.cn/hls/cctv1hd.m3u8"
    }
}

完整Demo地址:

https://github.com/zjgo007/QmlDemo/tree/master/VLCQMLicon-default.png?t=LA92https://github.com/zjgo007/QmlDemo/tree/master/VLCQML

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QML中使用 VLC-Qt 播放网络视频流(附实例) 的相关文章

  • 加载 QPixmap 数据的更好方法

    更好的方法来做到这一点 没有QImage QImage image width height QImage Format RGB888 memcpy image bits m frameRGB gt data 0 height width
  • 在 Qt 5 中嵌入 Python

    我想将 Python 解释器嵌入到 Qt 5 应用程序中 我在 Qt 5 中有一个工作应用程序 但是当我把 include
  • 如何从浮点数组创建新的 QImage

    我有一个代表图像的浮点数数组 列在前 我想在 QGraphicsSecene 上将图像显示为 QPixmap 为了做到这一点 我尝试使用 QImage 构造函数 QImage const uchar data int width int h
  • 打开和关闭附加窗口 (QML)

    目前我有一个通过以下方式打开的窗口 property variant win Button id testButton MouseArea onClicked var component Qt createComponent test qm
  • Qt5和QML:如何使用WebEngine Quick Nano浏览器自动输入用户名和密码

    我正在使用编写一个小应用程序Qt and QML使用 Qt 文档中的示例WebEngine Quick Nano 浏览器 https doc snapshots qt io qt5 5 9 qtwebengine webengine qui
  • Qt 人工鼠标点击无法正常工作

    小玩具应用程序可以在这里找到 http gist github com 517445 http gist github com 517445 我正在尝试将人工鼠标事件发送到小部件 我使用QApplication sendEvent为此 接下
  • Qt qDebug() 在 Windows shell 中不起作用

    我正在使用一个qDebug Qt 框架的printf屏幕上有东西 当我从 Qt Creator 运行应用程序时它工作得很好 但是当我尝试从 Windows 执行它时cmd它什么也没显示 为什么会发生这种情况 你必须添加 CONFIG con
  • 在 Qt 服务器上验证用户身份

    我正在尝试使用 C QtTcpSocket 为个人项目 多人国际象棋游戏 实现身份验证系统 我的朋友建议了一种验证用户的方法 但我想问是否有更简单或更好的方法 来自 Python 背景 做这个项目主要是为了加深对 C 的理解 我将发布我朋友
  • QComboBox 下拉项边距

    我想设计我的风格QComboBox为下拉项目留出边距 现在是这样的 我想要这样的东西 我尝试过 QComboBox QAbstractItemView item margin 3px 但它不起作用 你能帮我解决这个问题吗 您想在项目之间设置
  • new 运算符(以及 malloc)无法分配约 450 MB 的内存 [重复]

    这个问题在这里已经有答案了 我正在开发一个程序 该程序在内存中存储大约 2 2 亿个短值的数组 该数据块的分配方式如下 short arrayName new short SIZE OF ARRAY 然后将文件的内容读入内存 在团队中的另一
  • 如何在 OS X 上的 Qt 应用程序中设置应用程序图标,足以进行分发?

    跟进这个答案 https stackoverflow com a 20918932 368896 to 这个问题 https stackoverflow com questions 20909341 what is the fastest
  • 使用 OpenGL 渲染 QImage

    与我相关的其他问题 https stackoverflow com questions 20126354 render qimage from sooffscreenrenderer in qglwidget 我认为更核心的问题是 如何渲染
  • 如何在针对 Windows XP 的情况下使用 VS2012 构建 Qt 4/5?

    我正在尝试使用 Visual Studio 2012 构建 Qt 4 8 5 Qt 5 2 1 针对 Windows XP SDK v7 1a 使用 VS2102 编译时 源代码与 SDK v7 1a 存在各种不兼容性 因此无法开箱即用 这
  • Qt 嵌入式触摸屏 QMouseEvents 在收到 MouseButtonRelease 之前未收到

    我在带有触摸屏的小型 ARM 嵌入式 Linux 设备上使用 Qt 4 8 3 我的触摸屏配置了 tslib 并对其进行了校准 因此 etc 中有一个 pointcal 文件 我的触摸事件的位置工作得很好 但无论如何我都会在鼠标按下或鼠标释
  • Qt:不完整类型和前向声明的使用无效

    我有一些误解 A h ifndef A H define A H include B h class A public B Q OBJECT public A endif A cpp include A h A A B ui gt blan
  • 覆盖 QWebView 中的页面回复

    我试图在 Qt 的 QWebView 中拦截页面 表单请求 并在某些情况下使用替代内容进行响应 QNetworkReply ngcBrowser createRequest Operation operation const QNetwor
  • QML 列表视图拖放

    我想创建两个 qml 列表视图 可以执行两个功能 拖放一个列表中的项目以更改项目的顺序 跨列表拖放项目 项目将从一个列表中删除并添加到另一个列表中 根据 Qt 文档中的拖放示例 我决定创建两个访问同一列表模型的列表视图 列表模型中的每个项目
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • 通过单击内部小部件而不是标题栏来移动窗口

    在 Windows 中 当我创建 QMainWindow 时 我可以通过单击标题栏并拖动它来在屏幕上移动它 在我的应用程序中 我使用隐藏了标题栏setWindowFlags Qt CustomizeWindowHint 我正在尝试使用小部件
  • Q风格所有权

    在 Qt 应用程序中使用样式时 我遇到了一个有趣的问题QStyle所有权 QStyle继承自QObject 通常接受QObject parent作为构造函数参数来管理其子级的生命周期 但QStyle的构造函数没有此构造函数参数 第一个问题

随机推荐

  • opencv中 .at<uchar>()和.ptr<uchar>()使用方法的区别

    opencv中 at
  • Android Studio通过JNI配置Opencv 使用opencv进行人脸识别

    问题描述 可以使用opencv进行图像处理以及人脸识别 在使用opencv之前 我们先在Android Studio中通过JNI方式配置好opencv环境 此片博客主要讲解怎样通过JNI方式配置opencv环境 下一篇写我在实际配置过程中遇
  • 【MQTT】mqtt 3.1.1 和 5.0的区别

    MQTT Message Queuing Telemetry Transport 是一种轻量级的消息传递协议 用于在物联网 IoT 设备之间进行通信 MQTT有不同的版本 其中最常见的是3 1 1和5 0 下面是它们之间的主要区别 连接过程
  • PowerDesigner逆向工程导入MYSQL数据库

    由于日常数据建模经常使用PowerDesigner 使用逆向工程能更加快速的生成模型提高效率 所以总结使用如下 1 安装MYSQL的ODBC驱动 Connector ODBC 5 1 10 下载地址 http dev mysql com d
  • list容器的使用方法

    本文出自 https msdn microsoft com zh cn library 802d66bt aspx list 类 Visual Studio 2015 其他版本 若要了解有关 Visual Studio 2017 RC 的最
  • 编程求解字符串中每个字母出现的次数

    统计在tt字符中 a 到 z 26各字母各自出现的次数 并依次放在pp所指的数组中 include
  • UE设计师

    岗位职责 1 负责互联网的交互设计工作 分析用户的操作习惯和偏好 并设计交互流程 内容及界面 2 完成界面交互行为和功能的改良 提高网站的易用性 3 根据需求和用户研究结果 完成界面的 流程设计和页面设计 4 对现有产品的可用测试和评估 提
  • 盒子模型,box-sizing (conent-box,boder-box)

    a 伪类的使用css设置的盒子宽度仅仅是内容区的宽度 而非盒子的宽度 高度同理 真正盒子的宽度 需要加上一些其他的属性 盒子的宽度 padding border width 盒子的高度 padding border width b css3
  • 大M法的python编程求解和python包求解

    大M法的python编程求解和python包求解 一 大M算法的求解步骤讲解 二 python编程求解 三 利用python包scipy的优化包optimize 四 用excel求解 五 分析结果 一 大M算法的求解步骤讲解 单纯形法的步骤
  • 2023年6月19日--6月25日(上班熟悉公司代码,下班进行渲染,本周20小时,共2159小时,剩7841小时)

    目前四处透风的感觉 按下葫芦浮起瓢 公司代码还没有熟悉完 幸亏时间充足 可以一边调试一边抄 控制在上班时间应该没问题 渲染这边比较头晕 没人能告诉我 怎么做是正确的 早上先看看洛克人的玻璃材质教程 再看下光线追踪的视频教程 晚上也要抄下fi
  • java正则表达式验证金额

    String reg money d d 1 2 金额正则 可以没有小数 小数最多不超过两位 Pattern pattern Pattern compile reg money Matcher matcher pattern matcher
  • Python 24.opencv 多对象模板匹配

    import cv2 import numpy as np img rgb cv2 imread mali PNG img rgb COPY img rgb img gray cv2 cvtColor img rgb cv2 COLOR B
  • 小甲鱼《C++快速入门》第11集作业

    第一次写博客 一起学习 一起成长 有什么不对的地方望能指正 题目要求 1 定义一个机构 至少存储 姓名 身份证号 性别 2 实现文件存储 3 可以打印到屏幕 代码如下 include
  • ORACLE递归统计所有子孙机构!

    select bid from t branch c start with c upbid 11000000 connect by prior c bid c upbid 说明 1 统计某个机构下所有的子孙机构 如统计北京机构下的子孙机构
  • Web自动化测试03:Selenium安装配置,详细教程

    系列文章目录 软件测试功能到自动化学习路线图 2022年最新版技术栈 软件测试01 从了解测试岗位职能和测试流程开始 附作业 软件测试02 6大实际案例手把手教你设计测试点 软件测试03 用例执行以及缺陷管理的学习 附禅道下载使用流程 软件
  • 【Linux搭建专题】mysql——分片代理——SharingProxy

    SharingProxy 基本知识 固定分区 事先设定一个比较大的库基数 但是这些库可以部署在同一个物理机上 这样即使未来需要扩展物理机也不需要做过多的数据迁移 当物理机扩展时 原有分片规则不变 直接将库指向远程机而非本地的机的库即可 分库
  • js性能优化之Timeline

    有时候 我们就是会不由自主地写出一些低效的代码 严重影响页面运行的效率 或者我们接手的项目中 前人写出来的代码千奇百怪 比如为了一个 Canvas 特效需要同时绘制 600 个三角形 又比如 Coding net 的任务中心需要同时 wat
  • javaseday补充16(迭代器 集合框架list有hasNext set去重无序 )

    import java util ArrayList import java util Collection import java util Iterator public class Test04 public static void
  • 岛屿的个数

    给一个01矩阵 求不同的岛屿的个数 0代表海 1代表岛 如果两个1相邻 那么这两个1属于同一个岛 我们只考虑上下左右为相邻 样例 在矩阵 1 1 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 中
  • QML中使用 VLC-Qt 播放网络视频流(附实例)

    VLC Qt库 一个在libVLC基础上结合了Qt框架的开源库 它提供了媒体播放的视频 音频处理控制的核心类 并提供基于QWidget和QML的GUI框架 QWidget中使用VLC方法见我博文 Qt 中使用 VLC Qt 播放网络视频流