MediaPlayer和AudioTrack播放Audio的区别与联系

2025-03-19 17:35:47
推荐回答(1个)
回答1:

  • MediaPlayer

  1. 定义

    媒体播放器,又称媒体播放机,通常是指电脑中用来播放多媒体的播放软件,把解码器聚集在一起,产生播放的功能。

  2. 发展领域

    一些广告画面的播放器也可称为媒体播放器,如分众传媒的视频媒体播放器、众普传媒的镜面媒体播放器等;公交电视同样是一种媒体播放器。

  3. 类型

    flash播放器,自动图片播放器 V1.8。

  4. 功能

    指定目录可以显示出该目录下的所有类型的图片文件包括jpg,gif,jpeg,png,bmp等格式。

  • AudioTrack

  1. 定义

    AudioTrack主要是用来播放声音的。

  2. 功能

    AudioTrack贯穿了Java层,JNI层和Native层。

  3. 原理

    MediaPlayer在framework层还是会创建AudioTrack,把解码后的PCM数流传递给AudioTrack,AudioTrack再传递给AudioFlinger进行混音,然后才传递给硬件播放,所以是MediaPlayer包含了AudioTRack。

  • 两者区别

  1. MediaPlayer可以播放多种格式的声音文件,例如MP3,AAC,WAV,OGG,MIDI等。

  2. MediaPlayer会在framework层创建对应的音频解码器。

  3. AudioTrack只能播放已经解码的PCM流,如果是文件的话只支持wav格式的音频文件,因为wav格式的音频文件大部分都是PCM流。

  4. AudioTrack不创建解码器,所以只能播放不需要解码的wav文件。