国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1)

這篇具有很好參考價(jià)值的文章主要介紹了HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

接口說(shuō)明
接口名 描述
AudioCapturer(AudioCapturerInfo audioCapturerInfo) throws IllegalArgumentException 構(gòu)造函數(shù),設(shè)置錄音相關(guān)音頻參數(shù),使用默認(rèn)錄音設(shè)備。
AudioCapturer(AudioCapturerInfo audioCapturerInfo, AudioDeviceDescriptor devInfo) throws IllegalArgumentException 構(gòu)造函數(shù),設(shè)置錄音相關(guān)音頻參數(shù)并指定錄音設(shè)備。
getMinBufferSize(int sampleRate, int channelCount, int audioFormat) 獲取指定參數(shù)條件下所需的最小緩沖區(qū)大小。
addSoundEffect(UUID type, String packageName) 增加錄音的音頻音效。
start() 開(kāi)始錄音。
read(byte[] data, int offset, int size) 讀取音頻數(shù)據(jù)。
read?(byte[] data, int offset, int size, boolean isBlocking) 讀取音頻數(shù)據(jù)并寫(xiě)入傳入的byte數(shù)組中。
read?(float[] data, int offsetInFloats, int sizeInFloats) 阻塞式讀取音頻數(shù)據(jù)并寫(xiě)入傳入的float數(shù)組中。
read?(float[] data, int offsetInFloats, int sizeInFloats, boolean isBlocking) 讀取音頻數(shù)據(jù)并寫(xiě)入傳入的float數(shù)組中。
read?(short[] data, int offsetInShorts, int sizeInShorts) 阻塞式讀取音頻數(shù)據(jù)并寫(xiě)入傳入的short數(shù)組中。
read?(short[] data, int offsetInShorts, int sizeInShorts, boolean isBlocking) 讀取音頻數(shù)據(jù)并寫(xiě)入傳入的short數(shù)組中。
read?(java.nio.ByteBuffer buffer, int sizeInBytes) 阻塞式讀取音頻數(shù)據(jù)并寫(xiě)入傳入的ByteBuffer對(duì)象中。
read?(java.nio.ByteBuffer buffer, int sizeInBytes, boolean isBlocking) 讀取音頻數(shù)據(jù)并寫(xiě)入傳入的ByteBuffer對(duì)象中。
stop() 停止錄音。
release() 釋放錄音資源。
getSelectedDevice() 獲取輸入設(shè)備信息。
getCurrentDevice() 獲取當(dāng)前正在錄制音頻的設(shè)備信息。
getCapturerSessionId() 獲取錄音的session ID。
getSoundEffects() 獲取已經(jīng)激活的音頻音效列表。
getState() 獲取音頻采集狀態(tài)。
getSampleRate() 獲取采樣率。
getAudioInputSource() 獲取錄音的輸入設(shè)備信息。
getBufferFrameCount?() 獲取以幀為單位的緩沖區(qū)大小。
getChannelCount?() 獲取音頻采集通道數(shù)。
getEncodingFormat?() 獲取音頻采集的音頻編碼格式。
getAudioTime(Timestamp timestamp, Timestamp.Timebase timebase) 獲取一個(gè)即時(shí)的捕獲時(shí)間戳。
開(kāi)發(fā)步驟
  1. 構(gòu)造音頻流參數(shù)的數(shù)據(jù)結(jié)構(gòu)AudioStreamInfo,推薦使用AudioStreamInfo.Builder類(lèi)來(lái)構(gòu)造,模板如下,模板中設(shè)置的均為AudioStreamInfo.Builder類(lèi)的默認(rèn)值,根據(jù)音頻流的具體規(guī)格來(lái)設(shè)置具體參數(shù)。

AudioStreamInfo audioStreamInfo = new AudioStreamInfo.Builder()
.sampleRate(AudioStreamInfo.SAMPLE_RATE_UNSPECIFIED)
.audioStreamFlag(AudioStreamInfo.AudioStreamFlag.AUDIO_STREAM_FLAG_NONE)
.encodingFormat(AudioStreamInfo.EncodingFormat.ENCODING_INVALID)
.channelMask(AudioStreamInfo.ChannelMask.CHANNEL_INVALID)
.streamUsage(AudioStreamInfo.StreamUsage.STREAM_USAGE_UNKNOWN)
.build();

