RTMP / RTSP 在线示例视频流记录与直接从视频流中抽取视频帧
引入:在涉及视频流生成与保存工作,除了自己手动循环播放视频生成视频流之外,还可以借助现在有的一些公开视频流。
一、在线示例视频流记录
- RTMP类
- 广西卫视: rtmp://58.200.131.2:1935/livetv/gxtv
- 湖南卫视: rtmp://58.200.131.2:1935/livetv/hunantv
- 广东卫视: rtmp://58.200.131.2:1935/livetv/gdtv
- 东方卫视: rtmp://58.200.131.2:1935/livetv/dftv
- 兵团卫视: rtmp://58.200.131.2:1935/livetv/bttv
- 东南卫视: rtmp://58.200.131.2:1935/livetv/dntv
- RTSP类
-
一个动画: rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov
二、从视频流中获取图像帧
linux命令:
- ffmpeg -i rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov -r 1/20 -f image2 ./%03d_rtsp.jpg
命令解释:
- -i “rtmp…/rtsp…” :后接地址,地址最好用双引号括起来,如果是rtmp直播流,双引号里,后面要追加【 live=1】,注意有空格
- -y :如果提示文件已经存在,自动执行y,对已存在文件进行覆盖
- -t 0.001 :开始截图时间,seconds or in
hh:mm:ss[.xxx] 如果截图开始时间越接近篇尾,所花费的时间就会越长
- -vframes :截图帧数
- -s :图片宽高比,设置长宽像素比之后,像素可能会比较低
- -ss 1 :延迟1秒后开始,有一个需要引起注意的点,如果-ss 直接放在ffmpeg后,那么截图的处理时间会极大缩短,直接跳转到延时n秒后的视频帧,进行截取图像
- -f image2 :以图片格式保存
- -r 1 :帧数,此处为截取一帧, 如果是 -r 1/20 那么就是每
- b-%3d.jpg :格式化文件命名,会生成 b-001.jpg,b-002.jpg 等
- 备注 :