设置VLC播放器进行RTSP推流桌面(共享桌面)

2024-06-18 05:18

本文主要是介绍设置VLC播放器进行RTSP推流桌面(共享桌面),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

设置VLC播放器进行RTSP推流桌面(共享桌面)

  • 一、推流与拉流概念
  • 二、设置推流端
  • 三、设置拉流端(播放端)

VLC官网:https://www.videolan.org/

一、推流与拉流概念

首先,做几个名词解释。

  • 推流,指的是把采集阶段封包好的内容传输到服务器的过程。
  • 拉流,这个指的是用户端从服务器拉取语音视频流到客户端播放。

在这里插入图片描述

可以简单理解为推流,就是将音视频数据推送至某IP的指定端口。拉流就是从该IP指定端口,拉取数据进行播放。那么数据传输过程中,我们可以使用的传输协议有很多,例如RTSP、RTMP、HLS等。

  • RTSP(real time streaming protocol):实时流 传输协议,用于控制声音和图像的多媒体串流协议。由real networks和netscape提出;基于udp协议,实时性比较好、一般用于视频会议。
  • RTMP(real time messaging protocol):实时消息 传输协议,adobe公司为flash播放器和服务器之间的音频、视频、数据传输开发的开放协议;基于tcp协议,低延迟稳定性比较好,一般用于直播推送,默认端口1935。
  • HLS(http live streaming):苹果公司实现的基于http协议的流媒体传输协议。

回到本文主题,使用RTSP推流桌面视频数据,需要演示的过程包含2个,即:

  • 推流,意思就是通过VLC播放器,将桌面的实时录制视频,采用RTSP协议推送到指定IP的端口上。
  • 拉流,意思就是通过VLC播放器,从该IP的端口,取数据进行播放。

二、设置推流端

我们打开VLC播放器,选择“媒体”->“流…”

在这里插入图片描述

选择“捕获设备”,捕获模式选择“桌面”,帧率输入“30”,然后选择“串流”

在这里插入图片描述

选择“下一个”

在这里插入图片描述

先选择传输协议为“RTSP”,点击“添加”

在这里插入图片描述

RTSP推流端口默认为8554,选择“下一个”

在这里插入图片描述

勾选“激活转码”,配置文件选择“Video - H.264 + MP3(MP4)”,然后“下一个”

在这里插入图片描述

生成的串流输出字符串,如下所示,在调用VLC库进行编程方式实现推流时,可参考该字符串,此处直接默认就好。

此时,我们点击“流”的话,立马就会开始推流,由于此时播放端,还没准备好,所以我们先把这个窗口保留在这里,播放端准备好了,再来推流。

在这里插入图片描述

小贴士:

我们还可以在如下图中,输入指定的IP地址,一般为局域网其他IP,那么就可以向局域网中其他机器推流视频了。

在这里插入图片描述

三、设置拉流端(播放端)

我们再打开一个VLC播放器,选择“媒体”->“打开网络串流”

在这里插入图片描述

由于我们并没有指定RTSP推流的IP地址,故默认为本机IP,端口默认为8554。

我们输入rtsp://127.0.0.1:8554/,如下:

在这里插入图片描述

先去推流端启动推流,然后再回来点击“播放”,即可播放桌面实时视频,如下所示:

在这里插入图片描述

左边为播放端,右边为推流端。



若对你有帮助,欢迎点赞、收藏、评论,你的支持就是我的最大动力!!!

同时,阿超为大家准备了丰富的学习资料,欢迎关注公众号“超哥学编程”,即可领取。

在这里插入图片描述

这篇关于设置VLC播放器进行RTSP推流桌面(共享桌面)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1071394

相关文章

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

QT进行CSV文件初始化与读写操作

《QT进行CSV文件初始化与读写操作》这篇文章主要为大家详细介绍了在QT环境中如何进行CSV文件的初始化、写入和读取操作,本文为大家整理了相关的操作的多种方法,希望对大家有所帮助... 目录前言一、CSV文件初始化二、CSV写入三、CSV读取四、QT 逐行读取csv文件五、Qt如何将数据保存成CSV文件前言

C#TextBox设置提示文本方式(SetHintText)

《C#TextBox设置提示文本方式(SetHintText)》:本文主要介绍C#TextBox设置提示文本方式(SetHintText),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录C#TextBox设置提示文本效果展示核心代码总结C#TextBox设置提示文本效果展示核心代

通过Spring层面进行事务回滚的实现

《通过Spring层面进行事务回滚的实现》本文主要介绍了通过Spring层面进行事务回滚的实现,包括声明式事务和编程式事务,具有一定的参考价值,感兴趣的可以了解一下... 目录声明式事务回滚:1. 基础注解配置2. 指定回滚异常类型3. ​不回滚特殊场景编程式事务回滚:1. ​使用 TransactionT

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

SpringSecurity6.0 如何通过JWTtoken进行认证授权

《SpringSecurity6.0如何通过JWTtoken进行认证授权》:本文主要介绍SpringSecurity6.0通过JWTtoken进行认证授权的过程,本文给大家介绍的非常详细,感兴趣... 目录项目依赖认证UserDetailService生成JWT token权限控制小结之前写过一个文章,从S

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.