首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将连续的RTSP流保存为5-10分钟长的mp4文件

将连续的RTSP流保存为5-10分钟长的mp4文件
EN

Stack Overflow用户
提问于 2012-05-05 14:06:35
回答 3查看 51.6K关注 0票数 23

如何将流(协议rtsp、编解码h264)保存在文件(容器mp4)中?也就是说,在输入一个没完没了的流(带有闭路电视摄像头)的情况下,输出的文件以mp4格式大小为5-10分钟的记录时间。

操作系统: debian、ubuntu Software: vlc、ffmpeg (avconv)

目前使用的方案是:

代码语言:javascript
复制
cvlc rtsp://admin:admin@10.1.1.1:554/ch1-s1 --sout=file/ts:stream.ts
ffmpeg -i stream.ts -vcodec copy -f mp4 stream.mp4

但它不能连续录制视频(两次重启之间,vlc会丢失大约10秒的实时视频)。

EN

回答 3

Stack Overflow用户

发布于 2012-08-18 20:35:04

请参阅this question并回答服务器故障。简而言之,切换工具。avconv会做你想做的事。(ffmpeg变成了avconv。)

您正在寻找的功能称为分段。您的命令行将如下所示:

avconv -i rtsp://10.2.2.19/live/ch01_0 -c copy -map 0 -f segment -segment_time 300 -segment_format mp4 "capture-%03d.mp4"

票数 25
EN

Stack Overflow用户

发布于 2016-06-24 07:21:38

Alexander Garden解决方案适用于使用以下版本的ffmpep。用ffmpeg替换avconv

。/ffmpeg -i rtsp://10.2.2.19/ -c /ch01_0-c copy -map 0 -f segment -segment_time 300 -segment_format mp4 "capture-%03d.mp4“

我加入这个标题是因为FFmpeg对版本的混淆,ubuntu的分裂和快速开发。

前缀ffmpeg版本N-80023-gd55568d版权所有(c) 2000年至2016年使用--extra-cflags=-I/home/rhinchley/q10/ffmpeg_build/include --extra-ldflags=-L/home/rhinchley/q10/ffmpeg_build/lib 4.8 (Ubuntu4.8.4-2ubuntu1~14.04.1)构建的配置:--

=/ FFmpeg /rhinchley/q10/ffmpeg_build--pkg-config---extra-cflags=-I/home/rhinchley/q10/ffmpeg_build/include--extra-ldflags=-L/home/rhinchley/q10/ffmpeg_build/lib=-- --bindir=/home/rhinchley/q10/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis -enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree libavutil 55。24.100 / 55。24.100 libavcodec 57.42.100 / 57年。42.100 libavformat 57.36.100 / 57年。36.100 libavdevice 57。0.101 / 57年。0.101 libavfilter 6. 45.100 / 6. 45.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 0.101 / 2. 0.101 libpostproc 54。0.100 / 54。0.100

票数 18
EN

Stack Overflow用户

发布于 2012-05-12 19:51:48

团队工作:拆分视频源,并让两个进程交替记录时间帧。您将需要测试启动时间的可变程度,以及它的可变程度。您可能希望将进程优先级设置为实时,以减少开始时间差异。会有一些重叠,但根据我的推断,这听起来可能适合你的应用程序。示例:

代码语言:javascript
复制
p1: sRRRRRRRRRwwwwwwwwsRRRRRRRRRwwwwwwwwsRRRRRRRRR...
p2: wwwwwwwwwsRRRRRRRRRwwwwwwwwsRRRRRRRRRwwwwwwwww...

                    time -->

s: startup
R: running
w: wait
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10459338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档