CocosCreator3.8研究笔记(十三)CocosCreator 音频资源理解(1)

简介: CocosCreator3.8研究笔记(十三)CocosCreator 音频资源理解

1、 Cocos Creator 支持音频格式


目前 Cocos Creator 支持以下格式的音频文件:

音频格式 说明
.ogg .ogg 是一种开源的有损音频压缩格式,与同类型的音频压缩格式相比,优点在于支持多声道编码,采用更加先进的声学模型来减少损失音质,同时文件大小在相同条件下比 .mp3 格式小。目前 Android 系统所有的内置铃声也都使用 .ogg 文件。
.mp3 .mp3 是最常见的一种数字音频编码和有损压缩格式。通过舍弃 PCM 音频资料中对人类听觉不重要的部分,达到压缩成较小文件的目的。但对于大多数用户的听觉感受来说,压缩后的音质与压缩前的相比并没有明显的下降。MP3 被大量软硬件支持,应用广泛,是目前的主流。
.wav .wav 是微软与 IBM 公司专门为 Windows 开发的一种标准数字音频文件,该文件能记录各种单声道或立体声的声音信息,并能保证声音不失真,因为音频格式未经过压缩。但文件占用相对较大。
.mp4 .mp4 是一套用于音频、视频信息的压缩编码标准,对于不同的对象可采用不同的编码算法,从而进一步提高压缩效率。
.m4a .m4a 是仅有音频的 MP4 文件。音频质量是压缩格式中非常高的,同时在相同的比特率下,文件占用更小。


2、 Cocos Creator 音频资源生成

Cocos Creator 直接将音频文件拖拽到 资源管理器 面板, 会生成相应的音频资源(AudioClip)。




3、AudioSource 组件播放音乐

AudioSource 组件的属性说明:

属性 说明
Clip 添加的用于播放的音频资源,默认为空,点击后面的箭头按钮即可选择。
Loop 是否循环播放
PlayOnAwake 是否在游戏运行(组件激活)时自动播放音频
Volume 音量大小,范围在 0~1 之间


使用AudioSource 组件播放音频步骤:

(1)、在层级管理器中,创建播放音频的节点



(2)、资源管理器中添加脚本

这里测试命名为:AudioSourceControl.ts



(3)、在 层级管理器 中绑定脚本

将资源管理器中的脚本文件AudioSourceControl.ts 拖拽到层级管理器中:



(4)、层级管理器中添加 AudioSource 组件

点击 属性检查器 下方的 添加组件 按钮,选择 Audio -> AudioSource 即可添加 AudioSource 组件到节点上。



添加节点后如下:


将资源管理器中的音频文件拖拽到属性检查器中,audiosource 组件的 clip 资源中:


(5)、AudioSourceControl.ts 中添加AudioSource 属性,并实现播放声音


import { _decorator, Component,  AudioSource,  assert } from 'cc';
const { ccclass, property} = _decorator;
@ccclass('AudioSourceControl')
export class AudioSourceControl extends Component {
   @property(AudioSource)
   public audioSource: AudioSource = null!;
    onLoad() {
       // 获取 AudioSource 组件
       const audioSource = this.node.getComponent(AudioSource)!;
       // 检查是否含有 AudioSource,如果没有,则输出错误消息
       assert(audioSource);
       // 将组件赋到全局变量 _audioSource 中
       this.audioSource = audioSource;
       console.log(" this._audioSource==" +  this.audioSource)
   }
   start() {
       this.play()
   }
   update(deltaTime: number) {
   }
   play () {
       // 播放音乐
       this.audioSource.play();
       console.log(" this._audioSource play")
   }
   pause () {
       // 暂停音乐
       this.audioSource.pause();
   }
}




相关文章
CocosCreator3.8研究笔记(十三)CocosCreator 音频资源理解(2)
CocosCreator3.8研究笔记(十三)CocosCreator 音频资源理解
345 0
|
存储
CocosCreator3.8研究笔记(十一)CocosCreator Prefab(预制件)理解
CocosCreator3.8研究笔记(十一)CocosCreator Prefab(预制件)理解
541 0
|
存储 JSON 缓存
CocosCreator3.8研究笔记(十五)CocosCreator 资源管理Asset Bundle
CocosCreator3.8研究笔记(十五)CocosCreator 资源管理Asset Bundle
539 0
|
API iOS开发 MacOS
CocosCreator3.8研究笔记(九)CocosCreator 场景资源的理解
CocosCreator3.8研究笔记(九)CocosCreator 场景资源的理解
186 0
CocosCreator3.8研究笔记(九)CocosCreator 场景资源的理解
|
JSON JavaScript 前端开发
CocosCreator3.8研究笔记(四)CocosCreator 脚本说明及使用(上)
CocosCreator3.8研究笔记(四)CocosCreator 脚本说明及使用(上)
581 0
CocosCreator3.8研究笔记(四)CocosCreator 脚本说明及使用(上)
|
算法 图形学
Unity——导航系统补充说明
Unity——导航系统补充说明
|
索引 Windows
CocosCreator3.8研究笔记(十二)CocosCreator 字体资源理解
CocosCreator3.8研究笔记(十二)CocosCreator 字体资源理解
453 0
|
缓存 前端开发 算法
CocosCreator3.8研究笔记(十六)CocosCreator 2D对象
CocosCreator3.8研究笔记(十六)CocosCreator 2D对象
366 0
|
开发者
CocosCreator3.8研究笔记(七)CocosCreator 节点和组件的介绍
CocosCreator3.8研究笔记(七)CocosCreator 节点和组件的介绍
188 0
|
BI API
CocosCreator3.8研究笔记(八)CocosCreator 节点和组件的使用
CocosCreator3.8研究笔记(八)CocosCreator 节点和组件的使用
515 0