FFmpeg开发笔记(二十三)使用OBS Studio开启RTMP直播推流
OBS是一个开源的直播录制软件,英文全称叫做Open Broadcaster Software,广泛用于视频录制、实时直播等领域。OBS不但开源,而且跨平台,兼容Windows、Mac OS、Linux等操作系统。
OBS的官网是https://obsproject.com/,录制软件名叫OBS Studio,它基于QT+FFmpeg编码。使用OBS实现直播功能的话,需要执行下列四个步骤。
一、下载并安装OBS Studio
OBS Studio的官网下载页面是https://obsproject.com/download,最新版本为2024年4月推出的OBS-Studio-30.1.2,Windows安装包的下载地址为https://cdn-fastly.obsproject.com/downloads/OBS-Studio-30.1.2-Full-Installer-x64.exe。
OBS Studio的源码托管页面在https://github.com/obsproject/obs-studio,各版本的下载页面是https://github.com/obsproject/obs-studio/releases/,其中OBS-Studio-30.1.2的安装包下载链接为https://github.com/obsproject/obs-studio/releases/download/30.1.2/OBS-Studio-30.1.2-Full-Installer-x64.exe。
双击下载好的安装包,一路单击Next按钮,最后在结束窗口单击Finish按钮完成安装操作。
二、启动流媒体服务器
按照《FFmpeg开发实战:从零基础到短视频上线》一书“10.2.2 FFmpeg向网络推流”小节的说明,下载并安装轻量级流媒体服务软件MediaMTX。解压后双击启动mediamtx.exe,此时RTMP协议的默认推流地址为rtmp://127.0.0.1:1935/stream。这里之所以用rtmp地址而非rtsp地址,是因为OBS Studio默认只支持RTMP推流,如果要让它支持RTSP推流,还得额外增加配置。因此为了简化直播流程,就采用RTMP方式推流了。
三、打开OBS Studio
双击启动OBS Studio之后,执行下列三个步骤开启直播推流:
1、单击主界面右下角的“设置”按钮,或者依次选择顶部菜单“文件”→“设置”,弹出的设置窗口在左边列表选择“直播”,窗口右边的“服务”栏选择“自定义”,“服务器”栏填“rtmp://127.0.0.1:1935/stream”,如下图所示:


设置窗口的左边列表选择“视频”,窗口右边的“基础分辨率”和“输出分辨率”都选择“1280x720”,如下图所示:


确认“直播”和“视频”两个页面都修改好了,再单击窗口右下角的确定按钮完成设置。
2、找到主界面下方中间靠左的“来源”区域,单击该区域左下角的加号按钮,在弹出列表中选择“视频采集设备”,接着在弹窗中选择“新建”,如下图所示:


