当前位置: 首页 > news >正文

可以进网站的软件wordpress otp

可以进网站的软件,wordpress otp,WordPress防刷登录,海澜之家的网站建设目标Android的音视频开发是我暂定的一个职业发展的一个方向#xff0c;通过自学记录一些记了又忘记的知识。音频基础知识采样率(samplerate)蓝色代表模拟音频信号#xff0c;红色的点代表采样得到的量化数值。采用就是把模拟信号数字化的过程#xff0c;不仅仅是音频需要采样通过自学记录一些记了又忘记的知识。音频基础知识采样率(samplerate) 蓝色代表模拟音频信号红色的点代表采样得到的量化数值。采用就是把模拟信号数字化的过程不仅仅是音频需要采样所有的模拟信号都需要通过采样转换为可以用0101来表示的数字信号。常用的音频采样频率有8kHz、11.025kHz、22.05kHz、16kHz、37.8kHz、44.1kHz、48kHz、96kHz、192kHz等。人耳可以听到的声波频率范围20-20000Hz。为了保证声音不失真采样频率应在40kHz以上。AudioRecord构造参数中的sampleRateInHz。量化精度(位宽)上图中每一个红色的采样点都需要用一个数值来表示大小这个数值的数据类型大小可以是4bit、8bit、16bit、32bit等等位数越多表示得就越精细声音质量自然就越好当然数据量也会成倍增大。AudioRecord构造参数中的audioFormat。声道数(channels)由于音频的采集和播放是可以叠加的因此可以同时从多个音频源采集声音并分别输出到不同的扬声器故声道数一般表示声音录制时的音源数量或回放时相应的扬声器数量。AudioRecord 构造参数中的channelConfig。音频帧(frame)视频我们知道每一帧是一张图片音频数据是流式的没有明确的一帧帧的概念但是在音频处理的时候一般取2.5ms-60ms为单位数据量的一帧音频。假设某通道音频信号采样率为8kHz,位宽位16bit20ms一帧双通道那么一帧音频的大小为8000*16bit*0.02*25120bit640byte音频编码是将音频采样数据(PCM等)压缩成为音频码流从而降低音频的数据量。模拟的音频信号转换为数字信号需要经过采样和量化量化的过程被称之为编码根据不同的量化策略产生了许多不同的编码方式常见的编码方式有PCM 和 ADPCM为什么要音频编码存储一秒钟采样率为44.1KHz位深为16bit双声道的PCM编码的音频信号需要44100*16bit*2 / 8/1024 172.2KB的空间那么1分钟则约为10.09M。这对大部分用户是不可接受的。只有2种方法降低采样指标或者压缩。音频压缩降低采样是不可取的因此就有了各种各样的压缩方式。有两类主要的音频文件格式有损文件格式 是基于声学心理学的模型除去人类很难或根本听不到的声音。无损格式例如PCMWAVALSALACTAKFLACAPEWavPack(WV)有损格式例如MP3AACWMAOgg。根据采样率和采样大小可以得知相对自然界的信号音频编码最多只能做到无限接近至少目前的技术只能这样了相对自然界的信号任何数字音频编码方案都是有损的因为无法完全还原。在计算机应用中能够达到最高保真水平的就是PCM编码被广泛用于素材保存及音乐欣赏CD、DVD以及我们常见的WAV文件中均有应用。因此PCM约定俗成了无损编码因为PCM代表了数字音频中最佳的保真水准并不意味着PCM就能够确保信号绝对保真PCM也只能做到最大程度的无限接近。我们而习惯性的把MP3列入有损音频编码范畴是相对PCM编码的。Android如何采集音频Android SDK对于音频采集提供两套APIMediaRecorder和AudioRecorder前者是偏上层的一个API可以直接把手机麦克风录入的音频数据进行编码压缩为AMRMP3等并保存文件。后者接近底层可以灵活控制得到原始的一帧帧PCM音频数据。当要简单的把数据采集为音频文件就使用MediaRecorder如果要对音频做进一步的算法处理就使用AudioRecorder。什么是PCM音频数据PCM(Pulse Code Modulation)也被称为脉冲编码调制。PCM音频数据是未经压缩的音频采样数据裸流它是由模拟信号经过采样、量化、编码转换成的标准的数字音频数据。(详细参考)AudioRecord简介AudioRecord输出是PCM语音数据如果保存成音频文件是不能够被播放器播放的所以必须先写代码实现数据编码以及压缩。AudioRecord适用于对采集的音频数据进行二次处理的我们首先看到代码AudioRecord类的构造函数。/*** Class constructor.* Though some invalid parameters will result in an {link IllegalArgumentException} exception,* other errors do not. Thus you should call {link #getState()} immediately after construction* to confirm that the object is usable.* param audioSource the recording source.* See {link MediaRecorder.AudioSource} for the recording source definitions.* param sampleRateInHz the sample rate expressed in Hertz. 44100Hz is currently the only* rate that is guaranteed to work on all devices, but other rates such as 22050,* 16000, and 11025 may work on some devices.* {link AudioFormat#SAMPLE_RATE_UNSPECIFIED} means to use a route-dependent value* which is usually the sample rate of the source.* {link #getSampleRate()} can be used to retrieve the actual sample rate chosen.* param channelConfig describes the configuration of the audio channels.* See {link AudioFormat#CHANNEL_IN_MONO} and* {link AudioFormat#CHANNEL_IN_STEREO}. {link AudioFormat#CHANNEL_IN_MONO} is guaranteed* to work on all devices.* param audioFormat the format in which the audio data is to be returned.* See {link AudioFormat#ENCODING_PCM_8BIT}, {link AudioFormat#ENCODING_PCM_16BIT},* and {link AudioFormat#ENCODING_PCM_FLOAT}.* param bufferSizeInBytes the total size (in bytes) of the buffer where audio data is written* to during the recording. New audio data can be read from this buffer in smaller chunks* than this size. See {link #getMinBufferSize(int, int, int)} to determine the minimum* required buffer size for the successful creation of an AudioRecord instance. Using values* smaller than getMinBufferSize() will result in an initialization failure.* throws java.lang.IllegalArgumentException*/public AudioRecord(int audioSource, int sampleRateInHz, int channelConfig, int audioFormat,int bufferSizeInBytes)看这个构造函数的参数的解释可以明白个七七八八。具体的介绍如下audioSource音频采集的输入源可选的值以常量的形式定义在 MediaRecorder.AudioSource 类中常用的值包括DEFAULT(默认)VOICE_RECOGNITION(用于语音识别等同于DEFAULT)MIC(由手机麦克风输入)VOICE_COMMUNICATION(用于VoIP应用)等等。sampleRateInHz采样率注意目前44100Hz是唯一可以保证兼容所有Android手机的采样率。channelConfig通道数的配置可选的值以常量的形式定义在 AudioFormat 类中常用的是 CHANNEL_IN_MONO(单通道)CHANNEL_IN_STEREO(双通道)audioFormat这个参数是用来配置“数据位宽”的可选的值也是以常量的形式定义在 AudioFormat 类中常用的是 ENCODING_PCM_16BIT(16bit)ENCODING_PCM_8BIT(8bit)注意前者是可以保证兼容所有Android手机的。bufferSizeInBytes配置的是 AudioRecord 内部的音频缓冲区的大小该缓冲区的值不能低于一帧“音频帧”(Frame)的大小而前一篇文章介绍过一帧音频帧的大小计算如下int size 采样率 x 位宽 x 采样时间 x 通道数在Android开发中AudioRecord 类提供了一个帮助你确定这个 bufferSizeInBytes 的函数原型如下int getMinBufferSize(int sampleRateInHz, int channelConfig, int audioFormat);不同的厂商的底层实现是不一样的但无外乎就是根据上面的计算公式得到一帧的大小音频缓冲区的大小则必须是一帧大小的2N倍。使用AudioRecord操作AudioRecord步骤如下配置参数初始化AudioRecord构造函数开始采集开启一个子线程不断从AudioRecord的缓冲区将音频数据读出来。注意这个过程一定要及时否则就会出现“overrun”的错误该错误在音频开发中比较常见意味着应用层没有及时地取走音频数据导致内部的音频缓冲区溢出。停止采集释放资源。示例代码注意添加RECORD_AUDIO权限。点击查看MediaRecorderMediaRecorder可以直接把手机麦克风录入的音频数据进行编码压缩为AMRMP3等并保存文件。使用MediaRecorder简单操作使用MediaRecorder类步骤如下实例化MediaRecorder对象使用函数SetAudioSource设置硬件设备为采集音频输入数据使用函数SetOutputFormat设置输出音频格式。使用类OutputFormat列出支持的输出格式调用方法SetAudioEncoder方法设置音频编码格式调用SetOutputFile方法保存输出文件数据的绝对完整路径调用Prepare方法初始化录制调用Start方法开始录制示例代码注意添加权限WRITE_EXTERNAL_STORAGERECORD_AUDIO点击查看总结MediaRecorder和AudioRecord都可以录制音频区别是MediaRecorder录制的音频文件是经过压缩后的需要设置编码器。并且录制的音频文件可以用系统自带的Music播放器播放。而AudioRecord录制的是PCM格式的音频文件需要用AudioTrack来播放AudioTrack更接近底层。在用MediaRecorder进行录制音视频时最终还是会创建AudioRecord用来与AudioFlinger进行交互。C层MediaRecorder创建AudioRecord类的代码位于AudioSource类构造函数中.MediaRecorder录制的数据是 amr MP3 格式AudioRecorder录制出来的是比较原始的PCM音频格式PCM经过编码压缩可以为 amr MP3 AAC。优缺点AudioRecord主要是实现边录边播以及对音频的实时处理,这个特性让他更适合在语音方面有优势优点语音的实时处理可以用代码实现各种音频的封装缺点输出是PCM格式文件如果保存成音频文件是不能够被播放器播放的所以必须先写代码实现数据编码以及压缩MediaRecorder已经集成了录音、编码、压缩等支持少量的录音音频格式大概有aacamr3gp等优点集成直接调用相关接口即可代码量小缺点无法实时处理音频输出的音频格式不是很多例如没有输出mp3格式文件
http://www.pierceye.com/news/221882/

