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