Android 平台上音视频系统的研究及播放器开发.pdf(6)

电脑杂谈  发布时间:2019-06-16 15:04:01  来源:网络整理

MediaPlayerService的内部类 AudioOutput和 AudioCache 都 继承自 AudioSink ,AudioOutput 通过调用 AudioTrack 来控制媒体文件中音频流的输出, AudioCache 用来实现音频流的缓存功能。MediaPlayerService 中有两个用来创建播放器的 createPlayer函数。在调用 setDataSource 设置数据源时,根据传入的URL 创建几种不同的MediaPlayerBase , 然后调用 createPlayer 函数根据文件的扩展名创建不同的播放器。如果播放器类型 是 PV_PLAYER ,通过 newPVPlayer() 创建 PVPlayer 播放器 ;如果类型是 SONIVOX_PLAYER,通过 new MidiFile()创建 midi 文件类型的播放器;如果类型 是 VORBIS_PLAYER ,通过 new VorbisPlayer()创建 Ogg Vorbis 播放器。PVPlayer 播放器是通过 OpenCore 来实现的,其它两种播放器分别通过 VorbisPlayer.cpp 和 MidiFile.cpp 来实现,他们都继承自 MediaPlayerBase 。

在音频播放方面率先支持mp3、wma、wav、ogg、aac、 flac等音频格式文件,及高清电影音频解码dts、dts-hd、dubly、dubly hd等全解码音频芯片,号称全能之王。6、支持音视频格式全兼容,支持rmvb、rm、mkv、mp4等多种流媒体视频格式解码,支持ape、flac、aac、mp3等音频格式解码,支持无损dvd音频、蓝光dvd及hd-dvd音频内容回放及内容保护,同时支持云端播放。ffdshow可以称得上是全能的解码、编码器.最初ffdshow只是mpeg视频,不过现在他能做到的远不止于此.它能够解码的视频格式已经远远超出了mepg4的范围,包括indeo video,wmv,mpeg2等等.同时,它也提供了丰富的加工处理选项,可以锐化画面,调节画面的亮度等等.不止是视频,ffdshow现在同样可以解码音频,ac3、mp3等音频格式都可支持.并且可以外挂winamp 的dsp插件,来改善听觉效果.可以说现在的ffdshow已经是windows平台多媒体播放的非常出色。

3.1.5 音频系统的硬件抽象层音频系统的硬件抽象层是音频系统的第四层,是音频服务 AudioFlinger 和音频 硬件设备的接口。音频设备种类很多,Android不可能为每种设备都提供支持, Android 提供了硬件抽象层来适配底层的音频设备。音频硬件抽象层可以有不同的 实现方式,它的接口路径为 hardware/libhardware_legacy/include/hardware_legacy, 其中主要的文件是 AudioHardwareInterface.h 。实现硬件抽象层时,必须实现文件 中定义的 AudioStreamIn 、AudioStreamOut 和 AudioHardwareInterface 三个类,并 实现 createAudioHardware 函数。AudioStreamIn 是音频的输入环节,定义 read() 函 数来读入音频数据。AudioStreamOut 是音频的输出环节,定义 wirte() 函数来写出 音频数据。音频硬件抽象层代码将被编译成动态库 libaudio.so,AudioFlinger 会连 接这个动态库,并调用 createAudioHardware 函数来获取接口。

只能使用硬件抽象层(hal),假如硬件不能支持应用程序,将不再寻求硬件仿真层(hel)的支持而返回错误信号。只能使用硬件抽象层(hal),如果硬件不能支持应用程序,将不再寻求硬件仿真层(hel)的支持而返回错误信号。这样做以后、directsetup、direct3d,使硬件操作的效率大打折扣:directdraw,用于联系应用程序和硬件自身,在内核与硬件之间有一层抽象层,但这样以来,专门对硬件进行屏蔽抽象、autoplay 等,directx 的主要好处有两个,它对发展 windows 平台下的多媒体应用程序和电脑游戏起到了关键的作用。

2.2heritrix系统结构heritrix是一个爬虫框架,其组织结构如图2.1所示,包含了整个组件和抓取流程:图2.1 heritrix系统架构heritrix采用的是模块化的设计,各个模块由一个控制器类(crawlcontroller类)来协调,控制器是整体的核心。系统包含ht9032来电号码检测模块如图2所示,dtmf信号检测模块如图3所示,e2prom存储模块和电磁驱动模块。如图i所示,本实施例提供的转向架落轮装置包括支撑框架i、用于驱动支撑框架 i上下移动的可升降支腿2和用于支撑轮对的过渡轨支撑板3。

我国移动应用市场已经形成集中在bat、网易、京东或今日头条等头部公司的局面,但2017年短视频和图像领域黑马应用频现。h5之所以能引发如此广泛的效应,根本在于它不再只是一种标记语言,它为下一代互联网提供了全新的框架和平台,包括提供免插件的音视频、图像、本体存储以及更多酷炫而且重要的功能,并使这些应用标准化和开放化,从而使互联网也能够轻松实现类似桌面的应用体验。html5是html最新的修订版本,为下一代网页提供全新的框架和平台,其中包括提供免插件的音视频、图像、本体存储以及更多重要功能,并使这些应用标准化,广州html5培训从而使网页能够轻松实现类似桌面的应用体验。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/bofangqi/article-106431-6.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 李雅
      李雅

      好机智幽默得体不抖包袱真的很棒

    • 苏芮
      苏芮

      沉淀七年而崛起

    热点图片
    拼命载入中...