復(fù)制

  1. (可選)通過(guò)采集的采樣率、聲道數(shù)和數(shù)據(jù)格式,調(diào)用getMinBufferSize方法獲取采集任務(wù)所需的最小buffer,參照該buffer值設(shè)置步驟3中AudioCapturerInfo的bufferSizeInBytes。

  2. 使用步驟1創(chuàng)建的音頻流構(gòu)建音頻采集的參數(shù)結(jié)構(gòu)AudioCapturerInfo,推薦使用AudioCapturerInfo.Builder類(lèi)來(lái)構(gòu)造,根據(jù)音頻采集的具體規(guī)格來(lái)設(shè)置具體參數(shù)。以真實(shí)的錄制pcm流為例:

AudioStreamInfo audioStreamInfo = new AudioStreamInfo.Builder()
.encodingFormat(AudioStreamInfo.EncodingFormat.ENCODING_PCM_16BIT) // 16-bit PCM
.channelMask(AudioStreamInfo.ChannelMask.CHANNEL_IN_STEREO) // 雙聲道輸入
.sampleRate(44100) // 44.1kHz
.build();
AudioCapturerInfo audioCapturerInfo = new AudioCapturerInfo.Builder().audioStreamInfo(audioStreamInfo)
.build();

復(fù)制

  1. (可選)設(shè)置采集設(shè)備,如麥克風(fēng)、耳機(jī)等。通過(guò)AudioManager.getDevices(AudioDeviceDescriptor.DeviceFlag.INPUT_DEVICES_FLAG)獲取到設(shè)備支持的輸入設(shè)備,然后依照AudioDeviceDescriptor.DeviceType選擇要選用的輸入設(shè)備類(lèi)型。

  2. 通過(guò)構(gòu)造方法獲取AudioCapturer類(lèi)的實(shí)例化對(duì)象(構(gòu)造AudioCapturer類(lèi)的實(shí)例化對(duì)象前需先去配置錄音權(quán)限–ohos.permission.MICROPHONE),其中步驟3的參數(shù)為必選參數(shù),通過(guò)步驟4獲取的指定錄音設(shè)備為可選參數(shù)。

錄音權(quán)限的申請(qǐng),需要開(kāi)發(fā)者在config.json文件中的“reqPermissions”字段中聲明所需要的權(quán)限。

“module”: {
“reqPermissions”: [
{
“name”: “ohos.permission.MICROPHONE”
},
{

}
]
}

復(fù)制

增加Ability接口的訪問(wèn)權(quán)限控制:

public class MainAbility extends Ability {
@Override
public void onStart(Intent intent) {

requestPermissions(); //在onStart方法中調(diào)用申請(qǐng)的權(quán)限
}
private void requestPermissions() {
String[] permissions = {
SystemPermission.ohos.permission.MICROPHONE, …,…
};
requestPermissionsFromUser(Arrays.stream(permissions)
.filter(permission -> verifySelfPermission(permission) != IBundleManager.PERMISSION_GRANTED).toArray(String[]::new), 0);
}
}

復(fù)制

實(shí)例化AudioCapturer對(duì)象:

AudioCapturer audioCapturer = new AudioCapturer(audioCapturerInfo);

復(fù)制

  1. (可選)設(shè)置采集音效,如降噪、回聲消除等。使用addSoundEffect(UUID type, String packageName)進(jìn)行音效設(shè)置,其中UUID參考類(lèi)SoundEffect中提供的靜態(tài)變量。

  2. (可選)構(gòu)造音頻采集回調(diào),首先繼承抽象類(lèi)AudioCapturerCallback,并實(shí)現(xiàn)抽象方法onCapturerConfigChanged(List configs),然后調(diào)用AudioManager類(lèi)的registerAudioCapturerCallback(AudioCapturerCallback cb)方法進(jìn)行音頻采集回調(diào)注冊(cè)。代碼示例如下:

private AudioManager audioManager = new AudioManager();

