精华内容
下载资源
问答
  • libvlc源码

    2018-04-10 16:52:31
    libvlc源码,可以在Ubuntu中编译通过。Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:06:37 UTC 2016 i686 i686 i686 GNU/Linux
  • 该项目包装了libvlc,这是VLC Media Player之后的开源多媒体库。 此屏幕快照描述了在Windows 10上运行的RB-libvlc演示 概要 有两种主要的操作模式:使用类播放没有GUI的媒体和提供GUI的 。 libvlc还通过单独的接口...
  • nim-libvlc:Nim与libvlc的绑定
  • libvlc-源码编译流程记录

    千次阅读 2019-06-28 09:29:18
    如果库不再默认目录,也不在vlc源码所在目录,为了./configure找到这些库,需要使用PKG_CONFIG_PATH去指定这些库的路径。  有些特性在默认情况下是禁用的,如果需要它们,则必须使用configure选项来强制编译它们...

    一、 安装编译vlc的必要工具
          VLC需要C11编译器以及开发工具链,建议使用高于4.9版本的gcc,另外clang/LLVM也是可以的。如果你是从git仓库构建,你还需要gnu构建系统即 autotools(autoconf,automake,libtol,gettext)来设置Makefile.并确保这些工具是最新且可用

    sudo apt-get install git build-essential pkg-config libtool automake autopoint gettext flex bison

    二、获取vlc源码
          可以使用ftp获取官方发布的正式版本,也可以使用git获取。如果使用的git开发版本,首先需要引导源代码树,如果autotool过时或者丢失 ./bootstrap会失败

    git clone git://git.videolan.org/vlc.git
    cd vlc
    ./bootstrap

         如果你下载的是官方发布版本,提取文件,然后进入源码目录

    wget ftp://ftp.videolan.org/pub/videolan/vlc/2.2.4/vlc-2.2.4.tar.xz
    tar xvJf vlc-2.2.4.tar.xz
    cd vlc-2.2.4

    三、  获取,安装第三方库
          现在可以配置VLC了,但是必须先确保所有的依赖关系都已经安装就绪。必须安装并启用所需的所有第三方库。如果未能安装所需的库,则可能导致vlc应用程序出现错误。完整的第三方库列表可以从https://wiki.videolan.org/Contrib_Status/获取

    sudo apt-get -y install libvorbis-dev libogg-dev libtheora-dev speex libspeex-dev flac libflac-dev \
      x264 libx264-dev liba52-0.7.4-dev mpeg2dec libmpeg2-4-dev faad libfaad-dev faac libfaac-dev \
      lame libmp3lame-dev ffmpeg libavdevice-dev libmad0 libmad0-dev  liboil0.3 libschroedinger-dev \
      libdca-dev twolame libtwolame-dev libmpcdec-dev libvorbisidec1 libvorbisidec-dev libass-dev   \
      libebml-dev libmatroska-dev libdvbpsi-dev libmodplug1 libmodplug-dev libshout3 libshout3-dev \
      libdvdread4 libdvdnav4 libdvdnav-dev livemedia-utils liblivemedia-dev libcddb2 libcddb2-dev libcdio-dev \
      libcdio-utils vcdimager libvcdinfo0 libvcdinfo-dev libgpg-error0 libgpg-error-dev libgcrypt11 libgcrypt11-dev \
      gnutls-bin libgnutls26 libgnutls-dev libdap-dev libxml2 libxml2-dev \
      libjpeg8 libtiff-dev libsdl1.2-dev libsdl-image1.2 libsdl-image1.2-dev libc-bin gettext libfreetype6 libfreetype6-dev \
      libfribidi-dev libfribidi0 zlib1g zlib1g-dev libtag1-dev libcaca0 libslang2-dev libcaca-dev caca-utils  \
      libportaudio2 libupnp-dev libexpat1 libexpat1-dev yasm libxcb-xv0 libxcb-xv0-dev \
      libx11-xcb1 libx11-xcb-dev libswscale-dev lua5.2 libxcb-composite0-dev

            有一些非常重要的依赖关系如下:

    1. gettext:国际化支持;
    2. libdvbpsi是MPEG-TS支持;
    3. libmad:是MP3音频解码;
    4. libmpeg2:MPEG1和MPEG2视频支持;
    5. ffmpeg或者libav(libavcodec,libavformat,libpostproc,libswscale,以及libavio)对MPEG4和大多数音频和视频解码;
    6. liba52:杜比声音;
    7. dvdread:用于dvd回放,live555回放rtsp流。
    8. 对于音频输出,可能需要alsa-lib(linux)
    9. 对于视频输出通常需要XCB、XVideo或者OPenGL/GLX。

            需要安装这些库来编译VLC,在Debian/Ubuntu上,这些库的包名一般以-dev结尾。如果所使用的linux发行版未提供这些库,最好静态编译并链接到VLC.

    四、配置VLC
         ./configure用于检测系统是否能够编译VLC,您还可以选择构建中的特性,使用./configure --help会列出各种构建选项

    ./configure

          对大多数用户来说,./configure不需要任何命令行选项。默认情况下会根据检测到的可用库自动选择要编译的特性。如果库不再默认目录,也不在vlc源码所在目录,为了./configure找到这些库,需要使用PKG_CONFIG_PATH去指定这些库的路径。

          有些特性在默认情况下是禁用的,如果需要它们,则必须使用configure选项来强制编译它们。您可以在./configure --help中搜索disable来找到默认被禁用的特性列表。

    默认禁用选项:

    • --with-libfuzzer=DIR                                 从DIR指定目录中使用libFuzzer库
    • --enable-debug                                       使能运行时断言即显示日志
    • --enable-gprof                                       使用gprof配置文件
    • --enable-cprof                                       使用cprof配置文件
    • --enable-coverage                                    构建测试版
    • --with-sanitizer=(address/memory/undefined/thread)   使用sanitizer构建
    • --enable-run-as-root                                 允许允许vlc时候使用root权限
    • --enable-wma-fixed                                   libwma-fixed,模块
    • --enable-omxil                                       openmax il 编码器模块
    • --enable-merge-ffmpeg                                合并FFmpeg-based插件
    • --enable-tremor                                      Tremor解码支持
    • --enable-bpg                                         BPG支持
    • --enable-opensles                                    Android OpenSL ES audio module (default disabled)
    • --enable-minimal-macosx                              Mac OS X 最小化支持
    • --enable-lirc                                        lirc 支持
    • --enable-update-check                                检测升级系统

           如果你想把VLC安装在其他目录,可从https://wiki.videolan.org/Configure/ 获取典型的configure

    ./configure --prefix=/path/to/install/folder/

         拟采用https://wiki.videolan.org/Configure/推荐的linux GIT的示例配置

    sudo ./configure PKG_CONFIG_PATH=/home/gy/Qt5.12.0/5.12.0/gcc_64/lib/pkgconfig --enable-x11 --enable-xvideo --disable-gtk --enable-sdl --enable-ffmpeg --with-ffmpeg-mp3lame --enable-mad --enable-libdvbpsi --enable-a52 --enable-dca --enable-libmpeg2 --enable-dvdnav --enable-faad --enable-vorbis --enable-ogg --enable-theora --enable-faac--enable-mkv --enable-freetype --enable-fribidi --enable-speex --enable-flac --enable-livedotcom --with-livedotcom-tree=/usr/lib/live --enable-caca --enable-skins --enable-skins2 --enable-alsa --disable-kde--enable-wxwindows   --enable-ncurses --enable-asa --enable-debug

    中间遇到的错误以及对应解决办法:

    #报错:
        configure: error:  No package 'xcb-xkb' found. Pass --disable-xcb to skip X11 support.
    #解决:
        sudo apt-get install libxcb-xkb-dev 
    #报错:
         error: No package 'Qt5Svg' found.
    #解决:
        sudo apt-get install libxcb-xkb-dev 
    #报错:
         configure: error: Could not find lua. Lua is needed for some interfaces (rc, telnet, http) as well as many other custom scripts. Use --disable-lua to ignore this error.
    #解决:
        sudo apt-get install lua5.2-dev
    #报错:
         configure: error: Could not find the LUA byte compiler.
    #解决:
        sudo apt-get install lua5.2

    五、编译 安装

    #编译
    make
    #安装 如果不需要安装vlc,可以在vlc所在目录直接在命令行中运行vlc
    sudo make install
    #如果后来你想要卸载vlc,你可在保持构建树不变的情况下运行
    sudo make uninstall
    ######删除编译产生的中间文件
    sudo make clean

    编译安装过程中出现的问题:

    错误:Making all in share
    make[2]: 进入目录“/home/gy/vlc/vlc/share”
      LUAC   lua/extensions/VLSub.luac
    luac: lua/extensions/VLSub.lua:1100: unexpected symbol near `#'
    解决:卸载lua50 重新安装lua5.1以上版本即可


     

    展开全文
  • 该存储库用于向.NET开发人员展示libvlc及其功能。 它还包含用于nuget打包/部署的打包工具和文件。 换句话说:这与从VideoLAN网站以NuGet包下载文件的方式一样,您可以将其添加到.NET项目中,以便将其复制到输出目录...
  • 适用于Android的LibVLC 该存储库包含用于将LibVLC构建为AAR包的Gradle配置。 建造 您将需要安装JDK 1.7+。 以下说明适用于OS X和Homebrew。 安装Android SDK和NDK。 $ brew install android-sdk $ brew install...
  • Pharo-LibVLC 将FFI绑定到 安装 安装VLC 3.xx 在Pharo 8图片中 Metacello new baseline: ' VLC ' ; repository: ' github://badetitou/Pharo-LibVLC ' ; load. 您应该能够执行VLCLibrary uniqueInstance ...
  • 最简单的基于libVLC的示例 Simplest libVLC Example 雷霄骅 Lei Xiaohua leixiaohua1020@126.com 中国传媒大学/数字电视技术 Communication University of China / Digital TV Technology ... 本工程是包含了一些基于...
  • 一、VLC和LibVLC关系 VLC属于Video LAN开源项目组织中的一款全开源的流媒体服务器和多媒体播放器。作为流媒体服务器,VLC跨平台,支持多操作系统和计算机体系结构;作为多媒体播放器,VLC可以播放多种格式的媒体...

    一、VLC和LibVLC关系
      VLC属于Video LAN开源项目组织中的一款全开源的流媒体服务器和多媒体播放器。作为流媒体服务器,VLC跨平台,支持多操作系统和计算机体系结构;作为多媒体播放器,VLC可以播放多种格式的媒体文件。主要包有:WMV、ASF、MPG、MP、AVI、H.264等多种常见媒体格式。
       LibVLC是VLC的核心部分。它是一个提供接口的库,比如给VLC提供些功能接口:流的接入,音频和视频输出,插件管理,线程系统。所有的LibVLC源码位于src\及其子目录。
       那么两者具体是什么关系呢?客官请不要急,这里有图。

     
            libvlc在vlc软件架构中的位置
    总体来说,LibVLC和VLC是基础核心与扩展应用的关系,关于VLC的所有应用都是基于LibVLC提供的API接口而写,VLC播放器的新添加的组建也要封装成LibVLC提供的接口形式不然无法供上层APP调用。
    二、下载LibVLC源码、编译、安装
    1、在官方网站 https://wiki.videolan.org/LibVLC/ 有下载编译说明(建议读者凡是使用第三方库、源码、文档一定要去官网查找资料,博客,Google、度娘只能作为参考)
    2、Android版本的编译、安装doc https://bitbucket.org/edwardcw/libvlc-android-sample 以下是截图说明。
    这里写图片描述
    3、Android端编译libvlc-android-sample需要预先做的准备工作: 升级Linux为最新版本 ; 安装Android-ndk-r10e ; 安装Android-SDK;安装Android-studio;其他在编译的时候必须的编译工具;
    4、下载VLC源码,并编译生成最新的liblvc.aar ,(编译VLC源码 拷贝libvlc/build/outputs/aar/libvlc-3.0.0.aar 目录下这个文件并重新命名为libvlc.aar)
    5、借助于git工具(Git Hub Shell命令行) 执行命令 git clone https://bitbucket.org/edwardcw/libvlc-android-sample.git 即可获得命令。若不知如何使用git下载工具可以从下面三个地方下载libvlc-android-sample源代码。
    下载地址 https://github.com/Guofengpu/libvlc-android-sample
    6、获取到libvlc-android-sample源代码后 必须要用Android-studio IDE打开,使用gradle构建、编译既可使用(注意要将libvlc.aar拷贝到工程目录下),以下是经过验证的能够正常使用的libvlc-android-sample 下载地址
    https://github.com/Guofengpu/libvlc-android-full/

    展开全文
  • 一个围绕 libvlc 的 Qt 库 Qt5 QtVlc 仅适用于 Qt5。 请注意,如果 libvlc 插件缓存已过时并尝试枚举插件,则任何使用 libvlc 的 Qt5 应用程序都可能在启动时崩溃。 这是由 libvlc 尝试加载 Qt4 接口插件引起的,...
  • 用于libVLC和高级媒体播放器界面的绑定。 该软件包对于通过提供的播放器界面向应用程序添加多媒体功能很有用。 它依赖于Go模块以镜像每个受支持的主要版本。 可在和上找到v3的文档,该文档实现了libVLC 3.X的...
  • libVLC 的预编译二进制文件:vlc-sdk.7z(仅包含 armeabi-v7a) 指定 DroidSansFallback.ttf 作为中文字幕的默认字体 编译环境 操作系统 Linux mark-VirtualBox 3.2.0-29-generic-pae #46-Ubuntu SMP Fri Jul 27 17...
  • 最近在准备看深度学习的算法,翻起两年前的博客,发现有不少的留言和私信在问LibVLC的交叉编译、增加录制函数相关的问题,上次的博客是把方法思路说了,既然大家问代码,那就把具体源码分享一下吧。 在LibVLC中增加...

    最近在准备看深度学习的算法,翻起两年前的博客,发现有不少的留言和私信在问LibVLC的交叉编译、增加录制函数相关的问题,上次的博客是把方法思路说了,既然大家问代码,那就把具体源码分享一下吧。

    在LibVLC中增加录制的接口,需要修改3个文件:

    1、在include\vlc\libvlc_media_player.h文件中声明为LIBVLC_API类型的接口函数。找到libvlc_media_player_stop,在后面加两行。

    /**
     * Stop (no effect if there is no media)
     *
     * \param p_mi the Media Player
     */
    LIBVLC_API void libvlc_media_player_stop ( libvlc_media_player_t *p_mi );
    
    /add by AVSuper/
    LIBVLC_API int libvlc_media_player_recorder_start ( libvlc_media_player_t *p_mi, const char *pFileName );
    LIBVLC_API int libvlc_media_player_recorder_stop ( libvlc_media_player_t *p_mi);
    ///
    

    2、还需要将接口在lib/libvlc.sym 文件中添加,否则make编译时会在连接进动态库时变为静态,不可被外部调用。一样的,找到libvlc_media_player_stop在后面加两行。

    libvlc_media_player_stop
    libvlc_media_player_recorder_start
    libvlc_media_player_recorder_stop
    

    3、接下来,在lib\media_player.c增加实际的代码,看好了,就是这段(其实也就几行代码)。

    int libvlc_media_player_recorder_start( libvlc_media_player_t *p_mi, const char *pFileName )
    {
        input_thread_t *p_input = libvlc_get_input_thread( p_mi );  
        if(p_input == NULL) return -1;    
    
    	var_CreateGetString(p_input, "input-record-path");
        var_SetString( p_input, "input-record-path", pFileName );
    	
    /*	var_CreateGetString(p_input, "sout-record-dst-prefix");
        var_SetString( p_input, "sout-record-dst-prefix", pFileName );  
    */    
    	var_SetBool( p_input, "record", true);  
        
    	vlc_object_release(p_input);  
        return 0;
    }
    
    int libvlc_media_player_recorder_stop( libvlc_media_player_t *p_mi )  
    {  
        input_thread_t *p_input_thread;  
      
        p_input_thread = libvlc_get_input_thread( p_mi );  
        if( !p_input_thread ) return -1;  
      
        var_SetBool( p_input_thread, "record", false );  
      
        vlc_object_release( p_input_thread );  
        return 0;  
    }
    

    嗯,然后编译吧。。。

    VLC的功能还是很强大的,接口封装得也很好,不过有几个问题是它一直没解决的,比如libvlc _media_player_stop调用的死锁问题,到现在这么多版本了都没解决。所以近期就没再继续研究vlc了,用ffmpeg重新做了完整的播放、录制等接口。大家有兴趣可以探讨沟通。

    好了,你们继续聊,我去研究深度学习算法了,哈

    展开全文
  • LibVLCSharp 回购已移动 接受PR的官方镜像
  • 适用于 Android 的 LibVLC 此存储库包含用于将 LibVLC 构建为 AAR 包的 Gradle 配置。 建造 您将需要安装 JDK 1.7+ 和 Ant。 以下说明适用于 OS X 和 Homebrew。 安装 Android SDK 和 NDK。 $ brew install ...
  • 就像,这是有关VLC和LibVLC的很棒资源的列表。 内容 文件 一切开始。 -LibVLC引擎的文档。 C API。 维基-对这里伟大的信息很多。 错误跟踪器-最近从Trac中移出,其中包含许多有关错误和功能请求的有价值的信息。...
  • 一、安装OSX虚拟机 二、安装OSX苹果系统&优化性能 三、准备编译环境 四、编译过程中遇到的问题 五、libVLC编译脚本解析

    一、安装虚拟机

    虚拟机使用的是VMware® Workstation 12 Pro  12.1.0 build-3272444

    参考:http://jingyan.baidu.com/article/3f16e003eac66e2591c103e0.html

    虚拟机设置

    内存 4G

    处理器数量2每个处理器核心数量2,虚拟化引擎中勾上“虚拟化Intel VT-x 或AMD-V/RVI(V)”和“虚拟化CPU性能计数器”

    硬盘60G,原先分配40G,在升级系统和XCode版本后占用较大空间,建议60G

    CD/DVD(SATA):手动选择“使用ISO映像文件”,浏览打开iso文件

    网络适配器:选择桥接模式,这样可自动分配局域网IP

    显示器:选择“加速3D图形”,图形内存768MB

    遇到的问题:

    1、报错:

    解决办法:用记事本打开对应的虚拟机配置文件vmx,添加一句smc.version = "0"

    2、安装VMWare Tools:需要在osx系统里“推出光盘”,然后在虚拟机VMWare Tools的设置里,重新加载iso(也可能osx自动弹出界面安装)

    http://blog.itpub.net/25990299/viewspace-1245320/

    二、安装osx苹果Mac系统

    1、安装后基本不能使用,性能太差,去掉不必要的设置,可以提升性能,

    1)参考:http://www.3lian.com/edu/2015/05-05/209925.html

    2)请装beamoff!详见:https://github.com/JasF/beamoff.git

    CSDN下载:http://download.csdn.net/download/bytige/8371825

     本站下载:http://files.cnblogs.com/files/yipu/beamoff.zip

    使用方法:系统偏好设置 - 用户与群组 - 选中你自己的用户名 - 选择 “登录项” 选项卡 - 点 + 号

    找到你下载的beamoff.app

    2、对于不习惯OSX中的Command键操作的地方更换为Windows熟悉的Control键方法:

    系统偏好设置->键盘->修饰键:将Control和Command键互换


    三、准备编译环境

    相关参考链接

    a、libVLC和VLC源码的区别

    http://blog.csdn.net/buyicn/article/details/22756141

    b、libVLC即VLCKit和VLC编译方式

    libVLC参考:https://wiki.videolan.org/VLCKit/

    VLC参考:https://wiki.videolan.org/IOSCompile/

    四、遇到的问题

    1、编译libVLC时报错(SDK找不到、CoreText等系统库找不到、其它configure、build阶段的错误)

    <strong>a、SDK找不到</strong>
    sh-3.2# sh ./buildMobileVLCKit.sh 
    xcrun: error: SDK "iphoneos" cannot be located
    xcrun: error: SDK "iphoneos" cannot be located
    xcrun: error: unable to lookup item 'SDKVersion' in SDK 'iphoneos'
    
    

    <strong>b、CoreText系统库找不到等等</strong>
    configure: error: CoreText support requested but libcoretext not found
    

    原因是:xcode版本不对,编译环境设置不对、翻墙代理不给力等等。

    1、系统和XCode版本升级到最新。虚拟机中OSX系统版本是10.10,之后自动更新到osx10.10.5,但是下载的xcode是最新的xcode beta版本,因为系统无法自动升级到osx10.11,所以无法使用最新的xcode。在这种环境上编译多次,并且手动修改buildMobileKit.sh和extras\packages\ios\build.sh文件,同样出现问题。所以改变思路,将操作系统升级到最新的osx10.11.4,并将xcode升级到Version 7.3 (7D175)。


    备忘:附旧版本下载办法:到官网https://developer.apple.com/downloads/上下载与osx10.10匹配的xcode版本v6.4

    2、无需手动修改环境变量。

           有的同仁的经验文档中写道,需要修改环境变量,将MobileVLCKit\ImportedSources\vlc\extras\tools\build\bin目录增加到$PATH中,其实不需要。至少现在的新版本中编译脚本不需要了。在MobileVLCKit\ImportedSources\vlc\extras\package\ios\build.sh中已经将该路径增加到环境变量中了。

           另外:像MobileVLCKit\ImportedSources\vlc\extras\tools中的ant、autoconf、automake、gas、libtool、m4、pkgconfig等工具以及MobileVLCKit\ImportedSources\vlc\contrib\tarballs下载的库不要手动安装,由脚本自动安装到指定目录。比如extras下的tools均安装到tools\build目录下了,在编译vlc时,会引用该目录下的所有工具。

    如果无法下载,可以到我的下载中心下载:

    tarballs库:http://download.csdn.net/detail/yagerfgcs/9521269

    extras\tools库:http://download.csdn.net/detail/yagerfgcs/9521425

    3、推荐旗鱼vpn代理。使用给osx设置vpn代理,直接翻墙下载对应文件,如果下载不了,更换另一个vpn地址再尝试。最好使用美国的代理,我编译过程中遇到使用香港、台湾代理无法下载的情况,更换为美国的就可以了。尽量不要手动通过浏览器下载,不然会出现SHA512SUMS校验码问题,参考http://www.cnblogs.com/zjjcy/p/3858759.html

    附上OSX下如何使用旗鱼vpn的链接:http://www.nb195.com/vpnjc/13.html

    4、找不到install-ios-iPhoneOS目录

    ./buildMobileVLCKit.sh: line 44: pushd: MobileVLCKit/ImportedSources/vlc/install-ios-iPhoneOS: No such file or directory
    原因:在MobileVLCKit\ImportedSources\vlc\extras\package\ios\build.sh脚本中会configure、make vlc的源码,在此过程中会在vlc根目录下创建install-ios-iPhoneOS和install-ios-iPhoneSimlator。然后在MobileVLCKit\buildMobilekit.sh脚本中会打开该目录。所以找不到该目录的原因有两种:1、使用sh ./buildMobileKit.sh -f命令同时编译Device、Simulator、static framework。不能仅编译模拟器的版本,否则install-ios-iPhoneOS目录没创建。 2、执行build.sh过程失败了,更换个美国的vpn再试试,参考上一条vpn代理。

    5、build.sh中make失败,报libaccess_archive_plugin.la错误。

    + make -j3
    grep: /Users/yager/vlc_ios/vlc/MobileVLCKit/ImportedSources/vlc/extras/tools/build/lib/liblzma.la: No such file or directory
    sed: /Users/yager/vlc_ios/vlc/MobileVLCKit/ImportedSources/vlc/extras/tools/build/lib/liblzma.la: No such file or directory
    libtool: link: `/Users/yager/vlc_ios/vlc/MobileVLCKit/ImportedSources/vlc/extras/tools/build/lib/liblzma.la' is not a valid libtool archive
    make[4]: *** [libaccess_archive_plugin.la] Error 1
    make[4]: *** Waiting for unfinished jobs....
    make[3]: *** [all-recursive] Error 1
    make[2]: *** [all] Error 2
    make[1]: *** [all-recursive] Error 1

    五、libVLC编译脚本解析

    1、脚本的调用顺序

    a、sh -x ./buildMobileVLCKit.sh -f -->解析命令参数->git下载vlc源码->调用buildMobileKit函数编译MobileKit->根据参数判断编译模拟器版本、真机版本,调用vlc/extras/package/ios目录下的build.sh脚本(build.sh脚本单独详述)->调用build_universal_static_lib函数编译静态库->(展开静态库调用方式:清理头文件,创建install-ios-$OSSTYLE文件夹,为后续拷贝做准备->遍历真机和模拟器编译中生成的install-ios-"$OSSTYLE"OS和install-ios-"$OSSTYLE"Simulator目录,准备拷贝所有的.a文件到刚才创建的install-ios-"$OSSTYLE"文件夹中。)->如果需要编译静态framework,则执行buildxcodeproj命令将对应文件打包到framework中。

    b、build.sh的执行过程:解析命令参数->Building libvlc for Apple embedded OS style ->配置SDK版本路径->配置BUILDDIR路径为"${VLCROOT}/build-ios-${OSSTYLE}${PLATFORM}/${ACTUAL_ARCH}"->添加环境变量${VLCROOT}/extras/tools/build/bin:${VLCROOT}/contrib/${TARGET}/bin,这样就屏蔽了自带的环境变量中自带的autoconfig等工具对本次编译的影响。->Building tools。打开extras/tools工具,make编译所有额外工具->Building contrib for iOS->打开"${VLCROOT}/contrib/${OSSTYLE}${PLATFORM}-${ARCH}"目录执行../bootstrap命令->make -j3->Bootstraping vlc->配置vlc->Building libvlc:make libVLC->Installing libvlc

    2、参考我的下载链接中libVLC编译成功的shell脚本执行过程,作为参考项,可以对比编译中出现的错误

    下载链接:http://download.csdn.net/detail/yagerfgcs/9510588

    200-100-1-190:~ yager$ su root
    Password:
    sh-3.2# cd VLCKit/
    sh-3.2# ls
    .DS_Store			MobileVLCKit.podspec
    .git				MobileVLCKit.xcodeproj
    .gitignore			MobileVLCKit_Prefix.pch
    CONTRIBUTING.md			NEWS
    COPYING				Packaging
    Configure.sh			Pre-Compile.sh
    DynamicMobileVLCKit		README.md
    DynamicTVVLCKit			Resources
    Examples_OSX			Sources
    Examples_iOS			StaticLibVLC
    Headers				TVVLCKit
    Makefile			VLCKit-Info.plist
    MobileVLCKit			VLCKit.xcodeproj
    MobileVLCKit-dynamic		VLC_Prefix.pch
    MobileVLCKit-prod.podspec	buildMobileVLCKit.sh
    MobileVLCKit-unstable.podspec
    sh-3.2# sh -x ./buildMobileVLCKit.sh -f
    + set -e
    + BUILD_DEVICE=yes
    + BUILD_SIMULATOR=yes
    + BUILD_STATIC_FRAMEWORK=no
    ++ xcrun --sdk iphoneos --show-sdk-version
    + SDK=9.3
    + SDK_MIN=7.0
    + VERBOSE=no
    + CONFIGURATION=Release
    + NONETWORK=no
    + SKIPLIBVLCCOMPILATION=no
    + SCARY=yes
    + TVOS=no
    + BITCODE=no
    + TESTEDHASH=ac4658d2
    + getopts hvwsfbdntlk: OPTION
    + case $OPTION in
    + BUILD_DEVICE=yes
    + BUILD_SIMULATOR=yes
    + BUILD_STATIC_FRAMEWORK=yes
    + getopts hvwsfbdntlk: OPTION
    + shift 1
    + out=/dev/null
    + '[' no = yes ']'
    + '[' x '!=' x ']'
    + spushd .
    + pushd .
    ++ pwd
    + aspen_root_dir=/Users/yager/VLCKit
    
    ......................................................省略.........................................................................
    
    $(PROJECT_DIR)/MobileVLCKit/ImportedSources/vlc/install-ios-iPhone/plugins/libaccess_concat_plugin.a $(PROJECT_DIR)/MobileVLCKit/ImportedSources/vlc/install-ios-iPhone/plugins/libaccess_archive_plugin.a $(PROJECT_DIR)/MobileVLCKit/ImportedSources/vlc/install-ios-iPhone/plugins/liba52tospdif_plugin.a $(PROJECT_DIR)/MobileVLCKit/ImportedSources/vlc/install-ios-iPhone/plugins/liba52_plugin.a '
    + spopd
    + popd
    + info 'all done'
    + local 'green=\033[1;32m'
    + local 'normal=\033[0m'
    + echo '[\033[1;32minfo\033[0m] all done'
    [info] all done
    + '[' yes '!=' no ']'
    + info 'Building static MobileVLCKit.framework'
    + local 'green=\033[1;32m'
    + local 'normal=\033[0m'
    + echo '[\033[1;32minfo\033[0m] Building static MobileVLCKit.framework'
    [info] Building static MobileVLCKit.framework
    + buildxcodeproj MobileVLCKit MobileVLCKit iphoneos
    + local target=MobileVLCKit
    + local PLATFORM=iphoneos
    + info 'Building MobileVLCKit (MobileVLCKit, Release, iphoneos)'
    + local 'green=\033[1;32m'
    + local 'normal=\033[0m'
    + echo '[\033[1;32minfo\033[0m] Building MobileVLCKit (MobileVLCKit, Release, iphoneos)'
    [info] Building MobileVLCKit (MobileVLCKit, Release, iphoneos)
    + local architectures=
    + '[' iphoneos = iphonesimulator ']'
    + architectures='armv7 armv7s arm64'
    + local defs=
    + '[' yes = no ']'
    + xcodebuild -project MobileVLCKit.xcodeproj -target MobileVLCKit -sdk iphoneos9.3 -configuration Release 'ARCHS=armv7 armv7s arm64' IPHONEOS_DEPLOYMENT_TARGET=7.0 GCC_PREPROCESSOR_DEFINITIONS=
    2016-05-05 10:17:47.545 xcodebuild[34742:870095] Failed to locate a valid instance of CoreSimulatorService in the bootstrap.  Adding it now.
    + buildxcodeproj MobileVLCKit MobileVLCKit iphonesimulator
    + local target=MobileVLCKit
    + local PLATFORM=iphonesimulator
    + info 'Building MobileVLCKit (MobileVLCKit, Release, iphonesimulator)'
    + local 'green=\033[1;32m'
    + local 'normal=\033[0m'
    + echo '[\033[1;32minfo\033[0m] Building MobileVLCKit (MobileVLCKit, Release, iphonesimulator)'
    [info] Building MobileVLCKit (MobileVLCKit, Release, iphonesimulator)
    + local architectures=
    + '[' iphonesimulator = iphonesimulator ']'
    + architectures='i386 x86_64'
    + local defs=
    + '[' yes = no ']'
    + xcodebuild -project MobileVLCKit.xcodeproj -target MobileVLCKit -sdk iphonesimulator9.3 -configuration Release 'ARCHS=i386 x86_64' IPHONEOS_DEPLOYMENT_TARGET=7.0 GCC_PREPROCESSOR_DEFINITIONS=
    + spushd build
    + pushd build
    + rm -rf MobileVLCKit.framework
    + mkdir MobileVLCKit.framework
    + lipo -create Release-iphoneos/libMobileVLCKit.a Release-iphonesimulator/libMobileVLCKit.a -o MobileVLCKit.framework/MobileVLCKit
    + chmod a+x MobileVLCKit.framework/MobileVLCKit
    + cp -pr Release-iphoneos/MobileVLCKit MobileVLCKit.framework/Headers
    + spopd
    + popd
    + info 'Build of static MobileVLCKit.framework completed'
    + local 'green=\033[1;32m'
    + local 'normal=\033[0m'
    + echo '[\033[1;32minfo\033[0m] Build of static MobileVLCKit.framework completed'
    [info] Build of static MobileVLCKit.framework completed 
    

    六、libVLC需翻墙下载的主要是tarballs和tools目录下的软件。可以访问我的下载链接,直接获取



    
    
    展开全文
  • LibVLCSharp是基于VideoLAN的LibVLC库的.NET平台的跨平台音频和视频API。 它提供了全面的多媒体API,可在移动设备,服务器和台式机上使用,以呈现视频和输出音频以及进行编码和流传输。 此存储库的官方存储库URL为...
  • public static libvlc_media_player_t Create_MediaPlayer(libvlc_instance_t libvlc_instance, IntPtr handle) { libvlc_media_player_t libvlc_media_player = IntPtr.Zero; try { if (libvlc_instance == ...
  • 适用于Android的libvlc 预建图书馆
  • 视频演示 使用libvlc.h的C#演示,站在gaent的肩膀上
  • 有关在C ++类中包装libvlc(VLC媒体播放器)的文章
  • 更改VLC源码 实现使用libVLC录像功能

    千次阅读 2015-07-09 15:12:14
    ... VLC的强大功能我就不赘述了,相信看到这篇文章的朋友都已经有所了解了,如果还不太清楚,可以访问http://www.videolan.org/vlc/features.html. 首先大家需要下载一份VLC的源码,地址http://www.
  • libvlc播放视频

    2017-12-27 14:42:48
    使用libvlc库播放视频文件,也可以rtsp等网络流。里面已经包含了libvlc源码库,不需要配置环境,可直接编译,并附用测试文件,亲测可用,绝对好用
  • 网页实时视频播放器源码(VS2005工程),支持rtsp,http,等多种流媒体协议,支持录像,截图,暂停,所有功能带有网页demo

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,662
精华内容 664
关键字:

libvlc源码