gpt4 book ai didi

C - 从 C 程序流式传输 FFmpeg?

转载 作者:太空宇宙 更新时间:2023-11-04 01:34:54 24 4
gpt4 key购买 nike

我想在我的 C 代码中复制一个 FFmpeg 命令行命令。具体来说,我希望能够运行:

ffmpeg -re -i video.mp4 -f mpegts udp://localhost:7777

在查看在自己的代码中使用 FFmpeg 库的人的代码时,我注意到的一件事是,他们通常有几百行代码用于类似于 FFmpeg 命令行命令的单个命令。我猜这只是因为他们在做一些非常具体的事情,因为如果我可以在我的命令行上运行那个简短的命令并得到我想要的东西,它可能只需要大约十行代码就可以在我的 C 中做同样的事情代码。这应该只需要那么多工作吧?为什么需要更多?

我很难找到有关如何使用 FFmpeg 库的流式传输功能的解释,这些解释并不过分复杂,因为它们用于非常特定的目的。谁能解释我如何为上述命令编写代码?或者至少给我一些解释如何编写这样的脚本/程序的文档?非常感谢!

编辑:我确实希望最终能从 iPhone 应用程序运行它,这样我就不能直接从我的程序中调用 FFmpeg。我需要使用 FFmpeg 使用的库。

最佳答案

FFmpeg 的内部库(libavcode、libavformat 等)具有相当复杂的代码结构。您将需要时间来了解基本的工作原理,然后您应该尝试编写一些简单的测试应用程序,只有这样您才能复制给定的命令。

quite a few tutorials如何使用 FFmeg 的库(其中一些使用过时的 API),另请查看“doc/examples”目录中的演示代码。

希望对您有所帮助!

来自评论:
检查来自最新 FFmpeg 版本的 examples/muxing.c 源。尝试提供 URL 而不是输出文件。检查 avformat_alloc_output_context2() 函数的文档/来源。然后您应该了解如何添加流媒体支持的基本概念

关于C - 从 C 程序流式传输 FFmpeg?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16225808/

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