V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
niselover
V2EX  ›  Python

[ Python ] 求一个无缝连续播放视频和音频的方案

  •  
  •   niselover · 2023-04-03 03:45:19 +08:00 · 2203 次点击
    这是一个创建于 605 天前的主题,其中的信息可能已经有所发展或是发生改变。

    视频不长,几秒到到几分钟不等,数量很多,音频也是, 需求是能无缝衔接播放的,延迟越低越好,最好 0 延迟, 音频需求一样,

    有没有大佬能搞,base64:d2FuZ3NhbnhpYQ==

    9 条回复    2023-04-03 19:38:31 +08:00
    pluto1
        1
    pluto1  
       2023-04-03 08:24:49 +08:00 via iPhone
    视频的话看起来 hls 可以实现,音频感觉也可以,没实验过
    可以直接 python 生成 m3u8 的 list 试试
    不过这玩意儿还得客户端支持,potplayer 没问题,web 的话直接上 video.js 也可以
    pluto1
        2
    pluto1  
       2023-04-03 08:26:32 +08:00 via iPhone
    另外无缝播放跟视频本身也有挺大关系…如果整个视频是连续的话直接 ffmpeg 转一下体验会更好
    chatWell1
        3
    chatWell1  
       2023-04-03 09:16:45 +08:00
    无缝播放,提前加载、提前缓存
    NoOneNoBody
        4
    NoOneNoBody  
       2023-04-03 09:59:00 +08:00
    应该只有预读吧,编码等等参数不同,转换启动不能瞬间完成
    拼接也行,但成本太高
    实际上播放器的本地无缝播放也做不到 0 延迟
    ythpeco
        5
    ythpeco  
       2023-04-03 12:09:38 +08:00 via Android
    楼上是对的,你的思路不应该停留在“无缝加载”,而应该是“预加载”
    xieqiqiang00
        6
    xieqiqiang00  
       2023-04-03 14:35:31 +08:00
    @ythpeco 不是 hls 什么这种,预加载了,切换也是会卡的
    milzero
        7
    milzero  
       2023-04-03 15:23:30 +08:00
    这种你需要把需求说的更加的明确,播放器序列是不是固定的,音 /视的编码规则是否全部一致。
    默认序列不固定的话,可以动态的生成 m3u8. 如果不嫌麻烦的话,你甚至可以在服务端或者播放器端
    拼接文件。
    vivisidea
        8
    vivisidea  
       2023-04-03 15:37:14 +08:00
    需求不是特别明确,这些文件格式编码是什么?是一致的么?

    已有的信息,如果我来搞的话,我会考虑把片段转成统一的封装和编码,比如都转成 mp4 或者 ts
    然后直接用 ffmpeg 拼接成一个大文件
    ClericPy
        9
    ClericPy  
       2023-04-03 19:38:31 +08:00
    potplayer 就有无缝切换提前预加载... 看了需求没看懂用 python 输出成 web 还是啥...
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1372 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:38 · PVG 01:38 · LAX 09:38 · JFK 12:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.