V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
dinggk
V2EX  ›  FFmpeg

FFMPEG 可否读取视频文件输出为 http?

  •  
  •   dinggk · Apr 19, 2018 · 7618 views
    This topic created in 2931 days ago, the information mentioned may be changed or developed.

    请教各位:这样是否就可以实现任意视频格式的点播? 比如有一个 avi 文件,http://xxx.xxx.xxx/xxx.avi 这样访问时,浏览器播放的是经由 ffmpeg 转换过的 mp4 格式。(不是 ffmpeg 把 avi 转换为 mp4 文件)

    14 replies    2018-04-21 08:07:09 +08:00
    icy37785
        1
    icy37785  
       Apr 19, 2018 via iPhone
    任意格式的点播? hls 了解一些。
    yankebupt
        2
    yankebupt  
       Apr 19, 2018
    不重新编码视频文件容器重新封装。有这个的...但是不是万能的,有些不能重封,受限于 mp4 对 codec 限制或者某些 avi 的特殊存储方式.
    GoodRainChen
        3
    GoodRainChen  
       Apr 19, 2018
    (不是 ffmpeg 把 avi 转换为 mp4 文件)

    感情你这个就是改个名?还是说在服务端的输出流去转换?
    那你这样等于每个用户去处理一遍,显然不是效率的做法。通过前端或者客户端代码去访问对应的格式才是正解。
    Caringor
        4
    Caringor  
       Apr 19, 2018 via iPhone
    FFMPEG 能向 RTMP 服务器推流,然后经服务器转发成 HLS 或者 FLV。
    又或者可以输出成 TS 实时文件流,不过依然要配合第三方服务器( Nginx、Caddy Server 等)食用。
    contmonad
        5
    contmonad  
       Apr 19, 2018 via iPhone
    HTTP 服务器里把 FFmpeg 实时转封装后的 STDOUT 按 chunked encoding 发回即可
    qiayue
        6
    qiayue  
    PRO
       Apr 20, 2018
    fMp4 了解一下
    sw0rd3n
        7
    sw0rd3n  
       Apr 20, 2018 via iPhone
    可以的,之前了解过 owncloud 有格式转换插件是 ffmpeg 应该是类似实现
    goreliu
        8
    goreliu  
       Apr 20, 2018 via Android
    任意格式的话是需要重新编码的,在线重新编码性能开销太大了,不如把所有非 mp4 的文件事先转换成 mp4,然后搭个静态 http 服务器就可以了。
    hahaDashen
        9
    hahaDashen  
       Apr 20, 2018
    如果想用 HLS 的可以参考下我的项目

    https://coding.net/u/haha_Dashen/p/Video_Server

    https://coding.net/u/haha_Dashen/p/Video_Server_Linux

    Linux 的还没做完<_<
    3IOhG7M0knRu5UlC
        10
    3IOhG7M0knRu5UlC  
       Apr 20, 2018 via Android
    输入 HTTP 可以
    但 Mp4 的不行
    expy
        11
    expy  
       Apr 20, 2018 via Android
    实时转码服务器会爆掉的。
    datou
        12
    datou  
       Apr 20, 2018
    要弄个 rtmp 服务器接受 ffmpeg 推流吧
    MonoLogueChi
        13
    MonoLogueChi  
       Apr 20, 2018 via Android
    ffmpeg + Nginx,点播的话可以把视频做成切片喂进去
    dinggk
        14
    dinggk  
    OP
       Apr 21, 2018 via Android
    试过了实时转码,证明不可行。相当卡。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5572 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 86ms · UTC 03:42 · PVG 11:42 · LAX 20:42 · JFK 23:42
    ♥ Do have faith in what you're doing.