FFmpeg编译i386 OSX 脚本
话不多说, 直接上脚本
- #!/bin/sh
- # directories
- PLATFORM="OSX"
- # FFmpeg脚本目录
- SOURCE="ffmpeg-2.8.7"
- FAT="$PLATFORM/$SOURCE/FFmpeg-OSX"
- SCRATCH="$PLATFORM/$SOURCE/scratch"
- THIN=`pwd`/"$PLATFORM/$SOURCE/thin"
- # CONFIGURE_FLAGS="--enable-cross-compile \
- # --enable-nonfree \
- # --enable-libfaac \
- # --enable-libmp3lame \
- # --enable-libtheora \
- # --enable-libvorbis \
- # --enable-libxvid \
- # --enable-libass \
- # --enable-libspeex \
- # --enable-libx264 \
- # --enable-libvpx \
- # --enable-opencl \
- # --disable-ffmpeg \
- # --enable-gpl \
- # --disable-outdev=sdl \
- # --disable-ffplay \
- # --disable-debug \
- # --disable-ffserver \
- # --enable-static \
- # --enable-shared "
- CONFIGURE_FLAGS="--enable-cross-compile \
- --enable-nonfree \
- --enable-opencl \
- --disable-ffmpeg \
- --enable-gpl \
- --disable-outdev=sdl \
- --disable-ffplay \
- --disable-debug \
- --disable-ffserver \
- --enable-static \
- --enable-shared "
- CWD=`pwd`
- # ARCHS="x86_64 i386"
- ARCHS="i386"
- # FAAC="/usr/local/Cellar/faac/1.28"
- # LAMP="/usr/local/Cellar/lame/3.99.5"
- # THEORA="/usr/local/Cellar/theora/1.1.1"
- # VORBIS="/usr/local/Cellar/libvorbis/1.3.5"
- # XVID="/usr/local/Cellar/libxvid/1.3.4"
- # ASS="/usr/local/Cellar/libass/0.13.2"
- # SPEEX="/usr/local/Cellar/speex/1.2rc1"
- # VPX="/usr/local/Cellar/libvpx/1.6.0"
- # X264="/usr/local/Cellar/x264/r2668"
- for ARCH in $ARCHS
- do
- echo "building $ARCH..."
- mkdir -p "$SCRATCH/$ARCH"
- cd "$SCRATCH/$ARCH"
- CFLAGS="-arch $ARCH"
- SDK="macosx"
- XCRUN_SDK=`echo $SDK | tr '[:upper:]' '[:lower:]'`
- CC="xcrun -sdk $XCRUN_SDK clang"
- CXXFLAGS="$CFLAGS"
- LDFLAGS="$CFLAGS"
- if [ "$FAAC" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libfaac"
- CXXFLAGS="$CXXFLAGS -I$FAAC/include"
- LDFLAGS="$LDFLAGS -L$FAAC/lib"
- fi
- if [ "$LAMP" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libmp3lame"
- CXXFLAGS="$CXXFLAGS -I$LAMP/include"
- LDFLAGS="$LDFLAGS -L$LAMP/lib"
- fi
- if [ "$THEORA" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libtheora"
- CXXFLAGS="$CXXFLAGS -I$THEORA/include"
- LDFLAGS="$LDFLAGS -L$THEORA/lib"
- fi
- if [ "$VORBIS" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libvorbis"
- CXXFLAGS="$CXXFLAGS -I$VORBIS/include"
- LDFLAGS="$LDFLAGS -L$VORBIS/lib"
- fi
- if [ "$XVID" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libxvid"
- CXXFLAGS="$CXXFLAGS -I$XVID/include"
- LDFLAGS="$LDFLAGS -L$XVID/lib"
- fi
- if [ "$ASS" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libass"
- CXXFLAGS="$CXXFLAGS -I$ASS/include"
- LDFLAGS="$LDFLAGS -L$ASS/lib"
- fi
- if [ "$SPEEX" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libspeex"
- CXXFLAGS="$CXXFLAGS -I$SPEEX/include"
- LDFLAGS="$LDFLAGS -L$SPEEX/lib"
- fi
- if [ "$VPX" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libvpx"
- CXXFLAGS="$CXXFLAGS -I$VPX/include"
- LDFLAGS="$LDFLAGS -L$VPX/lib"
- fi
- if [ "$X264" ]
- then
- CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libx264"
- CXXFLAGS="$CXXFLAGS -I$X264/include"
- LDFLAGS="$LDFLAGS -L$X264/lib"
- fi
- TMPDIR=${TMPDIR/%\/} $CWD/$SOURCE/configure \
- --target-os=darwin \
- --arch=$ARCH \
- $CONFIGURE_FLAGS \
- --extra-cflags="$CXXFLAGS" \
- --extra-ldflags="$LDFLAGS" \
- --prefix="$THIN/$ARCH" \
- || exit
- # --cc="$CC" \
- make -j3 install $EXPORT || exit
- cd $CWD
- done
- echo Done
该脚本只要放在FFmpeg源码上一层目录即可运行.
测试过是可以跑起来的, 但是要添加其他的编译参数则要相应的库, 而其他库的i386版也需要自己编译, 网上没有找到, 也希望有大神可以帮忙编译
FFmpeg编译i386 OSX 脚本的更多相关文章
- iOS: FFMpeg编译和使用问题总结
iOS: FFmpeg编译和使用问题总结 折磨了我近一周多时间的FFmpeg库编译问题终于解决了,必须得把这一段时间来遇到过的坑全写出来.如果急着解决问题,编译最新版本的FFmpeg库请直接看第二部分 ...
- iOS: FFmpeg编译和使用 学习
ffmpeg是一个多平台多媒体处理工具,处理视频和音频的功能非常强大.目前在网上搜到的iOS上使用FFMPEG的资料都比较陈旧,而FFMPEG更新迭代比较快: 且网上的讲解不够详细,对于初次接触FFM ...
- FFMpeg编译之路
为了编译这个东西,快折腾了一个星期了.期间经历了很多痛苦的过程,今天我把整个过程,以及在这个过程的感悟写下来,以备日后查看,也希望能帮到一些像我一样的兄弟姐妹. 在这一个星期里前前后后加起来总共使用了 ...
- ndk开发-ffmpeg编译
进入模拟器shell: D:\Users\zhouhaitao\AppData\Local\Android\sdk\platform-tools\adb shell ndk编译链接静态库: LOCAL ...
- 【FFmpeg】Windows下FFmpeg编译
由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类 ...
- 2010_3_1最新 完整 FFMPEG 编译详解
在网上看了很多编译详解,都很零散.经过自己的编译,解决一些BUG,在此分享自己的一些经验... 话不多说了!直接上贴. 第一步:准备编译平台. 需要 一个 MinGW 和 一个 MSYS 安装包 以及 ...
- ffmpeg 编译安装
1.FFmpeg编译 1.1.安装yasm 这里我是直接通过ubuntu包安装的,当然也可以通过编译源码来安装. sudo apt-get install yasm 1.2.下载FFmpeg git ...
- Mac FFmpeg编译和解决nasm/yasm not found or too old错误
FFmpeg编译下载代码:git clone https://git.ffmpeg.org/ffmpeg.git然后输入命令进行编译:找到下载的目录下,然后用命令进入这个文件夹下cd ffmpeg,然 ...
- FFmpeg编译:mac下编译iOS平台的FFmpeg库(支持armv7, arm64, i386, x86_64)
环境:FFmpeg 3.4.6Xcode 10.3macOS 10.14.6iOS SDK 12.4 一.准备工作 1. 下载FFmpeg我这里使用的是3.4.6版本的FFmpeg,可以从FFmpeg ...
随机推荐
- 超牛 猴子补丁,修改python内置的print
猴子补丁一般是用于修改三方包或官方包,也可以用来修改自己或者他人的代码. 但也可以用来修改python 语言内置的关键字. 本篇博客修改python最常用的内置print,使你使用print时候,自动 ...
- oracle sql 语句 示例
--oracle 用户对象的导入导出 exp devimage/oracle@172.xx.x.xx/TESTDB owner='devimage' file=d:/devimage.dmp log= ...
- linux命令-vim一般模式下复制剪切粘贴
删除光标后的一个字符 x 删除光标前的一个字符 shift+x 删除指定个数的字符 数字+x 删除一行字符 dd 剪切指定行数 数字dd 3dd 剪切3行 其实并没有删掉而是保存着剪切板里 粘贴在 ...
- linux 下查看文件修改时间,访问时间,状态改变时间
http://blog.sina.com.cn/s/blog_6285b04e0100f4xr.html 查看文件时间戳命令:stat awk.txt File: `awk.txt' Size: 20 ...
- SharePoint 无法“使用资源管理器打开”
提示错误信息: 在文件资源管理器中打开此位置时遇到问题.将此网站添加到受信任的站点列表,然后重试. 服务器情况: 安装 Internet Explorer 10 后,在 Windows 资源管理器中打 ...
- 【总结整理】关于Json的解析,校验和验证
var jasondata='{"staff": [{"name":"红旗","age":90}, {"nam ...
- 六种获取配置properties文件的方法
总结一下六种获取配置properties文件的方法,代码如下: package com.xujingyang.test ; import java.io.BufferedInputStream ; i ...
- 使用Meshlab软件将点云(Point Cloud)转换为模型(Mesh)
使用Meshlab软件将点云(Point Cloud)转换为模型(Mesh) 启动Meshlab软件: 导入.ply点云文件: 接着点击: 弹出一个右侧边栏: 接着,计算每个点的法线: 输入100,点 ...
- centos7命令行和图形界面的相互切换(附centos7安装配置教程)
一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...
- Entity Framework Code-First(9.2):DataAnnotations - TimeStamp Attribute
DataAnnotations - TimeStamp Attribute: TimeStamp attribute can be applied to only one byte array pro ...