zoukankan      html  css  js  c++  java
  • 【编译CEF3】编译Chromium(CEF3)源代码增加对mp3/mp4等格式支持的编译手记 完成编译,增加mp3/mp4等格式支持(3) 2018-5-21

            经过前两天的准备工作,好在有几位前辈们留下的"血泪史" ~( ̄▽ ̄~) 实际操刀的过程中并没有遇到太大的困难,今天终于可以开始尝试编译cef.master分支了。

    PS: 以下摘自官方:

     Create a Debug build of CEF/Chromium using Ninja. Edit the CEF source code at "~/code/chromium_git/chromium/src/cef" and repeat this step multiple times to perform incremental builds while developing.

    使用Ninja创建CEF/Chromium的Debug版本。在"c:/code/chromium_git/chromium/src/cef"处编辑CEF源代码并多次重复此步骤以在开发过程中执行增量构建。

    打开"cmd.exe"执行代码:

    cd c:/code/chromium_git/chromium/src
    ninja -C out/Debug_GN_x86 cef

    ( ̄3 ̄),开始漫长的等待编译中..........

    PS: 如果你的内存比较紧张(8G以下),需要增加一下系统的虚拟内存大小(至少增加20GB以上)。


     早上起来连到服务器看到,编译成功拉! ε=ε=(ノ≧∇≦)ノ,

    尝试加入对MP3/MP4等格式的支持,并编译cef.branche 3396分支


     在"c:code"下创建一个新的文件夹"chromium_git3396"

    cd c:/code
    mkdir chromium_git3396

    进入"chromium_git3396"文件夹创建脚本文件"update.bat"并添加以下代码:

    set CEF_USE_GN=1
    set GN_DEFINES=use_jumbo_build=true
    set GN_ARGUMENTS=--ide=vs2017 --sln=cef --filters=//cef/*
    python ..automateautomate-git.py --download-dir=c:codechromium_git3396 --depot-tools-dir=c:codedepot_tools --no-distrib --no-build --no-depot-tools-update --force-clean --force-update --branch=3396

    打开"cmd.exe"并运行"update.bat"脚本

    cd c:/code/chromium_git3396
    update.bat
     ( ̄▽ ̄) ,download ....,等待更新完成,继续编译,参照编译cef.master分支的方法:
     
    在"c:codechromium_git3396srccef"路径下创建脚本文件"create.bat"并添加以下代码:

    set CEF_USE_GN=1
    set GN_DEFINES=use_jumbo_build=true is_official_build=true ffmpeg_branding=Chrome proprietary_codecs=true
    set GN_ARGUMENTS=--ide=vs2017 --sln=cef --filters=//cef/* --enable-decoder='rv10,rv20,rv30,rv40,cook,h263,h263i,mpeg4,msmpeg4v1,msmpeg4v2,msmpeg4v3,amrnb,amrwb,ac3,flv' --enable-demuxer='rm,mpegvideo,avi,avisynth,h263,aac,amr,ac3,flv,mpegts,mpegtsraw' --enable-parser='mpegvideo,rv30,rv40,h263,mpeg4video,ac3'
    call cef_create_projects.bat

    其中:"ffmpeg_branding=Chrome proprietary_codecs=true"即为开启对MP3/MP4等格式的支持。 "--enable-decoder='rv10,rv20,rv30,rv40,cook,h263,h263i,mpeg4,msmpeg4v1,msmpeg4v2,msmpeg4v3,amrnb,amrwb,ac3,flv' --enable-demuxer='rm,mpegvideo,avi,avisynth,h263,aac,amr,ac3,flv,mpegts,mpegtsraw' --enable-parser='mpegvideo,rv30,rv40,h263,mpeg4video,ac3'" 为增加对于其它多媒体格式的支持。

    打开"cmd.exe"并执行脚本:

    cd c:/code/chromium_git3396/src/cef
    create.bat

    待其执行完成后,检查一下"c:/code/chromium_git3396/src/out"下是否拥有以下几个目录:

    1. "Debug_GN_x64"
    2. "Debug_GN_x86"
    3. "Release_GN_x64"
    4. "Release_GN_x86"
    如果没有则说明产生了错误,可以检查一下配置是否存在错误,或者尝试再次执行update.bat脚本。
    打开"cmd.exe"执行编译代码:
    cd c:/code/chromium_git/chromium/src
    ninja -C out/Debug_GN_x86 cef

     编译完成即可以获得能够支持MP3/MP4播放的CEF发行版啦!

    --- 完 ---

    以上即为,我的CEF编译全部过程, 按我的服务器配置编译一次也需要五六个小时左右,内存,硬盘空间以及良好的网络环境是关键,这几个部分准备充足,就不会遇到太多的问题了。如果遇到本文没有出现的错误,不要气馁, 耐住性子,多尝试下在google下搜索关键字或者可以去CEF论坛(http://magpcss.org/ceforum/)上寻求帮助,也许答案就在其中。

    参考资料:

    https://bitbucket.org/chromiumembedded/cef/wiki/MasterBuildQuickStart
    https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding
    https://blog.csdn.net/qpshen/article/details/78559710
    https://www.cnblogs.com/caibirdy1985/p/7244961.html
     
  • 相关阅读:
    5-python基础—获取某个目录下的文件列表(适用于任何系统)
    Automated, Self-Service Provisioning of VMs Using HyperForm (Part 1) (使用HyperForm自动配置虚拟机(第1部分)
    CloudStack Support in Apache libcloud(Apache libcloud中对CloudStack支持)
    Deploying MicroProfile-Based Java Apps to Bluemix(将基于MicroProfile的Java应用程序部署到Bluemix)
    Adding Persistent Storage to Red Hat CDK Kit 3.0 (在Red Hat CDK Kit 3.0添加永久性存储)
    Carve Your Laptop Into VMs Using Vagrant(使用Vagran把您笔记本电脑刻录成虚拟机)
    使用Python生成一张用于登陆验证的字符图片
    Jupyter notebook的安装方法
    Ubuntu16.04使用Anaconda5搭建TensorFlow使用环境 图文详细教程
    不同时区的换算
  • 原文地址:https://www.cnblogs.com/heimao117/p/9064666.html
Copyright © 2011-2022 走看看