public void main() {
AudioCapturerCallback cb = new AudioCapturerCallback() {
@Override
public void onCapturerConfigChanged(List configs) {
configs.forEach(config -> doSomething(config));
}
};
audioManager.registerAudioCapturerCallback(cb);
}

private void doSomething(AudioCapturerConfig config) {

}

復(fù)制

  1. 調(diào)用 AudioCapturer實(shí)例化對(duì)象的start()方法啟動(dòng)采集任務(wù)。

  2. 采集的音頻數(shù)據(jù)讀取為byte流,循環(huán)調(diào)用AudioCapturer的read方法進(jìn)行數(shù)據(jù)讀取。

  3. 調(diào)用AudioCapturer實(shí)例化對(duì)象的stop()方法停止采集。

  4. 采集任務(wù)結(jié)束后,調(diào)用AudioCapturer實(shí)例化對(duì)象的release()釋放資源。

二、音量管理開(kāi)發(fā)
場(chǎng)景介紹

音量管理的主要工作是音量調(diào)節(jié),輸入/輸出設(shè)備管理,注冊(cè)音頻中斷、音頻采集中斷的回調(diào)等。

接口說(shuō)明

當(dāng)前僅系統(tǒng)應(yīng)用支持設(shè)置靜音或響鈴等模式。

接口名 描述
AudioManager() 構(gòu)造函數(shù)。
AudioManager?(Context context) 構(gòu)造函數(shù),由使用者指定應(yīng)用上下文Context。
AudioManager(String packageName) 構(gòu)造函數(shù),由使用者指定包信息。
activateAudioInterrupt(AudioInterrupt interrupt) 激活音頻中斷狀態(tài)檢測(cè)。
deactivateAudioInterrupt(AudioInterrupt interrupt) 去激活音頻中斷狀態(tài)檢測(cè)。
getAudioParameter(String key) 獲取音頻硬件中指定參數(shù)keys所對(duì)應(yīng)的參數(shù)值。
getDevices(DeviceFlag flag) 獲取設(shè)備信息。
getMaxVolume(AudioVolumeType volumeType) 獲取指定音頻流音量最大檔位。
getMinVolume(AudioVolumeType volumeType) 獲取指定音頻流音量最小檔位。
getRingerMode() 獲取鈴聲模式。
getVersion() 獲取音頻套件版本。
getVolume(AudioVolumeType volumeType) 獲取指定音頻流的音量檔位。
isDeviceActive(int deviceType) 判斷設(shè)備的開(kāi)關(guān)狀態(tài)。
isMute(AudioVolumeType volumeType) 特定的流是否處于靜音狀態(tài)。
mute(AudioVolumeType volumeType) 將特定流設(shè)置為靜音狀態(tài)。
setAudioParameter(String key, String value) 為音頻硬件設(shè)置可變數(shù)量的參數(shù)值。
setDeviceActive(int deviceType, boolean state) 設(shè)置設(shè)備的開(kāi)關(guān)狀態(tài)。
setRingerMode(AudioRingMode mode) 設(shè)置鈴聲模式。
setVolume(AudioVolumeType volumeType, int volume) 設(shè)置特定流的音量檔位。
unmute(AudioVolumeType volumeType) 將特定流設(shè)置為非靜音狀態(tài)。
setMasterMute(boolean isMute) 將主音頻輸出設(shè)備設(shè)置為靜音或取消靜音狀態(tài)。
setMicrophoneMute(boolean isMute) 將麥克風(fēng)設(shè)置為靜音或取消靜音狀態(tài)。
isMicrophoneMute() 判斷麥克風(fēng)是否處于靜音狀態(tài)。
getActiveCapturerConfigs() 獲取設(shè)備當(dāng)前激活的音頻采集任務(wù)的配置信息。
registerAudioCapturerCallback(AudioCapturerCallback cb) 注冊(cè)音頻采集參數(shù)變更回調(diào)。
unregisterAudioCapturerCallback?(AudioCapturerCallback cb) 去注冊(cè)音頻采集參數(shù)變更回調(diào)。
getRingerUri(Context context, RingToneType type) 獲取指定鈴聲類(lèi)型的Uri。
setRingerUri(Context context, RingToneType type, Uri uri) 設(shè)置指定鈴聲類(lèi)型的Uri。
changeVolumeBy?(AudioVolumeType volumeType, int index) 將當(dāng)前音量增加或減少一定量。
connectBluetoothSco?() 連接到藍(lán)牙SCO通道。
disconnectBluetoothSco?() 斷開(kāi)與藍(lán)牙SCO通道的連接。
getActiveRendererConfigs?() 獲取有關(guān)活動(dòng)音頻流信息,包括使用類(lèi)型、內(nèi)容類(lèi)型和標(biāo)志。
getMasterOutputFrameCount?() 獲取主輸出設(shè)備緩沖區(qū)中的幀數(shù)。
getMasterOutputSampleRate?() 獲取主輸出設(shè)備的采樣率。
isMasterMute?() 檢查音頻流是否全局靜音。
isStreamActive?(AudioVolumeType volumeType) 檢查指定類(lèi)型的音頻流是否處于活動(dòng)狀態(tài)。
makeSessionId?() 創(chuàng)建一個(gè)會(huì)話ID,AudioRendererInfo.Builder.sessionID(int)將使用該會(huì)話ID來(lái)設(shè)置音頻播放參數(shù),而AudioCapturerInfo.Builder.sessionID(int)將使用該會(huì)話ID來(lái)設(shè)置記錄參數(shù)。
registerAudioRendererCallback?(AudioRendererCallback cb) 注冊(cè)音頻播放參數(shù)變更回調(diào)。
unregisterAudioRendererCallback?(AudioRendererCallback cb) 去注冊(cè)音頻播放參數(shù)變更回調(diào)。
開(kāi)發(fā)步驟

