pcm播放器安卓版,PCM播放器
android能播放pcm文件吗
原生系统应该不行,但毕竟是开源系统,你可以下载支持这个文件的播放器

安卓手机如何打开.pcm文件?
;?????01
??????安卓手机不能打开.pcm文件,只能在电脑上打开,首先用app把视频文件下下来,然后在手机上找到那个app的文件夹,把下载的pcm格式导出到电脑上,然后在电脑上下一个pcm格式批量提取器,就可以实现把网校的课程下载到电脑上用常用的视频格式给打开了。
??????PCM文件被广泛用于素材保存及音乐欣赏,CD、DVD以及我们常见的 WAV文件中均有应用,PCM文件能够一边读一边播放,而不需要把这个文件全部读出后然后回放,这样就可以做到不用下载 就可以实现收听了。也可以做到一边编码一边播放。安卓手机不能打开.pcm文件,只能在电脑上打开。
??????PCM脉冲编码调制是数字通信的编码方式之一。主要过程是将话音、图像等模拟信号每隔一定时间进行取样,使其离散化,同时将抽样值按分层单位四舍五入取整量化,同时将抽样值按一组二进制码来表示抽样脉冲的幅值。在PCM 过程中,将输入的模拟信号进行采样、量化和编码,用二进制进行编码的数来代表模拟信号的幅度 ;接收端再将这些编码还原为原来的模拟信号。数字音频的 A/D 转换包括三个过程 :采样,量化,编码。
??????脉冲编码调制是理论上简单,应用上成熟的技术,广泛应用于通信、计算机、数字仪表、遥控遥测等领域。随着通信技术、电子技术和计算机技术的不断发展进步,在应用中的PCM的实现方法也经历了不断发展的过程,由最初通过模拟电路实现,数字电路实现,集成电路实现,软硬件结合实现,到采用单片机来实现。
安卓手机有什么音乐播放软件可以播放DTS音乐的呢?
可以直接回答XBMC播放器可以播放DTS音乐。
XBMC播放器支持的视频格式:
◆MPEG-1◆MPEG-2◆MPEG-4◆ wmv◆ VC-1◆ RealVideo◆ QuickTime◆ SMC◆ VP3
◆ Intel Indeo◆ NUV◆ VIVO ◆ ITU◆ CYUV◆ CVID◆ ASUS◆ FLI,FLC
支持的音频格式:
◆ CDDA ◆ WAV/WAVE◆ PCM◆ AIFF ◆ MPEG I, II, , III◆ OGG ◆ WMA◆ rm,rmvb◆ AC3
◆ DTS◆ AAC◆ M4A , MP4◆ FLAC◆ WavPack◆ MPC◆ APE◆ SHN◆ ALAC◆ MIDI
支持的图像格式:
◆ BMP◆ JPG/JPEG◆ GIF◆ PNG◆ TIF/TIFF◆ TGA◆ PCX◆ ICO◆ CBR/CBZs
还可以尝试把DTS音乐使用软件把音轨转换成AC3格式。
扩展资料:
DTS音乐技术解析:
(1)DTS-HD MASTER AUDIO:无损的大师级完美音频针对采用7.1声道音频的蓝光影音设计,是一种最佳的高清音频解码技术,能够带来与录音母带逐位一致的音频。DTS-HD Master Audio让消费者能够享受到最美妙的7.1声道环绕声。
(2)DTS CONNECT :让PC与家庭影院互连互通该技术可以
使笔记本电脑及PC与家庭娱乐系统进行高品质的数字音频互联互通,通过家庭影院系统,实现将任何立体声数字音频流转换成环绕声,并通过5.1系统进行播放。
(3)DTS SURROUND SENSATIONULTRAPC :PC专用DTS环绕声
DTS Surround Sensation UltraPC使用先进的后处理技术,仅用两个扬声器或耳机就能产生奇妙的环绕声效果。这项技术能够让消费者无论是欣赏立体声节目还是环绕声节目,即便在最普通的喇叭或是耳机上也能听到最好的环绕声效果。
参考资料来源:百度百科—XBMC播放器
有什么软件能播放PCM的音频文件吗?
PCM文件:
模拟音频信号经模数转换(A/D变换)直接形成的二进制序列,该文件没有附加的文件头和文件结束标志。Windows的Convert工具可以把PCM音频格式的文件转换成Microsoft的WAV格式的文件。
All To MP3 Converter 1.6 汉化版 可将WMA,OGG和WAV PCM WMA格式转换成MP3格式.
Android音视频【十二】使用OpenSLES和AudioTrack进行播放PCM
本节我们学习下如何播放pcm数据,在Android中有两种方法:一种是使用java层的 AudioTrack 方法,一种是使用底层的 OpenSLES 直接在 jni 层调用系统的 OpenSLES的c方法 实现。
两种使用场景不一样:
AudioTrack 一般用于 比如本地播放一个pcm文件/流,又或者播放解码后的音频的pcm流,API较简单。
OpenSLES 一般用于一些播放器中开发中,比如音频/视频播放器,声音/音频的播放采用的OpenSLES,一是播放器一般是c/c++实现,便于直接在c层调用OpenSLES的API,二也是如果用AudioTrack进行播放,务必会带来java和jni层的反射调用的开销,API较复杂。
可以根据业务自行决定来进行选择。
AudioTrack的方式使用较简单,直接在java层。
指定采样率,采样位数,声道数进行创建。
其中44100是采样率, AudioFormat.CHANNEL_OUT_STEREO 为双声道,还有 CHANNEL_OUT_MONO 单声道。 AudioFormat.ENCODING_PCM_16BIT 为采样位数16位,还有 ENCODING_PCM_8BIT 8位。 minBufferSize 是播放器缓冲的大小,也是根据采样率和采样位数,声道数 进行获取,只有满足最小的buffer才去操作底层进程播放。
最后一个参数mode。可以指定的值有 AudioTrack.MODE_STREAM 和 AudioTrack.MODE_STATIC 。
MODE_STREAM 适用于大多数的场景,比如动态的处理audio buffer,或者播放很长的音频文件,它是将audio buffers从java层传递到native层。音频播放时音频数据从Java流式传输到native层的创建模式。
MODE_STATIC 适用场景,比如播放很短的音频,它是一次性将全部的音频资源从java传递到native层。音频数据在音频开始播放前仅从Java传输到native层的创建模式。
是的,就这么一个方法。注意此方法是同步方法,是个耗时方法,一般是开启一个线程循环调用 write 方法进行写入。
注意在调用 write 方法前需要调用 audioTrack.play() 方法开始播放。
因为是pcm裸数据,无法像mediaplayer一样提供了API。所以需要自己处理下。可以利用 getPlaybackHeadPosition 方法。
getPlaybackHeadPosition() 的意思是返回以帧为单位表示的播放头位置
getPlaybackRate() 的意思是返回以Hz为单位返回当前播放采样率。
所以当前播放时间可以通过如下方式获取
OpenSLES:(Open Sound Library for Embedded Systems).
OpenSLES是跨平台是针对嵌入式系统精心优化的硬件音频加速API。使用OpenSLES进行音频播放的好处是可以不依赖第三方。比如一些音频或者视频播放器中都是用OpenSLES进行播放解码后的pcm的,这样免去了和java层的交互。
在Android中使用OpenSLES首先需要把Android 系统提供的so链接到外面自己的so。在CMakeLists.txt脚本中添加链接库OpenSLES。库的名字可以在 类似如下目录中
需要去掉lib
然后导入头文件即可使用了OpenSLES提供的底层方法了。
创建使用的步骤大致分为:
一个 SLObjectItf 里面可能包含了多个Interface,获取Interface通过 GetInterface 方法,而 GetInterface 方法的地2个参数 SLInterfaceID 参数来指定到的需要获取Object里面的那个Interface。比如通过指定 SL_IID_ENGINE 的类型来获取 SLEngineItf 。我们可以通过 SLEngineItf 去创建各种Object,例如播放器、录音器、混音器的Object,然后在用这些Object去获取各种Interface去实现各种功能。
如上所说,SLEngineItf可以创建混音器的Object。
在创建播放器前需要创建音频的配置信息(比如采样率,声道数,每个采样的位数等)
开始播放后会不断的回调这个 pcmBufferCallBack 函数将音频数据压入队列
(*pcmBufferQueue)-RegisterCallback(pcmBufferQueue, pcmBufferCallBack, this);
如果想要暂停播放参数直接设置为SL_PLAYSTATE_PAUSED,若暂停后继续播放设置参数为SL_PLAYSTATE_PLAYING即可。若想要停止播放参数设置为SL_PLAYSTATE_STOPPED即可。
首先获取播放器的用于控制音量的接口SLVolumeItf pcmVolumePlay
然后动态设置
首先也是获取播放器的用于控制音量的接口SLMuteSoloItf pcmMutePlay
然后动态设置
看起来控制还是蛮简单的哈。先熟悉这么多,OpenSLES还是蛮强大的。