搭建基于H.265编码的RTSP推流云服务器

在这里插入图片描述

一、前言
  • 网上能够找到的RTSP流地址,均是基于H.264编码的RTSP流地址,无法测试应用是否可以播放H265实时流
  • 为此,搭建本地的把H.264转码成H.265的RTSP服务器,不管是通过VLC搭建本地RTSP服务器,还是通过FFmpeg搭建本地RTSP服务器,均无法在基于ijkplayer的鸿蒙RTSP播放器上播放
  • 鉴于上述特点,在个别网站中找到基于H.265编码的mp4文件,不再转码,而是直接转为实时RTSP流,经过测试,依然失败
  • 为了验证鸿蒙RTSP播放器是否支持H.265编码的RTSP流,搭建远程RTSP服务器,通过公网IP使得我可以获取远程RTSP流
二、云服务器认识

弹性云服务器(Elastic Cloud Server,ECS)是由CPU、内存、操作系统、云硬盘组成的一种可随时获取、弹性可扩展的云服务器。弹性云服务器购买成功后,您就可以像使用自己的本地PC或物理服务器一样,在云上使用弹性云服务器。

只需要指定CPU、内存、操作系统、规格、登录凭证方式即可获得一台弹性云服务器。

本文以如下配置为例,介绍购买和使用ECS的操作指导。

  • 购买数量:1台
  • 计费方式:包年/包月
  • 规格:s7.xlarge.2(4vCPUs、8GiB内存)
  • 操作系统:Linux
  • 登录凭证:密钥对
三、详细步骤如下:
  1. 在华为云平台网站注册账号,选择新用户体验,可以免费体验一个月
  2. 选择FLexus云服务器L实例
  3. 服务器基本属性

区域:华南-广州 
核心:2核
内存:2GiB
系统盘:40GiB 
流量包:100GB/月
峰值带宽:2Mbit/s 
带宽类型:独享
系统:Ubuntu 20.04 server 64bit
访问密码:先关闭服务器后再重置
  1. 远程服务器的三种登录方式

    1. 使用CloudShell登录(最简单):操作更流畅,命令窗口CLI中的信息支持复制粘贴,支持搜索、浏览输出历史和多终端分区布局
    2. 使用VNC方式登录:不依赖公网IP,通过控制台提供的远程登录功能
    3. 使用SSH密码方式登录Linux云服务器(笔者推荐):可以使用VSCode编辑linux里面的文件
    4. 使用过MacOS系统主机登录Linux云服务器
    5. 使用移动设备登录Linux云服务器
  2. 使用SSH密码方式登录步骤:

    1. 弹性云服务器状态为“运行中”

    2. 弹性云服务器已经绑定弹性公网IP(默认已经配置)

    3. 所在安全组入方向已开放22端口(默认已经开放)

    4. 在云服务器中(使用CloudShell登录)验证22端口是否开放,下图即为成功:![[Pasted image 20240924145659.png]]

    5. 在VScode中安装Remote SSH

    6. 在VScode中的SSH应用中,通过公网IP进行SSH连接。命令:用户名@服务器IP -p 端口号。比如输入 ssh root@123.123.123.132,直接回车默认访问22端口

    7. 进入配置文件后,点击右下角继续连接即可

    8. 输入密码在这里插入图片描述

    9. 然后在VScode打开一个终端,就可以愉快的使用命令啦,:![[Pasted image 20240924152132.png]]

  3. 使用FFmpeg进行推流

  • 安装FFmpeg
sudo apt-get update
sudo apt-get install ffmpeg

![[Pasted image 20240924163722.png]]

  • 查看是否支持H.265编码,看输出是否有libx265
ffmpeg -codecs | grep libx265

在这里插入图片描述

  • 在华为云服务器控制台的安全组中开发目标端口,可以设置8554端口,或者554端口,如果不确定
    在这里插入图片描述

  • 检查8554端口是否开放