音量管理提供的都是獨(dú)立的功能,一般作為音頻播放和音頻采集的功能補(bǔ)充來(lái)使用。開(kāi)發(fā)者根據(jù)具體使用場(chǎng)景選擇方法即可。

音頻中斷狀態(tài)檢測(cè)和音頻采集中斷狀態(tài)檢測(cè)的使用樣例,請(qǐng)參考音頻播放和音頻采集的開(kāi)發(fā)步驟。

三、短音播放開(kāi)發(fā)
場(chǎng)景介紹

短音播放主要負(fù)責(zé)管理音頻資源的加載與播放、tone音的生成與播放以及系統(tǒng)音播放。

接口說(shuō)明

短音播放開(kāi)放能力分為音頻資源、tone音和系統(tǒng)音三部分,均定義在SoundPlayer類(lèi)

接口名 描述
SoundPlayer(int taskType) 構(gòu)造函數(shù),僅用于音頻資源。
createSound(String path) 從指定的路徑加載音頻數(shù)據(jù)生成短音資源。
createSound?(Context context, int resourceId) 根據(jù)應(yīng)用程序上下文合音頻資源ID加載音頻數(shù)據(jù)生成短音資源。
createSound?(AssetFD assetFD) 從指定的AssetFD實(shí)例加載音頻數(shù)據(jù)生成短音資源。
createSound?(java.io.FileDescriptor fd, long offset, long length) 根據(jù)文件描述符從文件加載音頻數(shù)據(jù)生成音頻資源。
createSound?(java.lang.String path, AudioRendererInfo rendererInfo) 根據(jù)從指定路徑和播放信息加載音頻數(shù)據(jù)生成短音資源。
setOnCreateCompleteListener?(SoundPlayer.OnCreateCompleteListener listener) 設(shè)置聲音創(chuàng)建完成的回調(diào)。
setOnCreateCompleteListener?(SoundPlayer.OnCreateCompleteListener listener, boolean isDiscarded) 設(shè)置用于聲音創(chuàng)建完成的回調(diào),并根據(jù)指定的isDiscarded標(biāo)志位確定是否丟棄隊(duì)列中的原始回調(diào)通知消息。
deleteSound(int soundID) 刪除短音同時(shí)釋放短音所占資源。
pause(int taskID) 根據(jù)播放任務(wù)ID暫停對(duì)應(yīng)的短音播放。
play(int soundID) 使用默認(rèn)參數(shù)播放短音。
play(int soundID, SoundPlayerParameters parameters) 使用指定參數(shù)播放短音。
resume(int taskID) 恢復(fù)短音播放任務(wù)。
setLoop(int taskID, int loopNum) 設(shè)置短音播放任務(wù)的循環(huán)次數(shù)。
setPlaySpeedRate(int taskID, float speedRate) 設(shè)置短音播放任務(wù)的播放速度。

