Nic*_*Saw 4 mp4 rtsp gstreamer http-live-streaming
我尝试将 RTSP h.264 流保存到 HLS mp4 文件:
gst-launch-1.0 rtspsrc location="rtsp://....." ! rtph264depay ! h264parse ! matroskamux ! hlssink max-files=0 playlist-length=0 location="/home/user/ch%05d.mp4" playlist-location="/home/user/list.m3u8" target-duration=15
Run Code Online (Sandbox Code Playgroud)
结果 - 只有一个文件 ch00000.mp4,其中包括整个视频流(“目标持续时间”中的 3 分钟而不是 15 秒)。
如果我保存到 mpegtsmux / ts 文件 - 对于同一命令来说一切正常。
怎么了?提前致谢。
HLS 由 MPEG 传输流段组成。所以首先:matroskamux这里没有意义。你将需要mpegtsmux代替。为了表明它到底是什么,您通常会使用扩展名来命名文件.ts。它可能仍然适用于 GStreamer,因为它只是一个文件名 - 玩家可能会拒绝播放它,因为需要另一种文件格式。
例如
gst-launch-1.0 rtspsrc location="rtsp://....." ! rtph264depay ! h264parse ! \
mpegtsmux ! hlssink max-files=0 playlist-length=0 location="/home/user/ch%05d.ts" \
playlist-location="/home/user/list.m3u8" target-duration=15
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5015 次 |
| 最近记录: |