通过命令,前面检查22端口的时候有用过netstat an | grep 8554
  • 如果端口测试不通过,可以新增一个安全组,暂时允许所有协议端口在这里插入图片描述

  • 使用FFmpeg推流

ffmpeg -re -i test.mp4 -c:v libx265 -preset veryfast -tune zerolatency -c:a aac -f rtsp rtsp://your_server_ip:8554// 参数说明
- `-re`:以原始速率读取输入文件。
- `-i test.mp4`:指定输入文件,可以直接把win的MP4文件拖动到VSCode展示的linux文件夹中。
- `-c:v libx265`:指定视频编码器,也可以把5改成4。
- `-preset veryfast`:编码预设,用于平衡编码速度和压缩率。
- `-tune zerolatency`:优化延迟。
- `-c:a aac`:指定音频编码器。
- `-f rtsp`:指定输出格式为RTSP。
- `rtsp://your_server_ip:8554`:指定RTSP服务器地址和端口以及流名称,可以是你的公网IP。
  • 客户端连接RTSP服务器,可以使用VLC
rtsp://your_server_ip:8554

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/433975.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自定义knife4j访问路径

文章目录 本文档只是为了留档方便以后工作运维,或者给同事分享文档内容比较简陋命令也不是特别全,不适合小白观看,如有不懂可以私信,上班期间都是在得 原由,嫌弃doc.html 太大众 直接重定向,直接上代码了 p…

数据结构:详解搜索二叉树

目录 一、搜索二叉树的概念 二、搜索二叉树的基本结构 三、搜索二叉树的插入 四、搜索二叉树的查找 五 、搜索二叉树的删除 一、搜索二叉树的概念 ⼆叉搜索树⼜称⼆叉排序树,它或者是⼀棵空树,或者是具有以下性质的⼆叉树: 若它的左子树…

smb文件夹共享设置

UOS统信三种不同场景的文件夹共享,分别是:1、UOS系统间的文件共享;2、Windows7系统访问UOS共享的文件;3、UOS系统访问Windows7共享的文件 文章目录 功能概述功能介绍第一种场景:UOS系统之间的文件共享设置步骤一:打开共享文件夹步骤二:共享管理步骤三:设置共享密码步骤…

【步联科技身份证】 身份证读取与解析———未来之窗行业应用跨平台架构

一、身份证解析代码 C# function 身份证数据解析_湖南步联科技(wzxx) {var result {};result[xm] wzxx.substr(0, 15);result[xbdm] wzxx.substr(15, 1);result[mzdm] wzxx.substr(16, 2);result[csrq] wzxx.substr(18, 8);result[dzmc] wzxx.substr(26, 35);result[gms…

【射频通信电子线路第六讲】射频信号与调制包括调幅和部分调频的内容

一、调制(Modulation)与解调(Demodulation) 1、相关概念 调制是指使一个信号(如光信号、高频电磁振荡等)的某些参数(振幅、频率和相位)按照另一个欲传输的信号的特点变化的过程。 …

普通二叉搜索树的模拟实现【C++】

二叉搜素树简单介绍 二叉搜索树又称二叉排序树,是具有以下性质的二叉树: 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 若它的右子树不为空,则右子树上所有节点的值都大于根节点的值 它的左右子树也分别为二叉搜索树 注意…

[ComfyUI]Flux 出图背景太模糊?一招解决!

小伙伴们在使用 Flux 出图的时候,应该也遇到过大多数情况下背景都是比较模糊的,虽然大多数时候没啥影响,毕竟我们很多时候都只是看主体嘛。 但是也有些场景,我们希望整体的构图中背景也可以高清一些,这样在看整张图片…

【第十六章:Sentosa_DSML社区版-机器学习之生存分析】

【第十六章:Sentosa_DSML社区版-机器学习之生存分析】 16.1 加速失效时间回归 1.算子介绍 加速失效时间回归模型Accelerated failure time (AFT)是一个监督型参数化的回归模型,它可以处理删失数据。它描述了一个生存时间的对数模型,所以它通…

