真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

包含androidpcm的詞條

安卓手機如何打開.pcm文件?

01

創(chuàng)新互聯(lián)主打移動網(wǎng)站、成都網(wǎng)站制作、網(wǎng)站建設、網(wǎng)站改版、網(wǎng)絡推廣、網(wǎng)站維護、申請域名、等互聯(lián)網(wǎng)信息服務,為各行業(yè)提供服務。在技術(shù)實力的保障下,我們?yōu)榭蛻舫兄Z穩(wěn)定,放心的服務,根據(jù)網(wǎng)站的內(nèi)容與功能再決定采用什么樣的設計。最后,要實現(xiàn)符合網(wǎng)站需求的內(nèi)容、功能與設計,我們還會規(guī)劃穩(wěn)定安全的技術(shù)方案做保障。

安卓手機不能打開.pcm文件,只能在電腦上打開,首先用app把視頻文件下下來,然后在手機上找到那個app的文件夾,把下載的pcm格式導出到電腦上,然后在電腦上下一個pcm格式批量提取器,就可以實現(xiàn)把網(wǎng)校的課程下載到電腦上用常用的視頻格式給打開了。

PCM文件被廣泛用于素材保存及音樂欣賞,CD、DVD以及我們常見的 WAV文件中均有應用,PCM文件能夠一邊讀一邊播放,而不需要把這個文件全部讀出后然后回放,這樣就可以做到不用下載 就可以實現(xiàn)收聽了。也可以做到一邊編碼一邊播放。安卓手機不能打開.pcm文件,只能在電腦上打開。

PCM脈沖編碼調(diào)制是數(shù)字通信的編碼方式之一。主要過程是將話音、圖像等模擬信號每隔一定時間進行取樣,使其離散化,同時將抽樣值按分層單位四舍五入取整量化,同時將抽樣值按一組二進制碼來表示抽樣脈沖的幅值。在PCM 過程中,將輸入的模擬信號進行采樣、量化和編碼,用二進制進行編碼的數(shù)來代表模擬信號的幅度 ;接收端再將這些編碼還原為原來的模擬信號。數(shù)字音頻的 A/D 轉(zhuǎn)換包括三個過程 :采樣,量化,編碼。

脈沖編碼調(diào)制是理論上簡單,應用上成熟的技術(shù),廣泛應用于通信、計算機、數(shù)字儀表、遙控遙測等領(lǐng)域。隨著通信技術(shù)、電子技術(shù)和計算機技術(shù)的不斷發(fā)展進步,在應用中的PCM的實現(xiàn)方法也經(jīng)歷了不斷發(fā)展的過程,由最初通過模擬電路實現(xiàn),數(shù)字電路實現(xiàn),集成電路實現(xiàn),軟硬件結(jié)合實現(xiàn),到采用單片機來實現(xiàn)。

安卓手機上pcm格式的文件有什么用,能不能刪除?占的空間很大。

可以刪除。

PCM文件具有流媒體特性,是數(shù)字通信的編碼方式之一,刪除后不會影響系統(tǒng)運行。

PCM文件被廣泛用于素材保存及音樂欣賞,CD、DVD以及我們常見的 WAV文件中均有應用,PCM文件能夠一邊讀一邊播放,而不需要把這個文件全部讀出后然后回放,這樣就可以做到不用下載 就可以實現(xiàn)收聽了。也可以做到一邊編碼一邊播放。

擴展資料

PCM中文稱脈沖編碼調(diào)制(Pulse Code Modulation),是70年代末發(fā)展起來的,記錄媒體之一的CD,在80年代初由飛利浦和索尼公司共同推出。

脈碼調(diào)制的音頻格式也被DVD-A所采用,它支持立體聲和5.1環(huán)繞聲,1999年由DVD討論會發(fā)布和推出的。脈沖編碼調(diào)制的比特率,從14-bit發(fā)展到16-bit、18-bit、20-bit直到24-bit;采樣頻率從44.1kHz發(fā)展到192kHz。

參考資料來源:中關(guān)村在線-39度發(fā)燒堂:常用音頻格式有什么區(qū)別?

參考資料來源:百度百科-pcm編碼

Android音視頻系列(六):PCM音頻的存儲格式

我們已經(jīng)了解了如何使用AudioRecord錄制pcm音頻,所以我們要了解pcm數(shù)據(jù)的存儲格式,才能對其進行轉(zhuǎn)換。

首先看一下圖片:

以上圖為例,在初始化AudioRecord的時候可以設置錄制的格式:

其中最常用的是ENCODING_PCM_16BIT,在網(wǎng)上查看一下很多的資料,ENCODING_PCM_8BIT已經(jīng)處于半廢棄狀態(tài),隨著科技的進步,就連小孩子的玩具播放的音頻都是16位的。

另外一個參數(shù)是聲道數(shù):

雙聲道會以LRLRLR的格式保存左右聲道的內(nèi)容,組合成一個完成的樣本。

從上圖我們可以總結(jié):8個比特的位置,8位單聲道可以存儲8個樣本,8位雙聲道能存儲個樣本,16位雙聲道能存儲4個,16位雙聲道只能存儲2個。

今天的內(nèi)容非常的簡單,主要是為了下一篇做準備,下一篇我們會實際操作:pcm單聲道和雙聲道的轉(zhuǎn)換。

Android音視頻【十二】使用OpenSLES和AudioTrack進行播放PCM

