FFMPEG 到 YouTube 直播

2024-01-13

我有一个音频流,我使用 ffmpeg 将其流式传输到 youtube live,并使用以下命令将图像作为背景,

ffmpeg -loop 1 -i x.jpg -i http://xxx.xxx.xxx.xxxx:5305/stream -c:a aac -s 1280x720 -ab 128k -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxx

但我在 YouTube 上收到以下消息,

YouTube is not receiving enough video to maintain smooth streaming. As such, viewers will experience buffering 这会导致输出流中出现缓冲。

谁知道怎么修它 ?

如有帮助,将不胜感激。


经过大量的试验和错误,下面的解决方案工作得非常完美。为了确保它 24/7 运行,将其包装在某种描述的服务中。

这是最新版本的 FFMPEG,包含 -stream_loop -1。
背景是一个mp4文件。
http://localhost:3888= 音频流。

ffmpeg -stream_loop -1 -i $MYPATH/background/$background \
-i http://localhost:3888 -filter:a "volume=$volume" \
-r 24 -g 48 -pix_fmt yuv420p -x264-params keyint=48:min-keyint=48:scenecut=-1 \
-s $size -b:v $bitrate -b:a 128k -ar 44100 -acodec aac \
-vcodec libx264 -preset superfast -bufsize 960k -crf 28 -threads 2 \
-f flv rtmp://a.rtmp.youtube.com/live2/$key

配置文件:

# Config File
background=out.mp4
size=1280x720
bitrate=1500k
key=----KEY----
volume=0.5

编辑--下面的旧解决方案

所以我有一个解决方案。

ffmpeg -re -loop 1 -framerate 2 -i test1.jpg -i https://xxxxxxx:8443/live.ogg -c:a aac -s 2560x1440 -ab 128k -maxrate 2048k -bufsize 2048k -framerate 30 -g 60 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxxxxxxxxxx

重要的部分是

-re

首先处理缓冲问题。
然后

-帧率2

在“-loop 1”和图像之间。这有效,我得到了一个干净的高质量流,不缓冲。

希望这有帮助!

Edit 1

ffmpeg -re -loop 1 -framerate 2 -i test1.jpg -i https://xxxxxxxxxxx:8443/live.ogg -c:a aac -s 2560x1440 -ab 128k -vcodec libx264 -pix_fmt yuv420p -maxrate 2048k -bufsize 2048k -framerate 30 -g 2 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxxxxxxxxxx

好的,所以这个更新版本应该可以解决几乎所有的流问题。

-vcodec libx264 -pix_fmt yuv420p

更改为 H.264 Codex 修复了该问题

-g 2

这解决了最终的缓冲问题。

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

FFMPEG 到 YouTube 直播 的相关文章

