问题:如何在Qt5中获取192.168.1.1:8080/?action=stream中的视频流?

渺小的码农 2015-04-05 11:19:33
最近在做一个智能WIFI视频小车的客户端,用到Qt开发环境,视频通过摄像头采集,通过wifi模块做中转服务端构建网络,wifi模块中是一个openwrt系统,将视频信号通过Http协议发出,192.168.1.1:8080/?action=stream 网址可以查看到视频,现在想要通过Qt编写的客户端获得视频流,进行解析显示,现在不知道如何通过Qt中的接口,接收视频流?请指教!谢谢!请详细代码说明~
...全文
3698 14 打赏 收藏 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_36898781 2019-02-19
  • 打赏
  • 举报
回复
請問最後有解決了嗎? 最近也在學習QT 用Stream 但一直失敗...
DevoutPrayer 2018-12-15
  • 打赏
  • 举报
回复
用ffmpeg
  • 打赏
  • 举报
回复
楼主你这个读取的视频流如何在QT是显示呢?
qq_31651367 2017-03-27
  • 打赏
  • 举报
回复
你好,请问如何将接收到的数据剔除http header后用QPixmap在QLabel上绘图。能不能发下源码
  • 打赏
  • 举报
回复
引用 7 楼 chief5566 的回复:
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    tcpSocket = new QTcpSocket(this);
    tcpSocket->connectToHost("192.168.1.1",8080);
    connect(tcpSocket,SIGNAL(readyRead()),this,SLOT(tcpDataReceive()));

}

MainWindow::~MainWindow()
{
    delete ui;
}


void MainWindow::tcpDataReceive()
{
    QByteArray data = QByteArray::fromHex(tcpSocket->readAll());
    qDebug() << data;
}

void MainWindow::on_pushButton_clicked()
{
    tcpSocket->write("GET /?action=stream\r\n\r\n");
}
用QTcpSocket,再将接收到的数据剔除http header后用QPixmap在QLabel上绘图。
tcpSocket->write("GET /?action=stream\r\n\r\n"); 这一句是什么作用呢?我试了试必须有这句才能接收到数据
  • 打赏
  • 举报
回复
楼主你好请问,问题解决了吗,最近也在做一个视频小车,但是视频传输这块不知道是怎样读取的
粉色发生 2016-01-19
  • 打赏
  • 举报
回复
你好,请问你解决了吗?
chief5566 2015-09-24
  • 打赏
  • 举报
回复
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    tcpSocket = new QTcpSocket(this);
    tcpSocket->connectToHost("192.168.1.1",8080);
    connect(tcpSocket,SIGNAL(readyRead()),this,SLOT(tcpDataReceive()));

}

MainWindow::~MainWindow()
{
    delete ui;
}


void MainWindow::tcpDataReceive()
{
    QByteArray data = QByteArray::fromHex(tcpSocket->readAll());
    qDebug() << data;
}

void MainWindow::on_pushButton_clicked()
{
    tcpSocket->write("GET /?action=stream\r\n\r\n");
}
用QTcpSocket,再将接收到的数据剔除http header后用QPixmap在QLabel上绘图。
qq_27218611 2015-08-14
  • 打赏
  • 举报
回复
你知道怎么搞了嘛?我也需要用qt编写客户端,也是个wifi小车,要在客户端实时显示视频画面,方案跟你基本一样诶,只不过我最终还要将编写的客户端移植到2440板子上,不知道如何传视频,现在很急,楼主你方便分享给我一下你的方法吗
ronal7do 2015-04-07
  • 打赏
  • 举报
回复
QWebView是加载整个页面
Creator_莫言 2015-04-07
  • 打赏
  • 举报
回复
直接在界面上用一个QWebView,然后加载你上面的那个网址不可以吗?
donwmufromdying 2015-04-07
  • 打赏
  • 举报
回复
我一般用vlc来进行视频解码。rtsp
foruok 2015-04-06
  • 打赏
  • 举报
回复
视频流的获取,你可以直接使用QNetworkAccessManager,当做普通的http流来读取,也就是读文件。 如果你要播放,就使用QMediaPlayer,它支持流媒体播放。但前提是你的运行系统上有底层的多媒体框架,比如gstreamer,directshow,还需要安装各种codec,windows下可以用LAVFilters,linux下可以安装gstreamer的各种插件,什么ugly、good之类的都装上就行了。
zyq5945 2015-04-05
  • 打赏
  • 举报
回复
用Qt调用VLC试试。
内容概要:本文聚焦于氢燃料电池极化曲线参数的辨识与性能评估,采用人工蜂群算法(ABC)结合Matlab编程实现。研究基于Amphlett半经验模型构建质子交换膜燃料电池(PEMFC)的极化特性模型,通过优化算法对模型中的高维非线性参数进行全局辨识,旨在精确还原燃料电池的实际输出电压-电流关系。文中系统分析了人工蜂群算法在参数反演过程中的收敛性、敏感性与可辨识性,验证了其在多参数耦合、强非线性系统建模中的优越性能。同时,通过对辨识后的模型进行多维度性能评估,如残差分析、拟合优度检验与工况适应性测试,全面衡量模型精度与实用性,为燃料电池系统的设计、控制与优化提供可靠的理论依据与数据支撑。; 适合人群:具备一定Matlab编程基础,从事新能源、燃料电池、系统建模或智能优化算法研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握基于智能优化算法的复杂电化学系统参数辨识方法;② 学习利用Amphlett等半经验模型进行PEMFC建模与仿真;③ 理解人工蜂群算法在解决高维非线性优化问题中的应用技巧与性能分析方法;④ 实现燃料电池性能的精确评估与预测。; 阅读建议:本资源以Matlab代码实现为核心,强调算法应用与实践操作。学习者应在掌握基本电化学原理和优化算法概念的基础上,结合提供的代码进行调试与仿真,重点关注目标函数的构建、参数初始化范围的设定以及算法收敛过程的可视化分析,以深入理解参数辨识的内在机理。

684

社区成员

发帖
与我相关
我的任务
社区描述
智能路由器通常具有独立的操作系统,包括OpenWRT、eCos、VxWorks等,可以由用户自行安装各种应用,实现网络和设备的智能化管理。
linuxpython 技术论坛(原bbs)
社区管理员
  • 智能路由器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