本節(jié)我們學習下如何播放pcm數(shù)據(jù),在Android中有兩種方法:一種是使用java層的 AudioTrack 方法,一種是使用底層的 OpenSLES 直接在 jni 層調(diào)用系統(tǒng)的 OpenSLES的c方法 實現(xiàn)。

兩種使用場景不一樣:

AudioTrack 一般用于 比如本地播放一個pcm文件/流,又或者播放解碼后的音頻的pcm流,API較簡單。

OpenSLES 一般用于一些播放器中開發(fā)中,比如音頻/視頻播放器,聲音/音頻的播放采用的OpenSLES,一是播放器一般是c/c++實現(xiàn),便于直接在c層調(diào)用OpenSLES的API,二也是如果用AudioTrack進行播放,務必會帶來java和jni層的反射調(diào)用的開銷,API較復雜。

可以根據(jù)業(yè)務自行決定來進行選擇。

AudioTrack的方式使用較簡單,直接在java層。

指定采樣率,采樣位數(shù),聲道數(shù)進行創(chuàng)建。

其中44100是采樣率, AudioFormat.CHANNEL_OUT_STEREO 為雙聲道,還有 CHANNEL_OUT_MONO 單聲道。 AudioFormat.ENCODING_PCM_16BIT 為采樣位數(shù)16位,還有 ENCODING_PCM_8BIT 8位。 minBufferSize 是播放器緩沖的大小,也是根據(jù)采樣率和采樣位數(shù),聲道數(shù) 進行獲取,只有滿足最小的buffer才去操作底層進程播放。

最后一個參數(shù)mode??梢灾付ǖ闹涤?AudioTrack.MODE_STREAM 和 AudioTrack.MODE_STATIC 。

MODE_STREAM 適用于大多數(shù)的場景,比如動態(tài)的處理audio buffer,或者播放很長的音頻文件,它是將audio buffers從java層傳遞到native層。音頻播放時音頻數(shù)據(jù)從Java流式傳輸?shù)絥ative層的創(chuàng)建模式。

MODE_STATIC 適用場景,比如播放很短的音頻,它是一次性將全部的音頻資源從java傳遞到native層。音頻數(shù)據(jù)在音頻開始播放前僅從Java傳輸?shù)絥ative層的創(chuàng)建模式。

是的,就這么一個方法。注意此方法是同步方法,是個耗時方法,一般是開啟一個線程循環(huán)調(diào)用 write 方法進行寫入。

注意在調(diào)用 write 方法前需要調(diào)用 audioTrack.play() 方法開始播放。

因為是pcm裸數(shù)據(jù),無法像mediaplayer一樣提供了API。所以需要自己處理下??梢岳?getPlaybackHeadPosition 方法。

getPlaybackHeadPosition() 的意思是返回以幀為單位表示的播放頭位置

getPlaybackRate() 的意思是返回以Hz為單位返回當前播放采樣率。

所以當前播放時間可以通過如下方式獲取

OpenSLES:(Open Sound Library for Embedded Systems).

OpenSLES是跨平臺是針對嵌入式系統(tǒng)精心優(yōu)化的硬件音頻加速API。使用OpenSLES進行音頻播放的好處是可以不依賴第三方。比如一些音頻或者視頻播放器中都是用OpenSLES進行播放解碼后的pcm的,這樣免去了和java層的交互。

在Android中使用OpenSLES首先需要把Android 系統(tǒng)提供的so鏈接到外面自己的so。在CMakeLists.txt腳本中添加鏈接庫OpenSLES。庫的名字可以在 類似如下目錄中

需要去掉lib

然后導入頭文件即可使用了OpenSLES提供的底層方法了。

創(chuàng)建使用的步驟大致分為:

一個 SLObjectItf 里面可能包含了多個Interface,獲取Interface通過 GetInterface 方法,而 GetInterface 方法的地2個參數(shù) SLInterfaceID 參數(shù)來指定到的需要獲取Object里面的那個Interface。比如通過指定 SL_IID_ENGINE 的類型來獲取 SLEngineItf 。我們可以通過 SLEngineItf 去創(chuàng)建各種Object,例如播放器、錄音器、混音器的Object,然后在用這些Object去獲取各種Interface去實現(xiàn)各種功能。

如上所說,SLEngineItf可以創(chuàng)建混音器的Object。

在創(chuàng)建播放器前需要創(chuàng)建音頻的配置信息(比如采樣率,聲道數(shù),每個采樣的位數(shù)等)

開始播放后會不斷的回調(diào)這個 pcmBufferCallBack 函數(shù)將音頻數(shù)據(jù)壓入隊列

(*pcmBufferQueue)-RegisterCallback(pcmBufferQueue, pcmBufferCallBack, this);

如果想要暫停播放參數(shù)直接設置為SL_PLAYSTATE_PAUSED,若暫停后繼續(xù)播放設置參數(shù)為SL_PLAYSTATE_PLAYING即可。若想要停止播放參數(shù)設置為SL_PLAYSTATE_STOPPED即可。

首先獲取播放器的用于控制音量的接口SLVolumeItf pcmVolumePlay

然后動態(tài)設置

首先也是獲取播放器的用于控制音量的接口SLMuteSoloItf pcmMutePlay

然后動態(tài)設置

看起來控制還是蠻簡單的哈。先熟悉這么多,OpenSLES還是蠻強大的。


新聞標題:包含androidpcm的詞條
文章位置:http://weahome.cn/article/hojsdg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部