推荐一个下载流式媒体的开源库

在浏览器中用F12打开调试,找到网络一页,刷新页面,找到.M3U8的请求,并找到相关的引用项,比如

罗小黑战记2:https://www.66ss.org/e/DownSys/play/?classid=20&id=27261&pathid1=0&bf=0

里面的选项就是:

python 复制代码
M3U8_URL = "https://vip.dytt-cine.com/20251024/59985_d292974a/3000k/hls/mixed.m3u8"
OUTPUT = "output.mp4"

HEADERS = {
    "User-Agent": "Mozilla/5.0",
    # 如果你的合法资源需要 Referer / Cookie,可加
    "Referer": "https://vip.dytt-cine.com/share/d292974a12895cb3f54966cfc83576a8",
    # "Cookie": "session=xxxx",
}

如果使用ffmpeg下载,代码如下:

python 复制代码
import subprocess

M3U8_URL = "https://vip.dytt-cine.com/20251024/59985_d292974a/3000k/hls/mixed.m3u8"
OUTPUT = "output.mp4"

HEADERS = {
    "User-Agent": "Mozilla/5.0",
    # 如果你的合法资源需要 Referer / Cookie,可加
    "Referer": "https://vip.dytt-cine.com/share/d292974a12895cb3f54966cfc83576a8",
    # "Cookie": "session=xxxx",
}

def build_header_args(headers: dict):
    # ffmpeg 需要把 header 拼成字符串
    header_str = ""
    for k, v in headers.items():
        header_str += f"{k}: {v}\r\n"
    return header_str

cmd = [
    "ffmpeg",
    "-y",
    "-headers", build_header_args(HEADERS),
    "-i", M3U8_URL,
    "-c", "copy",
    "-bsf:a", "aac_adtstoasc",
    OUTPUT,
]

print("Running ffmpeg...")
subprocess.run(cmd, check=True)
print("Done:", OUTPUT)

但是这个东西实在是太慢了,

目前有开源的项目直接做了这个:

https://github.com/nilaoda/N_m3u8DL-RE

主页有详细的参数说明,那么一个命令行执行就可以了:

bash 复制代码
./N_m3u8DL-RE "https://vip.dytt-cine.com/20251024/59985_d292974a/3000k/hls/mixed.m3u8" --thread-count 6 --auto-select --binary-merge --save-name output --header "User-Agent:Mozilla/5.0" --header "Referer:https://vip.dytt-cine.com/share/d292974a12895cb3f54966cfc83576a8"

速度比ffmpeg快,而且输出更加清晰。

相关推荐
❀͜͡傀儡师2 天前
使用 Docker 一键部署 EasyNVR 视频流媒体平台
java·docker·媒体
ages_1232 天前
剪流AI智能手机对自媒体创作者的具体帮助有哪些:效率革命与全链路赋能
人工智能·智能手机·媒体
vkv55883 天前
我做了一个自媒体多平台发布工具:支持 AI 生成、账号管理、自动登录与批量发布
人工智能·媒体
开开心心就好5 天前
一键隐藏桌面图标任务栏的实用工具
人工智能·pdf·音视频·语音识别·媒体·测试覆盖率·威胁分析
AC赳赳老秦5 天前
Windows 系统 OpenClaw 执行策略报错及管理员权限设置深度解析与实操指南
运维·人工智能·python·django·自动化·媒体·openclaw
EasyDSS6 天前
企业级融媒体平台私有化视频会议系统EasyDSS私有化部署打造安全可控的校园“音视频中枢”
安全·音视频·媒体
AI服务老曹6 天前
打破品牌壁垒:基于 GB28181 与 ZLMediaKit 的全协议视频流媒体接入架构解析
架构·媒体
蚁巡信息巡查系统6 天前
网站及新媒体稿前预审与内容巡检监测工具功能有哪些?
媒体·内容运营
EasyDSS6 天前
企业级私有化视频会议系统/企业级融媒体平台EasyDSS在政务数字化全场景应用实践
媒体·政务
AI服务老曹6 天前
打破品牌孤岛:基于 GB28181 与 RTSP 的异构视频流媒体统一接入架构
架构·媒体