簡體   English   中英

在 C++ 程序中包含 ffmpeg-command

[英]include ffmpeg-command in c++ program

我有一個 C++ 程序,它從共享內存讀取渲染圖像並將它們寫入管道(mkfifo),這樣我就可以用 ffmpeg 捕獲它們並將它們作為實時視頻通過 ffserver 流式傳輸。 為了讓我的流工作,我必須分別啟動程序和 ffmpeg 命令。 我問自己是否有可能將 ffmpeg 包含到程序中並避免使用管道。

我的 ffmpeg 命令:

ffmpeg -re -f -rawvideo -s 800x600 -pix_fmt rgb24 -i myfifo http://localhost:8090/feed1.ffm

我的問題是:

將 ffmpeg 命令包含到 c++ 程序中的最佳方法是什么? 還有其他想法可以改進此解決方案嗎?

任何幫助是極大的贊賞。 提前致謝。

有兩種方式:

更容易的是使用 system(),假設您在 Linux 中,然后啟動 ffmpeg 命令。

if(system("ffmpeg -re -f -rawvideo -s 800x600 -pix_fmt rgb24 -i myfifo http://localhost:8090/feed1.ffm") != 0)
{
    cout << "ffmpeg failed..." << endl;
}

困難在於將庫包含在您的項目中,並在內部使用它: FFmpeg 可以用作庫,而不是獨立程序嗎? .

要開始查看https://trac.ffmpeg.org/wiki/Using%20libav *,它描述了如何使用 libav(ffmpeg 使用的內部庫),我建議遵循教程http://dranger。 com/ffmpeg/tutorial01.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM