aacandroid
Ⅰ 天天动听android版本支持aac和flac无损吗
aac/m4a格式的音乐请先使用系统播放器试一试能否播放,天天动听默认是调用系统解码器。如果系统支持则天天动听在理论上也是支持的。无损解码请下载其他无损专业播放器,因为此类播放器都自带无损解码,所以要比单纯的安装插件在性能上表现比较出色。给你一个下载地址吧:
http://www.hiapk.com/bbs/viewthread.php?tid=155949&highlight=%CE%DE%CB%F0。试一试效果如何
Ⅱ Android2.2 怎么支持AAC音频录制
下面是相关参数的代码段。看清楚了,是在Android 2.2 SDK 包去实现支持 AAC 音频录制的。在Android 2.3.3 包下,这段代码是可以写成这样的:[mw_shl_code=java,true]mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);[/mw_shl_code]但是要兼容这个2.2系统的问题!!!![mw_shl_code=java,true]/* ①Initial:实例化MediaRecorder对象 */ mMediaRecorder = new MediaRecorder(); /* ②setAudioSource/setVedioSource */ mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);// 设置麦克风 /* * ②设置输出文件的格式:THREE_GPP/MPEG-4/RAW_AMR/Default * THREE_GPP(3gp格式,H263视频 * /ARM音频编码)、MPEG-4、RAW_AMR(只支持音频且音频编码要求为AMR_NB) */ mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT); /* ②设置音频文件的编码:AAC/AMR_NB/AMR_MB/Default */ mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); /* ②设置输出文件的路径 */ try { mRecAudioFile = File.createTempFile(strTempFile, ".mp3", mRecAudioPath); } catch (Exception e) { e.printStackTrace(); }[/mw_shl_code]
Ⅲ 求安卓机支持aac的音乐播放器,,为华为c8650.
试试天天动听,搜狐软件下载,更新及时。希帮到你!
Ⅳ aac在安卓系统手机如何打开
aac是音频格式
找个支持该格式的软件就行了
比如说天天动听等等
Ⅳ android手机有能播放aac音乐文件的播放器吗
多米音乐支持aac格式音频文件!
AAC(Advanced Audio Coding),
中文称为“高级音频编码”,出现于1997年,基于 MPEG-2的音频编码技术。由Fraunhofer IIS、杜比实验室、AT&T、Sony(索尼)等公司共同开发,目的是取代MP3格式。2000年,MPEG-4标准出现后,AAC 重新集成了其特性,加入了SBR技术和PS技术,为了区别于传统的 MPEG-2 AAC 又称为 MPEG-4 AAC。
Advanced Audio Coding。一种专为声音数据设计的文件压缩格式,与Mp3不同,它采用了全新的算法进行编码,更加高效,具有更高的“性价比”。利用AAC格式,可使人感觉声音质量没有明显降低的前提下,更加小巧。
早在1987年,Fraunhofer IIS就开始了“EUREKA project EU147,Digital Audio Broadcasting(DAB)”的研发,而这就是MP3的前身。通过和Dieter Seitzer教授的合作,他们开发出了着名的ISO-MPEG Audio Layer-3压缩算法。1993年这个算法被整合到MPEG-1标准中,从此MP3被投入使用。1996年底Fraunhofer IIS在美国获得MP3的专利,并在1998年对外声明将收取MP3专利使用费。而从1999年开始,MP3格式开始广泛行起来,特别是出现了很多免费提供MP3的音乐网站,MP3随身听也像洪水般涌进市场,种种因素促使MP3成为了极其主流的音频格式。尽管之后有VQF、WMA等挑战者,但MP3牢固的根基使它至今仍稳稳地坐在老大的位置上。
但是音频格式就像电脑软硬件一样,终归要更新换代的,像磁带不是被CD淘汰了吗?而CD也将要被DVD-Audio所代替。随着时间的推移,MP3越来越不能满足我们的需要了,比如压缩率落后于Ogg、WMA、VQF等格式,音质也不够理想(尤其是低码率下),仅有两个声道……于是Fraunhofer IIS与AT&T、索尼、杜比、诺基亚等公司展开合作,共同开发出了被誉为“21世纪的数据压缩方式”的Advanced Audio Coding(简称AAC)音频格式,以取代MP3的位置。其实AAC的算法在1997年就完成了,当时被称为MPEG-2 AAC,因为还是把它作为MPEG-2(MP2)标准的延伸。但是随着MPEG-4(MP4)音频标准在2000年成型,MPEG-2 AAC也被作为它的编码技术核心,同时追加了一些新的编码特性,所以我们又叫MPEG-4 AAC(M4A)。
Ⅵ 如何生成 AAC ADTS 基本流与 Android MediaCodec
首先,Android MediaCodec 编码器生成基本的 AAC 流我先前假设不是准确的。MediaCodec 编码器生成的原始的 AAC 流。这就是为什么无法播放文件。原始的 AAC 流需要转换成一个可播放格式,例如ADTS流。我已更改以反映我的新认识这篇文章的标题。有另一篇文章,问了一个类似的问题,并有一个优秀的答案。然而,一个新手未必了解那里的简要说明。我相当没我阅读这篇文章的第一次。
所以,为了生成 AAC 码流可以发挥的一个媒体播放器,我开始给出的 EncoderTest 示例由法登在他第一次的意见,但修改的原代码添加 ADTS 头每输出帧 (访问单位),并将结果流写入到一个文件中 (更换线路通过 267 248 的原代码与下面的代码段):
if (index >= 0) {
int outBitsSize = info.size;
int outPacketSize = outBitsSize + 7; // 7 is ADTS size
ByteBuffer outBuf = codecOutputBuffers[index];
outBuf.position(info.offset);
outBuf.limit(info.offset + outBitsSize);
try {
byte[] data = new byte[outPacketSize]; //space for ADTS header included
addADTStoPacket(data, outPacketSize);
outBuf.get(data, 7, outBitsSize);
outBuf.position(info.offset);
mFileStream.write(data, 0, outPacketSize); //open FileOutputStream beforehand
} catch (IOException e) {
Log.e(TAG, "failed writing bitstream data to file");
e.printStackTrace();
}
numBytesDequeued += info.size;
outBuf.clear();
codec.releaseOutputBuffer(index, false /* render */);
Log.d(TAG, " dequeued " + outBitsSize + " bytes of output data.");
Log.d(TAG, " wrote " + outPacketSize + " bytes into output file.");
}
else if (index == MediaCodec.INFO_OUTPUT_BUFFERS_CHANGED) {
}
else if (index == MediaCodec.INFO_OUTPUT_FORMAT_CHANGED) {
codecOutputBuffers = codec.getOutputBuffers();
}
在循环外我定义函数 addADTStoPacket 像这样:
/**
* Add ADTS header at the beginning of each and every AAC packet.
* This is needed as MediaCodec encoder generates a packet of raw
* AAC data.
*
* Note the packetLen must count in the ADTS header itself.
**/
private void addADTStoPacket(byte[] packet, int packetLen) {
int profile = 2; //AAC LC
//39=MediaCodecInfo.CodecProfileLevel.AACObjectELD;
int freqIdx = 4; //44.1KHz
int chanCfg = 2; //CPE
// fill in ADTS data
packet[0] = (byte)0xFF;
packet[1] = (byte)0xF9;
packet[2] = (byte)(((profile-1)<<6) + (freqIdx<<2) +(chanCfg>>2));
packet[3] = (byte)(((chanCfg&3)<<6) + (packetLen>>11));
packet[4] = (byte)((packetLen&0x7FF) >> 3);
packet[5] = (byte)(((packetLen&7)<<5) + 0x1F);
packet[6] = (byte)0xFC;
}
我还添加了代码来控制如何停止生成 AAC ADTS 流,但这是应用程序特定的所以我在这里不会详细说明。转载,仅供参考。
Ⅶ android如何使用fdk-aac编码库来把aac转成pcm
线性PCM就是WAV。
AAC-LC是AAC的一个规格,你下载到或者转换的这些高码率的AAC都是AAC-LC的。
扩展名是.m4a。
.aac 是aac的音频数据流,m4a是aac的一个封装方式。其内容本身是一样的。
我用s754,和e453功能是一样的。m4a和wav的我都放了,没问题,只是.aac的我还没试过。
但我相信lz没有.aac的。。因为这年头你下载到的或者转换出来的都是m4a的
Ⅷ 安卓手机什么软件能播放正版AAC文件啊
Advanced Audio Coding (AAC), 是高保质的音效保存方式。
AAC 制式在相同的压缩度下, 比较常见的MP3拥更高保质度。
安卓手机要播放AAC文件, 建议下载使用能兼容ACC制式的Music Player应用。
例如 : GoneMAD Music Play, Media Player, Player Dream...等等
Ⅸ 怎样用AACLib V1.0在Android上音频编码解码
这几天在 android上的音频项目,顺便把用到的aac编解码库封装了一下,有需要的可以从上面下载。当然是没有本事自己写编解码器的,还是用FFmpeg + FDK_aac来做。下面介绍一下其java接口的使用。java库见libaac.jar文件,把libaac.jar加到 libs目录下,把libaac.so加到 libs/armeabi目录即可使用。
AAC编码:
(1) 创建一个Encoder对象作为成员变量
aac.Encoder encoder;
(2) 初始化它
encoder = new aac.Encoder();
if(! encoder.open(11025, 1))
{
Log.d("mylog", "failed to open encoder !\n");
encoder = null;
}
这里要指定输入音频源(PCM格式)的sampe_rate和channel个数,如果为CHANNEL_OUT_MONO,则channel=1,否则为2。 sample_rate一般设置为11025,因为手机性能有限,设置太高的话也处理不过来,而且处理人声的话11025也是足够了。
(3) 编码
把接收到PCM数据交给encoder来处理即可,要求输入源为ENCODING_PCM_16BIT,即每个sample是16BIT的。这个encoder对象内有2个缓冲区:inbuf, outbuf。显然,在编码时,inbuf就是用于存储接收到的PCM数据,outbuf就是存编码后得到的数据。
int out_size = encoder.encode(in_size);
其返回值out_size,表示在outbuf里的有效数据长度。此时可以把outbuf里的aac数据通过网络发送或其他用途。
其中,用户需要知道encoder每次处理多长的数据,即一个frame的大小。对于单声道MONO来说,每次应该输入2048byte的数据。对于双声道STEREO来说,应该输入4096byte的数据。下面这一行可以根据声道数来计算输入的frame的大小:
int in_size = aac.Encoder.frameSize(1);
AAC解码:
(1) 创建一个Decoder对象作为成员变量
aac.Decoder decoder;
(2) 初始化
decoder = new aac.Decoder();
if( ! decoder.open())
{
Log.d("mylog", "failed to open decoder !\n");
decoder = null;
}
(3) 解码
Decoder对象也有inbuf和outbuf,把待解码的aac frame放到inbuf里
int pcm_size = decoder.decode(aac_size);
解得到数据在outbuf里,其有效长度为上述函数的返回值pcm_size,此时可以把outbuf里的PCM数据取出来播放或其他用途。
Ⅹ beatssolo3在安卓显示aac
AAC是苹果产品通用的解码方式。
跟sbc差不多,支持44khz16bit的音频,最高码率512kbps,延时大约100ms,当蓝牙支持AAC格式的文件,手机也支持AAC传输时,音质比SBC好很多。
beatsolo3连接安卓,用手放在开关的按钮轻轻的按住几秒,然后松开手,看见开关附近的几个提示灯闪烁即可,打开手机,找到设置找到蓝牙,选择开启蓝牙,搜索完附近可用设备,找到你的beatsolo3的名字点击连接,成功连接会显示已连接,接下来就可以用手机看电视听歌了。