菜橙 2024-04-18 15:06 采纳率: 60%
浏览 7

FFmpeg硬解码保存rtsp流为MP4画面颜色通道异常

在RK3588平台下,我使用FFmpeg拉rtsp流并保存成mp4视频,执行命令ffmpeg -i rtsp://192.168.0.114:554 -c:v h264_rkmpp_decoder -c copy -t 6 output.mp4后打开视频发现图像异常。将解码器更换为h264后也是同样的问题,将命令更换为ffmpeg -i rtsp://192.168.0.114:554 -c:v h264_rkmpp_decoder -c copy -t 6 output9.mp4后问题依旧存在。

img

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-18 15:06
    关注

    引自免费微信小程序:皆我百晓生

    根据您的描述,您在RK3588平台上使用FFmpeg从RTSP流中提取H.264编码的视频,并将其保存为MP4格式时遇到颜色通道异常的问题。这可能是由于解码器与编码不匹配、硬件加速设置错误或者是输出文件配置问题导致的。

    为了排查这个问题,我们可以尝试以下几个步骤:

    1. 确保输入的RTSP流是H.264编码的,可以使用ffprobe检查:
    ffprobe -i rtsp://192.168.0.114:554 -show_streams | grep codec_name
    

    确保输出结果中的video stream codec_name为"h264"。

    1. 使用软解码器(软件实现的解码器)进行测试,排除硬件解码器问题:
    ffmpeg -i rtsp://192.168.0.114:554 -c:v h264 -c copy -t 6 output10.mp4
    
    1. 检查是否需要添加额外的色彩空间转换参数,例如可能需要添加 -vf format=yuv420p 来保证颜色空间一致:
    ffmpeg -i rtsp://192.168.0.114:554 -c:v h264_rkmpp_decoder -vf format=yuv420p -c copy -t 6 output11.mp4
    
    1. 如果以上步骤都无法解决,尝试禁用硬件加速,使用纯软件解码:
    ffmpeg -hwaccel_device off -i rtsp://192.168.0.114:554 -c:v h264_rkmpp_decoder -c copy -t 6 output12.mp4
    
    1. 如果问题依然存在,尝试在输出选项中指定像素格式,例如yuv420p
    ffmpeg -i rtsp://192.168.0.114:554 -c:v h264_rkmpp_decoder -pix_fmt yuv420p -c copy -t 6 output13.mp4
    

    如果以上所有方法都未能解决问题,可能需要进一步了解设备驱动程序和FFmpeg版本之间的兼容性问题,或者查看设备文档中关于视频解码的特定要求。此外,您可以尝试更新FFmpeg到最新版本,或者联系设备制造商的技术支持获取更多帮助。

    请按照上述步骤逐一尝试,并告诉我哪个步骤解决了您的问题,或者是否还有其他错误信息出现。这样我们才能更准确地定位问题所在。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月18日

悬赏问题

  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?