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编译步骤(包含移植和截图功能)的更多相关文章

  1. iOS开发---iPhone SDK 包含哪些东西?

    第一部分: 在使用Intel芯片的Macintosh计算机开发iOS应用程序所需的全部接口.工具以及资源全都包含于iPhone SDK. 苹果公司将大部分系统接口发布在框架这种特殊的数据包.一个框架就 ...

  2. iOS: FFMpeg编译和使用问题总结

    iOS: FFmpeg编译和使用问题总结 折磨了我近一周多时间的FFmpeg库编译问题终于解决了,必须得把这一段时间来遇到过的坑全写出来.如果急着解决问题,编译最新版本的FFmpeg库请直接看第二部分 ...

  3. iOS下编译ffmpeg

    网络上搜索“ios ffmpeg 编译”,文章一大把,但我编译还是费了很大的功夫才编译成功.很多文章只是把步骤列了出来,但是每个人的系统环境,或者程序版本都不一样,结果出现各种的错误.我把自己编译过程 ...

  4. 【iOS】编译静态库

    与java和.net一样,objc也由类库的概念,不过在在objc上一般叫库,库表示程序代码集合,可以共享给其他程序使用,库是编译后的二进制文件,因此不能看到源代码,多用于一些开放sdk(如百度地图s ...

  5. 如何把iOS代码编译为Android应用

    新闻 <iPhone 6/6 Plus中国销量曝光:单月销量650万>:据iSuppli Corp.中国研究总监王阳爆料,iPhone 6和iPhone 6 Plus在国内受欢迎的情况大大 ...

  6. ios下编译opencv

    如果想要在ios下编译opencv 需要安装Cmake 这里通过homebrew 来安装cmake ios下打开终端然后先安装 homebrew :(mac 下自带ruby) ruby -e &quo ...

  7. webrtc所有平台下载编译步骤详细说明

    webrtc所有平台下载编译步骤详细说明 1.安装depot tools Windows:国外下载:https://storage.googleapis.com/chrome-infra/depot_ ...

  8. Xamarin.iOS项目编译提示Could not AOT the assembly

    Xamarin.iOS项目编译提示Could not AOT the assembly 错误信息:Could not AOT the assembly **************.dll 这个错误是 ...

  9. Linux-编译器gcc/g++编译步骤

    gcc和g++现在是gnu中最主要和最流行的c&c++编译器.g++是c++的命令,以.cpp为主:对于c语言后缀名一般为.c,这时候命令换做gcc即可.编译器是根据gcc还是g++来确定是按 ...

随机推荐

  1. Error: Cannot find module 'core-js/fn/array/values' at Function.Module._resolveFilename (module

    E:\codeBase\top605\rescue-master\server\node_modules\_log4js@1.1.1@log4js\lib\log4js.js:321 throw ne ...

  2. POJ:3273-Monthly Expense

    Monthly Expense Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 32067 Accepted: 12081 Des ...

  3. react+redux状态管理实现排序 合并多个reducer文件

    这个demo只有一个reducer 所以合并reducer这个demo用不到 ,但是我写出来这样大家以后可以用到,很好用,管理多个reducer,因为只要用到redux就不会只有一个reducer所以 ...

  4. python QQ邮件发送邮件

    # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header import ...

  5. 被relativeLayout的grivate center 折腾死了

    <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=&q ...

  6. Java - ArrayList List 等迭代集合执行移除(remove) 的正确方法

    方法1: List<String> al = new ArrayList<String>(); Iterator<String> it = al.iterator( ...

  7. Android学习记录(4)—在java中学习多线程下载的基本原理和基本用法①

    多线程下载在我们生活中非常常见,比如迅雷就是我们常用的多线程的下载工具,当然还有断点续传,断点续传我们在下一节来讲,android手机端下载文件时也可以用多线程下载,我们这里是在java中写一个测试, ...

  8. Linux编译安装与配置-MySQL(5.5,5.6)版本系(笔记)

    MySQL 5.5(5.6)后版本,需要使用cmake(Cross make , https://cmake.org/ )编译 我的环境如下: VMWare虚拟机,CentOS 5.5 x86_64( ...

  9. 通过slf4j/log4j的MDC/NDC 实现日志追踪

    在分布式系统或者较为复杂的系统中,我们希望可以看到一个客户请求的处理过程所涉及到的所有子系统\模块的处理日志. 由于slf4j/log4j基本是日志记录的标准组件,所以slf4j/log4j成为了我的 ...

  10. eclipse集成python(Pydev插件安装)

    1.下载PyDev的压缩包,解压后会有features和plugins两个文件夹,将两个文件夹的内容拷贝到eclipse对应的文件夹中,重新启动eclipse 2.配置python 2.1打开ecli ...