android全格式多媒体播放器一:ffmpeg移植

为了能在android平台上播放全格式的多媒体文件,我们需要自己做一个多媒体播放器。android自带的opencore系统解码格式较少,只支持mp4和ogg,并且结构不是很好理解。如果要加其他的解码方式实在太费劲。经过考虑,基于ffmpeg实现全功能的播放器比较容易并且成本比较低。

本文讨论制作全格式多媒体播放器的第一步:ffmpeg 移植。

第一步:得到别人已经移植过的一个比较旧的android平台上的ffmpeg。地址为 http://gitorious.org/~olvaffe/ffmpeg/ffmpeg-android ,我们将使用其*.mk 文件。我将此源码放到一个临时目录中。

第二步:得到新版本的ffmpeg。地址为 http://ffmpeg.org/download.html 。一般用git clone 得到。我将源码放到了android源码树的external/目录下。

第三步:configure ffmpeg ,目的是得到android平台上的config.mak和config.h文件。所以只需要configure成功即可,不必编译,稍候我们会在android源码树下编译。

export PREBUILT=/home/Dev/android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0

./configure --target-os=linux

--arch=armv41

--enable-cross-compile

--cc=$PREBUILT/bin/arm-eabi-gcc

--cross-prefix=$PREBUILT/bin/arm-eabi-

--nm=$PREBUILT/bin/arm-eabi-nm

--extra-cflags="-fPIC -DANDROID"
android全格式多媒体播放器(一:ffmpeg移植)

--enable-static

--disable-shared

--disable-asm

--disable-yasm

--prefix=`pwd`/android_bin

--extra-ldflags="-Wl,-T,$PREBUILT/arm-eabi/lib/ldscripts/armelf.x -Wl,-rpath-link=/home/Dev/android/out/target/product/generic/obj/lib -L/home/Dev/android/out/target/product/generic/obj/lib -nostdlib $PREBUILT/lib/gcc/arm-eabi/4.4.0/crtbegin.o $PREBUILT/lib/gcc/arm-eabi/4.4.0/crtend.o -lc -lm -ldl"

解释一下,PREBUILT为我的android编译器路径,我使用的是android源码树下的tool-chian。configure命令中除了目录可能不一样外,其他的应该不需要做改动。

第四步:将临时目录中的ffmpeg-android下的*.mk拷贝到android源码树的external/ffmpeg目录下。这样就完成了移植。(这一步中,可能需要做修改,我将需要修改的文件打了个包,放在附件中)

第五步:在android目录下make libavutil libavcodec libavformat libswscale。

注:我已经基于最新的ffmpeg(0.6版本-git-6157eab)做的改动上传了。你只需要将附件解压,并替换源ffmpeg中相应的文件,即可直接执行第五步。

  文件:changes.tar.bz2

大小:16KB

下载:下载

发表于: 2010-09-21,修改于: 2010-12-10 14:01,已浏览638次,有评论2条 推荐 投诉

  

爱华网本文地址 » http://www.aihuau.com/a/25101011/59983.html

更多阅读

2014视频播放器排行榜 视频播放服务器

  视频播放器排行榜2014是最新的视频播放器下载排名;那么究竟视频播放器哪个好呢?我们一起来看一下2014视频播放器排行榜就知道了。  视频播放器通常指的视频播放器是指能播放以数字信号形式存储的视频的软件,也指具有播放视频

电脑上哪个视频播放器最好用? 哪个视频播放器最好用

本地播放器:强力推荐——KMplayer:????????这是一款来自韩国的超强影音播放器,与MPlayer一样都是从Linux平台移植而来的,几乎可以播放所有格式的影音文件,而且可以通过各种插件扩展支持层出不穷的新格式。有好多功能,相当专业,还有一些视

转载 全加器全减器 一位全减器真值表

原文地址:全加器全减器作者:影云全减器原理  全减器是两个二进制的数进行减法运算时使用的一种运算单元。  最简单的全减器是采用本位结果和借位来显示,二进制中是借一当二,所以可以使用两个输出变量的高低电平变化来实现减法运算。

Android--音乐播放器Demo android音乐播放器ui

自己制作的一个Android音乐播放器,功能比较简单,问题还多多,在模拟器上运行更新seekBar的时候有点卡,希望大家多给意见.帮助我继续改进.main.xml文件-----------------------------------

声明:《android全格式多媒体播放器一:ffmpeg移植》为网友與亂丗為敵分享!如侵犯到您的合法权益请联系我们删除