使用GStreamer将RTSP转HLS时视频损坏无音频的问题
GStreamer 1.18.4转HLS播放异常问题
问题详情
使用GStreamer 1.18.4拉取RTSP直播摄像头流并转码为HLS格式,已成功生成playlist.m3u8和视频分段文件,但播放整个播放列表时出现以下问题:
- 移动对象(如车辆、行人)存在严重像素化
- 无音频输出
单独播放单个分段文件时,视频和音频均显示正常。
原使用命令
gst-launch-1.0 -v -e rtspsrc protocols=tcp location=rtsp://<rtsp-address>:8554/stream ! queue ! rtph264depay ! h264parse ! mpegtsmux ! hlssink location="%06d.ts" target-duration=5
排查尝试
- 切换使用
hlssink2时无任何输出,收到报错:WARNING: erroneous pipeline: could not link mpegtsmux0 to hlssink2-0 - 参考相关解决方案调整后,像素化问题仍未解决
- 使用
filesink输出的文件播放正常,推测问题出在hlssink的配置或使用方式上
疑问
当前生成的HLS播放列表存在什么问题?
更新:可行方案
以下命令可从RTSP服务器生成播放正常的HLS播放列表:
gst-launch-1.0 rtspsrc location=rtsp://<my/stream/service> ! decodebin ! x264enc ! h264parse ! hlssink2 location=./segment%05d.ts playlist-location=./playlist.m3u8
内容的提问来源于stack exchange,提问作者Oded
相关产品推荐
相关产品推荐