随机推荐

  • 在Python中组合多个for循环

    比方说 我们有一个名为 articles 的变量中的对象列表 每个对象都有一个成员 tags 这是一个简单的列表 预期输出 所有文章中的所有标签 加入到一个列表中 在多行中 解决方案是 arr for article in articles
  • PHP 中的递归生成器

    介绍 自 PHP 5 5 版本以来 出现了以下很棒的功能发电机 http php net manual en language generators overview php 我不会重复官方手册页 但它们对于迭代器的简短定义来说是很棒的事情
  • Facebook 链接将在应用程序而不是浏览器中打开[重复]

    这个问题在这里已经有答案了 可能的重复 从其他应用程序启动 Facebook 应用程序 https stackoverflow com questions 4191492 launch facebook app from other app
  • 动态编辑 Tensorflow 对象检测的管道配置

    我正在使用tensorflow对象检测API 并且我希望能够在python中动态编辑配置文件 如下所示 我想过在 python 中使用协议缓冲区库 但我不知道如何去做 model ssd num classes 1 image resize
  • “支持的最低 Gradle 版本是 2.14.1。当前版本是 2.10。”错误[重复]

    这个问题在这里已经有答案了 我正在尝试升级我的 Android 应用程序 但收到以下错误 支持的最低 Gradle 版本为 2 14 1 当前版本是2 10 如果使用 gradle 包装器 请尝试将 C Users MyUser Deskt
  • 如何使用 Translate Toolkit 将 .po 转换为 PHP 数组(Zend Framework)?

    我正在尝试使用po2php http docs translatehouse org projects translate toolkit en latest commands php2po html将我的 po 文件转换为 Zend ph
  • Docusign:使用 REST API 和预填充标签通过模板创建信封

    我正在集成 Docusign 以便收件人可以看到他们的信封嵌入在我的网站上 我首先使用 api 创建信封 然后尝试使用动态数据预填充数据字段 据我所知 我用来创建信封的 json 没有任何问题 StackOverflow 上针对此问题的其他
  • 有没有办法将 QWidget 添加到 QtCreator 中的 QMenu

    我正在创建一个文本编辑器 我想把QComboBox in the QMenu 我在里面没有找到任何方法QMenu处理过这样的事情 最接近的是QMenu addAction 我想知道如何绕过这个障碍 Thanks 你必须子类化QWidgetA
  • 高斯模糊和卷积核

    我不明白什么是卷积核以及如何将卷积矩阵应用于图像中的像素 我说的是对图像进行高斯模糊操作 我还可以获得有关如何为高斯模糊操作创建内核的解释吗 我在读本文 http en wikipedia org wiki Gaussian blur但我似
  • 点击视口底部时阻止 Mobile Safari 显示工具栏

    我们有一个简单的移动应用程序在 iOS 上的 Mobile Safari MS 中运行 当用户向下滚动页面时n像素 一个 顶部 按钮从底部向上滑动 顶部按钮是固定位置 问题是 当您开始在 MS 中滚动时 导航和工具栏 UI 会被隐藏 当您点
  • 无法使用 servlet 和 jsp 更新表中的特定记录

    大家好 我为用户创建了一个 jsp 页面 他们可以在其中更新其现有详细信息 并且提交时记录会在数据库中更新 1 gt 帐户详细信息 java Java Servlet program responsible for obtaining th
  • Github:带有拉取请求的分叉

    我正在研究这段代码 https github com samvermette SVPullToRefresh https github com samvermette SVPullToRefresh 这有许多拉取请求待处理 但由于某种原因
  • 模拟子进程.Popen

    我有一个模块 utils py 它有这个 run cmd 方法 def run cmd cmd pipe subprocess Popen cmd shell True stdout subprocess PIPE stderr subpr
  • Linq 不同 - 计数

    我希望对示例对象列表执行查询 Date Username 01 01 2011 james 01 01 2011 jamie 01 01 2011 alex 01 01 2011 james 02 01 2011 matt 02 01 20
  • Friendly_id使用belongs_to关联中的值

    我有以下型号 class User lt ActiveRecord Base extend FriendlyId friendly id first name use gt slugged has one professor after c
  • C# 线程安全快速计数器

    在 C 中获得具有最佳性能的线程安全计数器的方法是什么 这很简单 public static long GetNextValue long result lock LOCK result COUNTER return result 但还有更
  • iOS14.2中的SwiftUI PageTabView会多次调用ChildView的onAppear方法

    我使用 TabView PageTabViewStyle 和 SwiftUI 来显示页面视图 当我滑动这个 TabView 时 我发现子视图会多次调用 onAppear 方法 有人可以告诉我为什么吗 这是我的代码 import SwiftU
  • 基于 C 有符号整数的攻击

    我正在读书这个问题 https stackoverflow com questions 21217126 memcpy implementation strict aliasing以及提到的评论之一基于 C 有符号整数的攻击 我知道什么是i
  • 如何在 std::set 中选择随机元素?

    如何在数组中选择一个随机元素std set 我天真地尝试过这个 int GetSample const std set
  • FFMPEG 到 YouTube 直播

    我有一个音频流 我使用 ffmpeg 将其流式传输到 youtube live 并使用以下命令将图像作为背景 ffmpeg loop 1 i x jpg i http xxx xxx xxx xxxx 5305 stream c a aac