標籤:
http://blog.csdn.net/Kan_Crystal/article/details/40424673
一、下載源碼
先到VLC官網將源碼下載到本機,以下連結為官網編譯操作地址:https://wiki.videolan.org/IOSCompile/
將終端開啟執行以下命令 (建議使用VPN) :
git clone git://git.videolan.org/vlc-ports/ios.git
代碼下載完成後將對代碼進行編譯:
(Release):sh compileVLCforiOS.sh -v
(Debug):sh compileVLCforiOS.sh -v -d
編譯完成後即可使用。(如果編譯不通過可將ios目錄下的compileVLCforiOS.sh中找到svn checkout http://google-api-objectivec-client.googlecode.com/svn/trunk/Source GDrive 和 cd GDrive && svn up && cd .. 和 curl -O https://www.dropbox.com/static/developers/dropbox-ios-sdk-${DROPBOXSDKVERSION}.zip 將他們注釋掉前面加#即可,然後重新編譯)
二、移植影像播放庫注意問題
找到以下庫和關聯的架構,並將它們放到我們自己的工程目錄中
注意:需要在Build Settings -》 Search Paths下設定 庫和標頭檔所在的路徑。然後編譯即可。
三、添加功能
在我們直接編譯出來的VLC中是不支援的所以我們要做以下操作:
1.找到以下路徑(ios -》 ImportedSources -》VLCKit -》MobileVLCKit -》ImportedSources -》vlc -》 extras -》 package -》ios):
用文本工具開啟build.sh,找到以下代碼的地方:
# Run configure only upon changes. if [ "${VLCROOT}/configure" -nt config.log -o \ "${THIS_SCRIPT_PATH}" -nt config.log ]; then ${VLCROOT}/configure \ --prefix="${PREFIX}" \ --host="${TARGET}" \ --with-contrib="${VLCROOT}/contrib/${TARGET}-${ARCH}" \ --disable-debug \ --enable-static \ --disable-macosx \ --disable-macosx-dialog-provider \ --disable-macosx-qtkit \
找到-disable-sout將其替換成--enable-png儲存。
然後找到以下路徑(ios -》 ImportedSources -》VLCKit -》MobileVLCKit -》ImportedSources -》vlc -》 modules -》 access_output ):
將Modules.am用文本工具開啟將裡面的內容替換為下面內容儲存。
SOURCES_access_output_dummy = dummy.c SOURCES_access_output_file = file.c SOURCES_access_output_udp = udp.c SOURCES_access_output_http = http.c bonjour.c bonjour.h SOURCES_access_output_shout = shout.c
access_output_LTLIBRARIES += \ libaccess_output_dummy_plugin.la \ libaccess_output_file_plugin.la \ libaccess_output_udp_plugin.la \ libaccess_output_http_plugin.la
#libaccess_output_udp_plugin_la_SOURCES = udp.c #libaccess_output_udp_plugin_la_LIBADD = $(SOCKET_LIBS) $(LIBPTHREAD) #access_output_LTLIBRARIES += libaccess_output_udp_plugin.la
libaccess_output_livehttp_plugin_la_SOURCES = livehttp.c libaccess_output_livehttp_plugin_la_CFLAGS = $(AM_CFLAGS) $(GCRYPT_CFLAGS) libaccess_output_livehttp_plugin_la_LIBADD = $(GCRYPT_LIBS) -lgpg-error if HAVE_GCRYPT access_output_LTLIBRARIES += libaccess_output_livehttp_plugin.la endif
然後重新編譯,執行下面命令:
(Release):sh compileVLCforiOS.sh -v -n
(Debug):sh compileVLCforiOS.sh -v -d -n
IOS VLC編譯步驟(包含移植和功能)