gpt4 book ai didi

c++ - Gstreamer - 将命令行 gst-launch 转换为 C 代码

转载 作者:可可西里 更新时间:2023-11-01 17:17:35 25 4
gpt4 key购买 nike

我一直在使用 gst-launch 实用程序对 GStreamer 进行一些实验。但是,最终的目标是使用 GStreamer 库在我自己的应用程序上实现相同的功能。

问题是最终很难(至少对于不习惯 GStreamer API 的人来说)将我在命令行上测试的内容“移植”到 C/C++ 代码。

我可能需要移植的命令示例是:

gst-launch filesrc location="CLIP8.mp4" ! decodebin2 ! jpegenc ! multifilesink location="test%d.jpg"

什么是最“直截了当”的方式/方法来接受这样的命令并在我自己的应用程序上用 C 语言编写它。

此外,作为一个附带问题,我如何才能用在内存上完成这项工作的可能性来替换 multifilesink(我正在使用 OpenCV 对应该从视频中提取的给定图像执行一些计算)。是否可以直接解码到内存并立即使用它而不先保存到文件系统?它可以(并且应该)是顺序的,我的意思是只有在我处理完当前帧后才会移动到下一帧,这样我就不必在内存中保留数千帧。

你说呢?

最佳答案

我找到了解决方案。 GStreamer 上内置了一个函数,用于解析 gst-launch 参数并返回管道。该函数称为 gst_parse_launch 并在此处记录:http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstParse.html

我还没有测试过它,但它可能是将在命令行上测试的内容转换为 C/C++ 代码的最快解决方案。

关于c++ - Gstreamer - 将命令行 gst-launch 转换为 C 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6836899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com