1.FFmpeg开发笔记(八)Linux交叉编译Android的源码FFmpeg库
2.为什么有些歌录到MP3可以播放,有些播放不到?
FFmpeg开发笔记(八)Linux交叉编译Android的FFmpeg库
在Linux环境中进行FFmpeg库的Android交叉编译,首先需要下载Linux版本的源码android-ndk-re。登录Linux服务器,源码例如华为云的源码欧拉系统,执行以下步骤:
1. 进入`/usr/local/src`目录:
cd /usr/local/src
2. 下载并解压ndk:
curl -O dl.google.com/android/r...
unzip android-ndk-re-linux-x_.zip
接下来,源码你需要将FFmpeg及相关库(如x、源码php随机跳转源码freetype、源码lame)的源码源码上传到服务器,并进行必要的源码修改:
- 解压源码,替换`SYSTEM=windows-x_`为`SYSTEM=linux-x_`,源码并确保sh文件无回车符。源码
- 修改`config_x.sh`、源码`config_freetype.sh`等文件,源码赋予可执行权限:
chmod +x config_*.sh
3. 编译x库,源码大漠dx鼠标源码修改configure文件并执行编译:
修改configure文件
./config_x.sh
make -j4
make install
4. 对其他第三方库进行类似操作:
./config_xxx.sh
make -j4
make install
5. 配置环境变量`PKG_CONFIG_PATH`:
在.bash_profile中添加环境变量
source .bash_profile
6. 最后,源码编译FFmpeg库:
./config_ffmpeg_full.sh
make -j4
make install
完成后,可以在指定目录找到so文件,并将其复制到App工程的jniLibs\arm-v8a目录,然后按照《FFmpeg开发实战:从零基础到短视频上线》的章节“.1.3 App工程调用FFmpeg的so库”进行App的配置、编译和运行。
为什么有些歌录到MP3可以播放,有些播放不到?
歌曲有多种文件格式的,如MP3和WMA等
推荐下载“千千静听”(最新版本是4.6.8,网站地址是/),打开要转换格式的音频或视频文件文件,在播放列表中右击需要转换为MP3格式的歌曲,“转换格式”,在打开的大圣轮回免费源码“转换格式”对话框中,选择“编码格式”及保存位置,“立即转换”,很容易的,支持各种格式,而且在线自动下载歌词,功能太多了,而且是免费的,用过了就知道了,N合1的功能。
MP3的全称是Moving Picture Experts Group Audio Layer III。简单的说,MP3就是一种音频压缩技术,由于这种压缩方式的机器数有源码全称叫MPEG Audio Layer3,所以人们把它简称为MP3。MP3是利用 MPEG Audio Layer 3 的技术,将音乐以1: 甚至 1: 的压缩率,压缩成容量较小的file,换句话说,能够在音质丢失很小的情况下把文件压缩到更小的程度。而且还非常好的保持了原来的音质。正是因为MP3体积小,音质高的特点使得MP3格式几乎成为网上音乐的代名词。
WMA的全称是Windows Media Audio,是微软力推的一种音频格式。WMA格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:,go转c源码生成的文件大小只有相应MP3文件的一半。这对只装配M的机型来说是相当重要的,支持了WMA和RA格式,意味着M的空间在无形中扩大了2倍。此外,WMA还可以通过DRM(Digital Rights Management)方案加入防止拷贝,或者加入限制播放时间和播放次数,甚至是播放机器的限制,可有力地防止盗版。
WAV
WAV是Microsoft Windows本身提供的音频格式,由于Windows本身的影响力,这个格式已经成为了事实上的通用音频格式。不客气地说,它实际上是Apple电脑的AIFF格式的克隆。通常我们使用WAV格式都是用来保存一些没有压缩的音频,但实际上WAV格式的设计是非常灵活(非常复杂)的,该格式本身与任何媒体数据都不冲突,换句话说,只要有软件支持,你甚至可以在WAV格式里面存放图像。之所以能这样,是因为WAV文件里面存放的每一块数据都有自己独立的标识,通过这些标识可以告诉用户究竟这是什么数据。在WINDOWS平台上通过ACM(Audio Compression Manager)结构及相应的驱动程序(在这里通常称为CODEC,编码/解码器),可以在WAV文件中存放超过种的压缩格式,比如ADPCM、GSM、CCITT G.、G.等等,当然也包括MP3格式.
虽然WAV文件可以存放压缩音频甚至mp3,但由于它本身的结构注定了它的用途是存放音频数据并用作进一步的处理,而不是像mp3那样用于聆听。目前所有的音频播放软件和编辑软件都支持这一格式,并将该格式作为默认文件保存格式之一。这些软件包括:Sound Forge, Cool Edit Pro, WaveLab等等。由于WAV的支持实在是太广泛了,可以说,即使Windows退出历史舞台,WAV格式也不会消亡。
mp3
mp3是Fraunhofer-IIS研究所(,当年很多电脑上看VCD听mp3就靠这个公司的Xing Player)推出的Xing Encoder。
由于mp3是世界上第一个有损压缩的编码方案,所以可以说所有的播放软件都支持它,否则就根本没有生命力。在制作方面,也曾经产生了许多第三方的编码工具。不过随着后来Fraunhofer-IIS宣布对编码器征收版税之后很多都消失了。目前属于开放源代码并且免费的编码器是LAME (Lame Ain't Mp3 Encoder,)。这个工具是公认的压缩音质最好的mp3压缩工具。另外,几乎所有的音频编辑工具都支持打开和保存mp3文件。最近,Fraunhofer-IIS对之前不收取版权费的mp3解码器也征收了版权费。此举大有Fraunhofer-IIS意识到mp3已经在没落,趁还能收到钱最后捞一把的意思。应该说,到了现在,MP3确实显现出疲态了。许多新一代的编码技术都已经能在相同的比特率下提供比MP3优越得多的音质。特别是音乐发烧友对mp3的音质更是嗤之以鼻。不过由于mp3的影响力实在是太大了,支持mp3的软件多如牛毛,更别提众多支持mp3的硬件播放器,如MPMAN,DiscMan,CD/VCD/DVD机等等。一句话,它依然是世界上最流行的音频压缩技术,所以要它真正退出舞台相信还有好一段时间。