【CSS】透明度 、过渡 、动画 、渐变

opacity 透明度transition 过渡animation 动画background 渐变 ( 线性渐变 \ 径向渐变 \ 锥形渐变 ) opacity 透明度 设置元素的透明度,会影响元素及其所有子元素的透明度,值范围:0(完全透明)到 1(完全不透…

经济不好,但是遍地都是赚钱的机会

现在职场越来越内卷,裁员风波也是不断,前些天看到一个帖子,裁员都裁到应届生头上了。 都说00后整治职场,在如今环境下也要掂量一下了。 大家都在抱怨环境,可是你有没有想过,有些人在闷声发着小财。 下面…

Pygame中Sprite实现逃亡游戏5

在《Pygame中Sprite实现逃亡游戏4》中通过碰撞检测实现了玩家、飞龙与飞火之间的碰撞处理,基本上实现了逃亡功能。最后,实现这个逃亡游戏中文字提示的功能。 1 操作提示 当进入游戏后,会在玩家下方的位置给出操作提示,如图1所示…

数据集-目标检测系列-鲨鱼检测数据集 shark >> DataBall

数据集-目标检测系列-鲨鱼检测数据集 shark >> DataBall 数据集-目标检测系列-鲨鱼检测数据集 shark 数据量:6k 数据样例项目地址: gitcode: https://gitcode.com/DataBall/DataBall-detections-100s/overview github: https://github.com/Te…

3款照片人物开口说话AI工具,跟真人说话一样~免费!短视频带货必备!(附教程)

大家好,我是画画的小强 今天给大家分享一个AI图片口播数字人讲认知思维,单号佣金赚5W的AI带货信息差玩法,许多小伙伴表示对这类AI带货玩法感兴趣。 说实话,现在AI照片人物对口型工具,越来越逼真,很难辨识出…

JAVA开源项目 技术交流分享平台 计算机毕业设计

本文项目编号 T 053 ,文末自助获取源码 \color{red}{T053,文末自助获取源码} T053,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 新…

数据集-目标检测系列-豹子 猎豹 检测数据集 leopard>> DataBall

数据集-目标检测系列-豹子 猎豹 检测数据集 leopard>> DataBall 数据集-目标检测系列-豹子 猎豹 检测数据集 leopard 数据量:5k 想要进一步了解,请联系。 DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集&#x…

赋值运算符重载

背景: 在EHR模块进行调试时,发现QVector3D对象进行赋值时,出现变量未赋值成功问题。 问题描述: 在进行代码调试时,发现赋值操作未成功,导致代码逻辑异常,经过分析,发现QVector3D 赋…

前台项目启动/打包报错 Error: error:0308010C:digital envelope routines::unsupported

在package.json中修改启动/打包语句 如图,我这里是打包时候报错,就在build里前面加上 set NODE_OPTIONS--openssl-legacy-provider && 再次打包,成功。

828华为云征文|部署敏捷项目管理系统工具 ZenTao

828华为云征文|部署敏捷项目管理系统工具 ZenTao 一、Flexus云服务器X实例介绍二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置2.4 Docker 环境搭建 三、Flexus云服务器X实例部署 ZenTao3.1 ZenTao 介绍3.2 ZenTao 部署3.3 ZenTao 使用 四、总…

急!现在转大模型还来得及吗?零基础入门到精通,收藏这一篇就够了

大模型的出现,让行内和行外大多数人都感到非常焦虑。 行外很多人想了解却感到无从下手,行内很多人苦于没有硬件条件无法尝试。想转大模型方向,相关的招聘虽然层出不穷,但一般都要求有大模型经验。而更多的人,则一直处…

中国科学技术大学《2020年+2021年845自动控制原理真题》 (完整版)

本文内容,全部选自自动化考研联盟的:《25届中国科学技术大学845自控考研资料》的真题篇。后续会持续更新更多学校,更多年份的真题,记得关注哦~ 目录 2020年真题 2021年真题 Part1:2020年2021年完整版真题 2020年真…