You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GStreamer中Autovideosink仅显示首帧,后续视频冻结的问题求助

GStreamer中Autovideosink仅显示首帧,后续视频冻结的问题求助

大家好,我最近在写一个GStreamer的小示例程序,想用appsink和appsrc把两个管道串联起来——核心需求是从appsink提取H264帧,做一些自定义处理后,再把帧推给appsrc进行播放。

目前程序看起来快能正常工作了:它能打开窗口,也能显示第一帧,但之后视频就彻底冻结住了。我明明能看到appsink一直在给我发送样本,而且我也通过push-buffer信号把这些样本推给了appsrc,可就是没法播放后续的帧,实在搞不懂哪里出问题了。

我的两个管道代码是这样的:

  • 第一个管道:从videotestsrc生成测试视频,转成H264后输出到appsink

    videotestsrc pattern=1 is-live=true ! video/x-raw,format=I420,width=640,height=480 ! x264enc byte-stream=true ! h264parse config-interval=1 ! video/x-h264,stream-format=byte-stream ! appsink
    
  • 第二个管道:从appsrc读取数据,解码后用autovideosink播放

    appsrc ! decodebin ! autovideosink 
    

我传递缓冲区的C代码片段如下:

// 处理缓冲区从appsink到appsrc的逻辑
stat...

备注:内容来源于stack exchange,提问作者JonasVautherin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 13:34:33