2015-04-29 62 views
0

帶HLS或DASH的IIUC,我可以創建一個清單並直接從我的httpd服務段,例如python -m http.server創建HLS流的一個線程

我在/ dev/video1上有一個UVC視頻源,我正在爭取在gstreamer或ffmpeg中創建一個簡單的m3u8。

我得到儘可能:

gst-launch-1.0 -e v4l2src device=/dev/video1 ! videoconvert ! x264enc ! mpegtsmux ! hlssink max-files=5 

任何想法?

回答

1
  1. 視頻

要列出video1設備能力:

ffmpeg -f v4l2 -list_formats all -i /dev/video1

  • 音頻(ALSA例如)
  • 要列出ALSA裝置:

    arecord -L

  • HLS
  • 使用兩個輸入:

    ffmpeg -f alsa -i <alsa_device> -f v4l2 -i /dev/video1 [...] /path/to/docroot/playlist.m3u8 
    

    可以找到的各種HLS參數在FFmpeg documentation

    延伸閱讀:

    FFmpeg H.264 Encoding Guide

    FFmpeg Webcam Capture

    +0

    謝謝,雖然這不適用於我:https://ffmpeg.org/pipermail/ffmpeg-user/2015-April/026263.html – hendry

    +0

    您是否設置了編碼參數?請用確切的命令更新您的問題。播放列表大小以及它創建的分段數/它保存多長時間是不同的事情。使用'hls_flags delete_segments'來刪除舊的段。 – aergistal

    +0

    我的cmdline在這裏是日誌:http://ix.io/icO從我之前評論的ffmpeg文章鏈接。 :} – hendry

    0

    我發現選項tune=zerolatency是我所需要的從拖延。還需要弄清楚如何引入音頻。

    gst-launch-1.0 -e v4l2src device=/dev/video1 ! videoconvert ! x264enc tune=zerolatency ! mpegtsmux ! hlssink max-files=5 
    

    不幸的是我的Thinkpad X220在> 96C過熱。

    會很高興獲得ffmpeg版本。

    +0

    我添加ffmpeg的版本,但你應該更新原來的問題,包括了上述信息。 – aergistal