2011-09-15 80 views
0

我想使用FFmpeg的libavformat提供的RTP數據結構(例如libavformat/rtpenc.h中的RTPMuxContext),但它們似乎不適用於以下安裝:通過動態鏈接使用FFmpeg(libavformat)RTP數據結構

ffmpeg version 0.8.2.git, Copyright (c) 2000-2011 the FFmpeg developers 
    built on Sep 14 2011 16:04:33 with gcc 4.2.1 (Apple Inc. build 5666) (dot 3) 
    configuration: --enable-shared --disable-mmx --arch=x86_64 
    libavutil 51. 16. 0/51. 16. 0 
    libavcodec 53. 14. 0/53. 14. 0 
    libavformat 53. 12. 0/53. 12. 0 
    libavdevice 53. 3. 0/53. 3. 0 
    libavfilter 2. 40. 0/2. 40. 0 
    libswscale 2. 1. 0/2. 1. 0 

當我看到在/ usr /本地/包括,我看到了libavformat目錄但只有幾個文件有:avformat.h,avio.h和version.h中。當然,當我嘗試包括了libavformat/rtpenc.h我得到「錯誤:了libavformat/rtpenc.h:沒有這樣的文件或目錄」

我想通過動態鏈接到FFmpeg的庫來實現這一(對LGPL合規等),但似乎不可能。

是否有我缺少的配置腳本的參數,或者我忽略的安裝後步驟?

回答

1

您可以在其ffmpeg源目錄中的現有位置中包含rtpenc.h頭文件。由於該頭文件不會生成任何目標代碼,因此生成的二進制文件不會成爲ffmpeg庫的派生工作,但是如果您希望只需在自己的代碼中寫入兼容的結構定義並使用指針/指針訪問ffmpeg結構,使用你自己的定義來定義變量。

請小心,因爲該結構不是ffmpeg的公開組件,並且可能在不同版本中發出警告時進行更改。

+0

當我將/ usr/local/include /中的頭文件符號鏈接起來時,_did_工作,因此您的方法似乎是要走的路。謝謝! – ericreeves