RTMP_ReadPacket,无法读取 RTMP 数据包头 rtmp://a.rtmp.youtube.com/live2:发生未知错误

Posted

技术标签:

【中文标题】RTMP_ReadPacket,无法读取 RTMP 数据包头 rtmp://a.rtmp.youtube.com/live2:发生未知错误【英文标题】:RTMP_ReadPacket, failed to read RTMP packet header rtmp://a.rtmp.youtube.com/live2: Unknown error occurred 【发布时间】:2018-11-03 15:25:13 【问题描述】:

这是我要运行的脚本,我认为问题出在此处:

#!/bin/bash


GIF=/home/stream1/85012216.gif
STREAM_KEY=thisisasecret
URL=rtmp://a.rtmp.youtube.com/live2
FPS=30
KEYINT=$(expr $FPS \* 3)

$FFMPEG -f alsa -ac 2 -i hw:Loopback,1,0 -fflags +genpts -r $FPS -i $GIF \
-vcodec libx264 -x264opts keyint=$KEYINT:min-keyint=$KEYINT:scenecut=-1 -b:v 1000k \
-preset veryfast -pix_fmt yuv420p -s 854x480 \
-c:a libfdk_aac -b:a 96k -ar 44100 \
-f flv $URL

错误:

ffmpeg 版本 N-92337-g8e50215b5e 版权所有 (c) 2000-2018 FFmpeg 使用 gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04) 构建的开发人员 配置: --enable-shared --enable-gpl --enable-nonfree --enable-pthreads --enable-postproc --enable-libtheora --enable-version3 --enable-libx264 --enable-libfdk-aac --disable-stripping --disable-encoder=libschroedinger --enable-librtmp - -enable-gnutls --enable-avfilter --enable-libfreetype --disable-decoder=amrnb --enable-fontconfig --disable-mips32r2 --disable-mipsdspr2 --disable-htmlpages --disable-podpages --disable- altivec --enable-libass --enable-omx --enable-omx-rpi libavutil 56. 23.100 / 56. 23.100 libavcodec 58. 36.100 / 58. 36.100 libavformat 58. 21.100 / 58. 21.100 libavdevice 58. 6.100 / 58. 6.100 libavfilter 7. 43.100 / 7. 43.100 libswscale 5. 4.100 / 5. 4.100 libswresample 3. 4.100 / 3. 4.100 libpostproc 55. 4.100 / 55. 4.100 输入流#0.0 的猜测通道布局:立体声输入#0,alsa,来自 'hw:Loopback,1,0':持续时间:N/A,开始:1541258646.286883,比特率: 1536 KB/秒 流 #0:0:音频:pcm_s16le,48000 Hz,立体声,s16,1536 kb/s 输入 #1,gif,来自“/home/stream1/85012216.gif”:持续时间:N/A, 比特率:不适用 流 #1:0:视频:gif、bgra、500x281、16.67 fps、16.67 tbr、100 tbn、100 tbc RTMP_ReadPacket,无法读取 RTMP 数据包头 rtmp://a.rtmp.youtube.com/live2:发生未知错误

系统详情:

Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:        18.04
Codename:       bionic

【问题讨论】:

【参考方案1】:

-f flv $URL 应该是 -f flv $URL/$STREAM_KEY

【讨论】:

以上是关于RTMP_ReadPacket,无法读取 RTMP 数据包头 rtmp://a.rtmp.youtube.com/live2:发生未知错误的主要内容,如果未能解决你的问题,请参考以下文章

您如何仅通过 Javascript 读取 RTMP 流?

利用FFMPEG以及EasyRTMP实现读取H.264文件推RTMP视频流的两种方式

FFmpeg5.0.1 代码读取MP4视频推送RTMP流

无法从 nginx-rtmp 获得破折号流式传输

无法使用 nginx-rtmp-module 重新流式传输

vs2015编译ffmpeg 出现错误rtmp.lib(rtmp.obj) : error LNK2001: 无法解析的外部符号 ___iob_func