嵌入式 linux 上的 Gstreamer 音频问题

Gstreamer audio problem on embedded linux

我从事嵌入式工作 linux。我想播放最小 CPU 的视频。所以在我完成编译后,我尝试用 mplayer 和 gstreamer 播放视频。 Mplayer 使用 CPU 平均 %10-20。我想在 gstreamer 上获得这个功能。所以我尝试了这些命令:

1- gst-launch filesrc location=video_path.mpeg ! mpegdemux ! mpeg2dec ! autovideosink

2-gst-launch-0.10 filesrc location=video_path.mpeg ! dvddemux ! mpegvideoparse ! mpeg2dec ! xvimagesink

这些命令使用 avarage %10-20 CPU。这个号码就是我要的号码。但是音频不适用于这些命令。我尝试添加音频元素,但无法实现。

我也试过gst-launch-1.0 playbin uri=file:///video_path.mpeg。音频可以使用此命令,但 CPU 使用率很高,我不喜欢这个。

如何使用 1 或 2 个命令处理音频?

1- gst-launch filesrc location=video_path.mpeg ! mpegdemux ! mpeg2dec ! autovideosink

2-gst-launch-0.10 filesrc location=video_path.mpeg ! dvddemux ! mpegvideoparse ! mpeg2dec ! xvimagesink

通过以上两条管道,您要求 gtreamer 仅播放视频,因此您没有收到任何音频。

gst-launch filesrc location=video_path.mpeg ! mpegdemux name=demuxer demuxer. ! queue ! mpeg2dec ! autovideosink demuxer. ! queue ! mad ! audioconvert ! audioresample ! autoaudiosink

以上管道应该同时播放音频和视频。

注意:如果您支持硬件解码,那将进一步减少 CPU 使用。