自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過(guò),也去過(guò)華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。

深知大多數(shù)HarmonyOS鴻蒙開(kāi)發(fā)工程師,想要提升技能,往往是自己摸索成長(zhǎng)或者是報(bào)班學(xué)習(xí),但對(duì)于培訓(xùn)機(jī)構(gòu)動(dòng)則幾千的學(xué)費(fèi),著實(shí)壓力不小。自己不成體系的自學(xué)效果低效又漫長(zhǎng),而且極易碰到天花板技術(shù)停滯不前!

因此收集整理了一份《2024年HarmonyOS鴻蒙開(kāi)發(fā)全套學(xué)習(xí)資料》,初衷也很簡(jiǎn)單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時(shí)減輕大家的負(fù)擔(dān)。
HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1),2024年程序員學(xué)習(xí),harmonyos,學(xué)習(xí),音視頻
HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1),2024年程序員學(xué)習(xí),harmonyos,學(xué)習(xí),音視頻
HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1),2024年程序員學(xué)習(xí),harmonyos,學(xué)習(xí),音視頻

既有適合小白學(xué)習(xí)的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗(yàn)的小伙伴深入學(xué)習(xí)提升的進(jìn)階課程,基本涵蓋了95%以上HarmonyOS鴻蒙開(kāi)發(fā)知識(shí)點(diǎn),真正體系化!

由于文件比較大,這里只是將部分目錄大綱截圖出來(lái),每個(gè)節(jié)點(diǎn)里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實(shí)戰(zhàn)項(xiàng)目、講解視頻,并且會(huì)持續(xù)更新

如果你覺(jué)得這些內(nèi)容對(duì)你有幫助,可以添加VX:vip204888 (備注鴻蒙獲取)
HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1),2024年程序員學(xué)習(xí),harmonyos,學(xué)習(xí),音視頻

一個(gè)人可以走的很快,但一群人才能走的更遠(yuǎn)。不論你是正從事IT行業(yè)的老鳥(niǎo)或是對(duì)IT行業(yè)感興趣的新人,都?xì)g迎掃碼加入我們的的圈子(技術(shù)交流、學(xué)習(xí)資源、職場(chǎng)吐槽、大廠內(nèi)推、面試輔導(dǎo)),讓我們一起學(xué)習(xí)成長(zhǎng)!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-855830.html

5%以上HarmonyOS鴻蒙開(kāi)發(fā)知識(shí)點(diǎn),真正體系化!**

由于文件比較大,這里只是將部分目錄大綱截圖出來(lái),每個(gè)節(jié)點(diǎn)里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實(shí)戰(zhàn)項(xiàng)目、講解視頻,并且會(huì)持續(xù)更新

如果你覺(jué)得這些內(nèi)容對(duì)你有幫助,可以添加VX:vip204888 (備注鴻蒙獲?。?/strong>
[外鏈圖片轉(zhuǎn)存中…(img-aUbs4k59-1712669789999)]

一個(gè)人可以走的很快,但一群人才能走的更遠(yuǎn)。不論你是正從事IT行業(yè)的老鳥(niǎo)或是對(duì)IT行業(yè)感興趣的新人,都?xì)g迎掃碼加入我們的的圈子(技術(shù)交流、學(xué)習(xí)資源、職場(chǎng)吐槽、大廠內(nèi)推、面試輔導(dǎo)),讓我們一起學(xué)習(xí)成長(zhǎng)!

