使用FFmpeg转录网络直播流

原创 楚盟  2017-06-22 22:29  阅读 1,449 views 次

命令行如下:

ffmpeg -i http://www.***.com/HLS/WG_ETTV-N/index.m3u8   test.mp4

这条命令会持续不断地抓取网络视频流,然后写入当前目录cap.mp4文件,直到你按下键盘上的“Q”键才停止。

如果你就想录制一小段时间(比如60秒),可以在-i参数前加-t参数来控制,如下:

ffmpeg -t 60 -i http://www.***.com/HLS/WG_ETTV-N/index.m3u8 test.mp4

使用FFmpeg转录网络直播流1

不禁又一次暗暗佩服:FFmpeg Holy-High!使用FFmpeg转录网络直播流2

Ps. 有位同学提醒道,应该加上-c:v copy -c:a copy(另一种表达方式是-vcodec copy -acodec copy)来避免转码。吾深以为然!这对于实时采集的场景尤为重要!经测试,效果喜人,FFmpeg的CPU占用从之前的80{81884d97e9b29c62b51e96f64ab73971eea5e110197642196c83fe2aecc74b14}降到了1{81884d97e9b29c62b51e96f64ab73971eea5e110197642196c83fe2aecc74b14}!!!

完整命令行如下:

ffmpeg -i http://www.***.com/HLS/WG_ETTV-N/index.m3u8 -c:v copy -c:a copy -bsf:a aac_adtstoasc  test.mp4

直播流是HTTP协议的。FFmpeg还支持其他什么协议吗?这也简单!在控制台输入ffmpeg -protocols便一目了然了。

Supported file pro
支持输入的协议:
  async
  bluray
  cache
  concat
  crypto
  data
  file
  ftp
  gopher
  hls
  http
  httpproxy
  https
  mmsh
  mmst
  pipe
  rtp
  srtp
  subfile
  tcp
  tls
  udp
  udplite
  rtmp
  rtmpe
  rtmps
  rtmpt
  rtmpte

支持输出的协议:
  crypto
  file
  ftp
  gopher
  http
  httpproxy
  https
  icecast
  md5
  pipe
  prompeg
  rtp
  srtp
  tee
  tcp
  tls
  udp
  udplite
  rtmp
  rtmpe
  rtmps
  rtmpt
  rtmpte
本文地址:https://www.5yun.org/13646.html
关注我们:请关注一下我们的微信公众号:扫描二维码楚盟网的公众号,公众号:chubin5yun
版权声明:本文为原创文章,版权归 楚盟 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

  1. 哈哈
    哈哈 【农民】 @回复

    能转播就真的厉害了。