[rtmp @ 0x55bd3f48a0] Protocol 'rtmp' not on whitelist 'file'!

要解决RTMP协议不在白名单的问题,需要调整FFmpeg命令中的-protocol_whitelist参数,允许使用rtmp协议。以下是修改后的代码:

def send_stream(rtmp_url):
    """推流到指定地址"""
    cmd = [
        'ffmpeg',
        '-re',
        '-i', get_pipe_path('live.m3u8'),
        '-c', 'copy',
        '-f', 'flv',
        '-protocol_whitelist', 'file,rtmp',  # 允许file和rtmp协议
        rtmp_url
    ]
    subprocess.run(cmd)

修改说明:​

  1. 协议白名单调整​:将-protocol_whitelist的值从'file'改为'file,rtmp',明确允许FFmpeg使用file(读取本地HLS切片)和rtmp(推流到RTMP地址)协议。
  2. 兼容性与安全​:仅添加必要的协议,避免使用all以减少潜在的安全风险。

这样修改后,FFmpeg就能正常处理输入(HLS文件)和输出(RTMP推流)的协议,错误即可解决。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