到了這里,關(guān)于HarmonyOS學(xué)習(xí)路之開(kāi)發(fā)篇—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 二(1)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 鴻蒙HarmonyOS開(kāi)發(fā)實(shí)戰(zhàn)—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 一)

    鴻蒙HarmonyOS開(kāi)發(fā)實(shí)戰(zhàn)—多媒體開(kāi)發(fā)(音頻開(kāi)發(fā) 一)

    HarmonyOS音頻模塊支持音頻業(yè)務(wù)的開(kāi)發(fā),提供音頻相關(guān)的功能,主要包括音頻播放、音頻采集、音量管理和短音播放等。 基本概念 采樣 采樣是指將連續(xù)時(shí)域上的模擬信號(hào)按照一定的時(shí)間間隔采樣,獲取到離散時(shí)域上離散信號(hào)的過(guò)程。 采樣率 采樣率為每秒從連續(xù)信號(hào)中提取并

    2024年01月24日
    瀏覽(30)
  • Android多媒體功能開(kāi)發(fā)(11)——使用AudioRecord類(lèi)錄制音頻

    Android多媒體功能開(kāi)發(fā)(11)——使用AudioRecord類(lèi)錄制音頻

    AudioRecord類(lèi)優(yōu)點(diǎn)是能錄制到緩沖區(qū),能夠?qū)崿F(xiàn)邊錄邊播(AudioRecord + AudioTrack)以及對(duì)音頻的實(shí)時(shí)處理(如QQ電話)。缺點(diǎn)是輸出是PCM格式的原始采集數(shù)據(jù),如果直接保存成音頻文件,不能夠被播放器播放,所以必須用代碼實(shí)現(xiàn)數(shù)據(jù)編碼以及壓縮。 使用AudioRecord錄音的基本步驟是

    2023年04月09日
    瀏覽(24)
  • 軟考:中級(jí)軟件設(shè)計(jì)師:多媒體基礎(chǔ),音頻,圖像,顏色,多媒體技術(shù)的種類(lèi),圖像音頻視頻的容量計(jì)算,常見(jiàn)的多媒體標(biāo)準(zhǔn)

    軟考:中級(jí)軟件設(shè)計(jì)師:多媒體基礎(chǔ),音頻,圖像,顏色,多媒體技術(shù)的種類(lèi),圖像音頻視頻的容量計(jì)算,常見(jiàn)的多媒體標(biāo)準(zhǔn)

    提示:系列被面試官問(wèn)的問(wèn)題,我自己當(dāng)時(shí)不會(huì),所以下來(lái)自己復(fù)盤(pán)一下,認(rèn)真學(xué)習(xí)和總結(jié),以應(yīng)對(duì)未來(lái)更多的可能性 關(guān)于互聯(lián)網(wǎng)大廠的筆試面試,都是需要細(xì)心準(zhǔn)備的 (1)自己的科研經(jīng)歷, 科研內(nèi)容 ,學(xué)習(xí)的相關(guān)領(lǐng)域知識(shí),要熟悉熟透了 (2)自己的實(shí)習(xí)經(jīng)歷,做了 什

    2024年02月09日
    瀏覽(37)
  • 多媒體音頻焦點(diǎn)淺析

    多個(gè)音源可以同時(shí)向同一個(gè)輸出流進(jìn)行播放音頻,如果沒(méi)有音頻焦點(diǎn)管控,就會(huì)出現(xiàn)多個(gè)音源同時(shí)播放的現(xiàn)象,給用戶帶來(lái)不便;而Android為了避免多個(gè)音源同時(shí)播放,就引入了音頻焦點(diǎn)的概念,所有音頻應(yīng)用都統(tǒng)一按照音頻焦點(diǎn)的規(guī)定執(zhí)行,就可以避免該現(xiàn)象發(fā)生。 當(dāng)應(yīng)用

    2024年02月13日
    瀏覽(36)
  • 鴻蒙實(shí)戰(zhàn)多媒體運(yùn)用:【音頻組件】

    鴻蒙實(shí)戰(zhàn)多媒體運(yùn)用:【音頻組件】

    音頻組件用于實(shí)現(xiàn)音頻相關(guān)的功能,包括音頻播放,錄制,音量管理和設(shè)備管理。 圖 1 ?音頻組件架構(gòu)圖 基本概念 采樣 采樣是指將連續(xù)時(shí)域上的模擬信號(hào)按照一定的時(shí)間間隔采樣,獲取到離散時(shí)域上離散信號(hào)的過(guò)程。 采樣率 采樣率為每秒從連續(xù)信號(hào)中提取并組成離散信號(hào)

    2024年03月10日
    瀏覽(90)
  • 零基礎(chǔ)入門(mén)多媒體音頻(6)-alsa(2)

    PCM接口 ALSA的PCM中間層非常有用,每個(gè)驅(qū)動(dòng)只需要實(shí)現(xiàn)底層的功能來(lái)訪問(wèn)硬件。要使用PCM層,你需要先引用 sound/pcm.h頭文件。此外,如果你要使用和hw_param相關(guān)的函數(shù),sound/pcm_params.h也是必須的。 每個(gè)聲卡設(shè)備最多擁有4個(gè)PCM實(shí)例。一個(gè)PCM實(shí)例對(duì)應(yīng)一個(gè)PCM設(shè)備文件。實(shí)例數(shù)量的

    2024年04月14日
    瀏覽(87)
  • 【python】《多媒體技術(shù)與應(yīng)用》實(shí)驗(yàn)報(bào)告「數(shù)字音頻處理」

    【python】《多媒體技術(shù)與應(yīng)用》實(shí)驗(yàn)報(bào)告「數(shù)字音頻處理」

    ?《多媒體技術(shù)與應(yīng)用》 實(shí)驗(yàn)報(bào)告 實(shí)驗(yàn)名稱(chēng) 數(shù)字視頻處理 實(shí)驗(yàn)時(shí)間 2022/4/25 姓名 班級(jí) 計(jì)非201 學(xué)號(hào) 成績(jī) 一.? 實(shí)驗(yàn)?zāi)康?1. 掌握數(shù)字音頻的讀取與打開(kāi); 2. 掌握數(shù)字音頻信號(hào)的頻譜分析; 3. 驗(yàn)證 PCM 編碼算法。 二.實(shí)驗(yàn)原理 聲音是由物體振動(dòng)而產(chǎn)生的,聲波的三要素是頻率

    2023年04月16日
    瀏覽(23)
  • Qt 多媒體音頻模擬按鈕發(fā)音(音視頻啟動(dòng))

    Qt 多媒體音頻模擬按鈕發(fā)音(音視頻啟動(dòng))

    ## 項(xiàng)目演示 平臺(tái) :windows或者ubuntu? 要求 :平臺(tái)需要支持音頻播放功能 文件格式 :.wav 可以使用剪映生成,音頻部分,我這里是簡(jiǎn)短的音樂(lè) # Qt 多媒體簡(jiǎn)介 Qt QSound是Qt框架中的一個(gè)類(lèi),用于播放音頻文件。它可以在Qt應(yīng)用程序中實(shí)現(xiàn)簡(jiǎn)單的音頻播放功能,包括播放、暫停和停

    2024年02月03日
    瀏覽(23)
  • (八)穿越多媒體奇境:探索Streamlit的圖像、音頻與視頻魔法

    (八)穿越多媒體奇境:探索Streamlit的圖像、音頻與視頻魔法

    歡迎各位讀者來(lái)到“最全Streamlit教程”專(zhuān)欄系列!如果您正在尋找一種簡(jiǎn)單而強(qiáng)大的方式來(lái)創(chuàng)建交互式數(shù)據(jù)應(yīng)用程序,那么Streamlit無(wú)疑是您的最佳選擇。作為該領(lǐng)域的熱門(mén)框架,Streamlit讓數(shù)據(jù)科學(xué)家、開(kāi)發(fā)者和愛(ài)好者能夠以前所未有的速度構(gòu)建出引人入勝的數(shù)據(jù)可視化工具。

    2024年02月13日
    瀏覽(28)
  • [前端筆記——多媒體與嵌入] 6.HTML 中的圖片+視頻+音頻內(nèi)容

    [前端筆記——多媒體與嵌入] 6.HTML 中的圖片+視頻+音頻內(nèi)容

    可以用 img 元素來(lái)把圖片放到網(wǎng)頁(yè)上。它是一個(gè)空元素(它不需要包含文本內(nèi)容或閉合標(biāo)簽),最少只需要一個(gè) src (一般讀作其全稱(chēng) * *source) * *來(lái)使其生效。src 屬性包含了指向我們想要引入的圖片的路徑,可以是相對(duì)路徑或絕對(duì) URL,就像 a 元素的 href 屬性一樣。 屬性是

    2023年04月25日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包