【问题标题】:VLC HLS read input at native frame rate for real time streamingVLC HLS 以本机帧速率读取输入以进行实时流式传输
【发布时间】:2016-03-31 17:35:43
【问题描述】:

我使用 NodeJS 制作 http 实时流 (hls) 服务器。现在我有两个变体:ffmpeg 和 VLC。 使用 ffmpeg,我知道命令 -re以原生帧速率读取输入。主要用于模拟抓取设备或实时输入流(例如,从文件读取时))。我需要它来从文件中进行实时流式传输(伪直播频道)。

因此,我希望在浏览器中的视频播放器上签名“实时”,并且无法回放视频(video.js 播放器或 hls.js 库)

但是我怎么能用 VLC 做到这一点呢?也许你知道一些命令?

【问题讨论】:

    标签: video ffmpeg streaming vlc http-live-streaming


    【解决方案1】:

    但是我怎么能用 VLC 做到这一点呢?也许你知道一些命令?

    第 1 步:使用带有 VLC 的 livehttp 模块重新流式传输您的文件源

    vlc -vvv -I dummy <SOURCEADDRESS> --sout='#transcode{width=1280,height=720,fps=25,vcodec=h264,vb=4096,venc=x264{aud,profile=baseline,level=30,keyint=30,ref=1},acodec=mp3,ab=96}:std{access=livehttp{seglen=10,delsegs=false,numsegs=10,index=/path/to/your/index/prog_index.m3u8,index-url=YourUrl/fileSequence######.ts},mux=ts{use-key-frames},dst=/path/to/your/ts/files/fileSequence######.ts}'
    

    第 2 步:通过 HTML 5 发布您的 HTTP 直播流播放列表 (m3u8)

    <video>
     <source src="/path/to/your/index/prog_index.m3u8" />
    </video>
    

    这将在 HTML 5 中生成一个视频播放器,而不能在您的视频中倒带,因此是“实时”或“伪实时”,无论您想如何称呼它。

    请参阅以下有关general architecture 的问题详细信息和有关所涉及环境的longer explanation

    【讨论】:

    • 谢谢!这正是我所期望的,质量也很好。但不知道为什么 .ts 文件产生没有声音。我想我可以解决它。命令的哪一部分负责以原生帧速率读取输入?
    猜你喜欢
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    • 2014-10-10
    • 1970-01-01
    • 2022-10-18
    • 1970-01-01
    • 2018-06-16
    • 1970-01-01
    相关资源
    最近更新 更多