相关文章:

  • 上海网站开发建设电话丹东市做网站
  • 外贸网站 免费模板 使用 zencart做新闻类网站
  • 呼和浩特网站推广大德通网站建设
  • 携程旅行网站建设上海城市建设大学网站
  • 360网站收录做网站设计用什么软件
  • 微信html5模板网站最新网站建设软件有哪些
  • 芝麻开门网站建设无极电影网怎样下载电影
  • 网站开发 书籍首页关键词优化价格
  • 网站建设建站流程方案百度一下你就知道下载安装
  • 大型网站快速排名学生做的网站能攻击
  • 怎样做加入购物车的网站wordpress SQL 配置
  • 网站设计原型品牌建设人才队伍建设
  • 常熟网站网站建设电商购物平台软件开发
  • 网站页尾信息网站建设费用摊销年限
  • 制作个人网站要多少钱重庆工程信息官网
  • 那里建设网站好珠海网站建设公司哪个好
  • 从化市营销型网站建设工业和信息化部五系网站建设
  • 网站建设的开发方法有哪些wordpress 企业站主题
  • 长治网站建设案例找人做一个小网站需要多少钱
  • html5 网站布局应用教程韩雪冬 网站
  • 行业网站维护印刷公司网站模板
  • 做自媒体需要用的网站wordpress更换语言包
  • 电子书推送网站怎么做重庆产品网站推广
  • 免费做课设的网站织梦本地安装网站
  • 龙岗做网站公司szaow品牌网站建设公司哪好
  • 设计网站项目描述怎么样下载网页上的视频
  • 比较开放的浏览器清远网站seo
  • 个人网站的域名注册怎么做手机app软件开发
  • 卡盟网站开发google play三件套
  • 缠绕机东莞网站建设技术支持在线协同办公软件