然后单击窗口右下角的确定按钮,OBS Studio就开始预览摄像头采集到的视频画面。
3、单击主界面右下角的“开始直播”按钮,OBS Studio就开始向指定的服务器推送直播流。
四、启动拉流程序
打开MSYS的命令行窗口,进入《FFmpeg开发实战:从零基础到短视频上线》随书源码的chapter10目录,运行下面的程序命令,期望从指定的rtmp地址拉流并播放。
./playsync2 "rtmp://127.0.0.1:1935/stream"
然后发现弹出SDL窗口,观察播放的视频正是OBS通过摄像头采集到的画面,说明使用OBS Studio结合MediaMTX成功实现了直播功能。
FFmpeg开发笔记(二十三)使用OBS Studio开启RTMP直播推流的更多相关文章
- FFmpeg开发笔记(四):ffmpeg解码的基本流程详解
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- FFmpeg开发笔记(五):ffmpeg解码的基本流程详解(ffmpeg3新解码api)
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放
前言 ffmpeg播放rtsp网络流和摄像头流. Demo 使用ffmpeg播放局域网rtsp1080p海康摄像头:延迟0.2s,存在马赛克 使用ffmpeg播放网络rtsp文件流 ...
- FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
前言 本篇章是对之前windows环境的补充,之前windows的是无需进行编译的,此篇使用源码进行编译,版本就使用3.4.8. FFmpeg简介 FFmpeg是领先的多媒体框架,能够解码 ...
- FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台
FFmpeg和SDL开发专栏(点击传送门) 上一篇:<FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放>下一篇:敬请期待 前言 将ffmpeg移植到海思H ...
- Django开发笔记二
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.xadmin添加主题.修改标题页脚和收起左侧菜单 # ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- Django笔记二十三之case、when操作条件表达式搜索、更新等操作
本文首发于公众号:Hunter后端 原文链接:Django笔记二十三之条件表达式搜索.更新等操作 这一篇笔记将介绍条件表达式,就是如何在 model 的使用中根据不同的条件筛选数据返回. 这个操作类似 ...
- Android流媒体开发之路二:NDK开发Android端RTMP直播推流程序
NDK开发Android端RTMP直播推流程序 经过一番折腾,成功把RTMP直播推流代码,通过NDK交叉编译的方式,移植到了Android下,从而实现了Android端采集摄像头和麦克缝数据,然后进行 ...
- SDL开发笔记(二):音频基础介绍、使用SDL播放音频
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
随机推荐
- MogDB SQLdiag 使用指南
MogDB SQLdiag 使用指南 本文出处:https://www.modb.pro/db/411957 前提条件 需要保证用户提供训练数据. 如果用户通过提供的工具收集训练数据,则需要启用 WD ...
- 《深入理解Java虚拟机》读书笔记:HotSpot的算法实现
HotSpot的算法实现 HotSpot的算法实现概要 1.枚举根节点 由于目前的主流Java虚拟机使用的都是准确式GC(这个概念在第1章介绍Exact VM对Classic VM的改进时讲过),所以 ...
- HarmonyOS Codelab 优秀样例——购物应用,体验一次开发多端部署魅力
一. 样例介绍 本篇Codelab基于自适应布局和响应式布局,实现购物应用在手机.折叠屏.平板不同屏幕尺寸设备上按不同设计显示.通过三层工程结构组织代码,实现一次开发,多端部署 . 手机运行效果如图所 ...
- DevEco Studio新特性分享-跨语言调试,让调试更便捷高效
原文:https://mp.weixin.qq.com/s/JKVLQXu1z1zAoF5q49YEGg,点击链接查看更多技术内容. HUAWEI DevEco Studio是开发Harmony ...
- CentOS 6.5 LAMP分主机平台的搭建及测试
CentOS 6.5 LAMP分主机平台的搭建及测试 看似非常之完备,转来抽空测试学习 原文地址:http://www.it165.net/os/html/201403/7595.html 前言 ...
- 手动给docusaurus添加一个搜索
新版博客用docusaurus重构已经有些日子了,根据docusaurus的文档上也申请了Algolia,想一劳永逸的解决博客的搜索问题.但是流水有意,落花无情. algolia总是不给我回复,我只能 ...
- 什么是token,为什么需要token
1.为什么需要token 随着互联网的发展,为了更安全,以及更好的用户体验,逐渐产生了token这个技术方案 之所以使用token是因为http/https协议本身是无状态的,不能进行信息的存储 (c ...
- 阿里云张献涛:自主最强DPU神龙的秘诀
简介:读懂云计算,才能看清DPU热潮. 微信公众号搜索"弹性计算百晓生",获取更多云计算知识. 如果细数最近火爆的科技概念,DPU必然位列其中. 这是英伟达一手捧红的新造富故事, ...
- IIncrementalGenerator 增量 Source Generator 生成代码入门 从语法到语义 获取类型完全限定名
本文告诉大家如何在使用 IIncrementalGenerator 进行增量的 Source Generator 生成代码时,如何从语法分析过程,将获取的语法 Token 转换到语义分析上,比如获取类 ...
- 在鼠标右键菜单中新增新建Markdown文件选项(VSCode)
引言 正常情况下,我们新建md文件有两种方式:一是通过Markdown编辑器新建,二是新建txt文件再修改后缀. 但是在Windows系统中,我们可以通过修改注册表来新增右键菜单选项.这里我们可以通过 ...