![alt text](http://i.imgur.com/ll5q68r.png "EZAudioLogo")
A simple, intuitive audio framework for iOS and OSX.
## Welcome to 1.0.0!
Thank you guys for being so patient over the last year - I've been working like crazy the last few weeks rewriting and extending the EZAudio core and interface components and squashing bugs. Finally, EZAudio is now at its 1.0.0 release with all new updated components, examples, and documentation. Happy coding!
## Apps Using EZAudio
I'd really like to start creating a list of projects made using EZAudio. If you've used EZAudio to make something cool, whether it's an app or open source visualization or whatever, please email me at syedhali07[at]gmail.com and I'll add it to our wall of fame!
To start it off:
- [Detour](https://www.detour.com/) - Gorgeous location-aware audio walks
- [Jumpshare](https://jumpshare.com/) - Incredibly fast, real-time file sharing
##Features
**Awesome Components**
I've designed six audio components and two interface components to allow you to immediately get your hands dirty recording, playing, and visualizing audio data. These components simply plug into each other and build on top of the high-performance, low-latency AudioUnits API and give you an easy to use API written in Objective-C instead of pure C.
[EZAudioDevice](#EZAudioDevice)
A useful class for getting all the current and available inputs/output on any Apple device. The `EZMicrophone` and `EZOutput` use this to direct sound in/out from different hardware components.
[EZMicrophone](#EZMicrophone)
A microphone class that provides its delegate audio data from the default device microphone with one line of code.
[EZOutput](#EZOutput)
An output class that will playback any audio it is provided by its datasource.
[EZAudioFile](#EZAudioFile)
An audio file class that reads/seeks through audio files and provides useful delegate callbacks.
[EZAudioPlayer](#EZAudioPlayer)
A replacement for `AVAudioPlayer` that combines an `EZAudioFile` and a `EZOutput` to perform robust playback of any file on any piece of hardware.
[EZRecorder](#EZRecorder)
A recorder class that provides a quick and easy way to write audio files from any datasource.
[EZAudioPlot](#EZAudioPlot)
A Core Graphics-based audio waveform plot capable of visualizing any float array as a buffer or rolling plot.
[EZAudioPlotGL](#EZAudioPlotGL)
An OpenGL-based, GPU-accelerated audio waveform plot capable of visualizing any float array as a buffer or rolling plot.
**Cross Platform**
`EZAudio` was designed to work transparently across all iOS and OSX devices. This means one universal API whether you're building for Mac or iOS. For instance, under the hood an `EZAudioPlot` knows that it will subclass a UIView for iOS or an NSView for OSX and the `EZMicrophone` knows to build on top of the RemoteIO AudioUnit for iOS, but defaults to the system defaults for input and output for OSX.
##<a name="Examples">Examples & Docs
Within this repo you'll find the examples for iOS and OSX to get you up to speed using each component and plugging them into each other. With just a few lines of code you'll be recording from the microphone, generating audio waveforms, and playing audio files like a boss. See the full Getting Started guide for an interactive look into each of components.
### Example Projects
**_EZAudioCoreGraphicsWaveformExample_**
![CoreGraphicsWaveformExampleGif](https://cloud.githubusercontent.com/assets/1275640/8516226/1eb885ec-2366-11e5-8d76-3a4b4d982eb0.gif)
Shows how to use the `EZMicrophone` and `EZAudioPlot` to visualize the audio data from the microphone in real-time. The waveform can be displayed as a buffer or a rolling waveform plot (traditional waveform look).
**_EZAudioOpenGLWaveformExample_**
![OpenGLWaveformExampleGif](https://cloud.githubusercontent.com/assets/1275640/8516234/499f6fd2-2366-11e5-9771-7d0afae59391.gif)
Shows how to use the `EZMicrophone` and `EZAudioPlotGL` to visualize the audio data from the microphone in real-time. The drawing is using OpenGL so the performance much better for plots needing a lot of points.
**_EZAudioPlayFileExample_**
![PlayFileExample](https://cloud.githubusercontent.com/assets/1275640/8516245/711ca232-2366-11e5-8d20-2538164f3307.gif)
Shows how to use the `EZAudioPlayer` and `EZAudioPlotGL` to playback, pause, and seek through an audio file while displaying its waveform as a buffer or a rolling waveform plot.
**_EZAudioRecordWaveformExample_**
![RecordWaveformExample](https://cloud.githubusercontent.com/assets/1275640/8516310/86da80f2-2367-11e5-84aa-aea25a439a76.gif)
Shows how to use the `EZMicrophone`, `EZRecorder`, and `EZAudioPlotGL` to record the audio from the microphone input to a file while displaying the audio waveform of the incoming data. You can then playback the newly recorded audio file using AVFoundation and keep adding more audio data to the tail of the file.
**_EZAudioWaveformFromFileExample_**
![WaveformExample](https://cloud.githubusercontent.com/assets/1275640/8516597/f27240ea-236a-11e5-8ecd-68cf05b7ce40.gif)
Shows how to use the `EZAudioFile` and `EZAudioPlot` to animate in an audio waveform for an entire audio file.
**_EZAudioPassThroughExample_**
![PassthroughExample](https://cloud.githubusercontent.com/assets/1275640/8516692/7abfbe36-236c-11e5-9d69-4f82956177b3.gif)
Shows how to use the `EZMicrophone`, `EZOutput`, and the `EZAudioPlotGL` to pass the microphone input to the output for playback while displaying the audio waveform (as a buffer or rolling plot) in real-time.
**_EZAudioFFTExample_**
![FFTExample](https://cloud.githubusercontent.com/assets/1275640/8662077/5621705a-2971-11e5-88ed-9a865e422ade.gif)
Shows how to calculate the real-time FFT of the audio data coming from the `EZMicrophone` and the Accelerate framework. The audio data is plotted using two `EZAudioPlots` for the time and frequency displays.
### Documentation
The official documentation for EZAudio can be found here: http://cocoadocs.org/docsets/EZAudio/1.1.4/
<br>You can also generate the docset yourself using appledocs by running the appledocs on the EZAudio source folder.
##<a name="GettingStarted">Getting Started
To begin using `EZAudio` you must first make sure you have the proper build requirements and frameworks. Below you'll find explanations of each component and code snippets to show how to use each to perform common tasks like getting microphone data, updating audio waveform plots, reading/seeking through audio files, and performing playback.
###Build Requirements
**iOS**
- 6.0+
**OSX**
- 10.8+
###Frameworks
**iOS**
- Accelerate
- AudioToolbox
- AVFoundation
- GLKit
**OSX**
- Accelerate
- AudioToolbox
- AudioUnit
- CoreAudio
- QuartzCore
- OpenGL
- GLKit
###<a name="AddingToProject">Adding To Project
You can add EZAudio to your project in a few ways: <br><br>1.) The easiest way to use EZAudio is via <a href="http://cocoapods.org/", target="_blank">Cocoapods</a>. Simply add EZAudio to your <a href="http://guides.cocoapods.org/using/the-podfile.html", target="_blank">Podfile</a> like so:
`
pod 'EZAudio', '~> 1.1.4'
`
####<a name="AmazingAudioEngineCocoapod">Using EZAudio & The Amazing Audio Engine
If you're also using the Amazing Audio Engine then use the `EZAudio/Core` subspec like so:
`
pod 'EZAudio/Core', '~> 1.1.4'
`
2.) EZAudio now supports Carthage (thanks Andrew and Tommaso!). You can refer to Carthage's installation for a how-to guide:
https://github.com/Carthage/Carthage
3.) Alternatively, you can check out the iOS/Mac examples for how to setup a project using the EZAudio project as an embedded project and utilizing the frameworks. Be sure to set your header search path to the folder containing the EZAudio source.
##<a name="CoreComponents"></a>Core Components
`EZAudio` currently offers six audio components that encompass a wide range of functionality. In addition to the functional aspects of these components such as pulling audio data, reading/writing from files, and p
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
嵌入式优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人单片机开发经验充足,深耕嵌入式领域,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明,项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要嵌入式物联网单片机相关领域开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注嵌入式领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【建议小白】: 在所有嵌入式开发中硬件部分若不会画PCB/电路,可选择根据引脚定义将其代替为面包板+杜邦线+外设模块的方式,只需轻松简单连线,下载源码烧录进去便可轻松复刻出一样的项目 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能
资源推荐
资源详情
资源评论
收起资源包目录
基于stm32+树莓派设计的智能家居控制系统-后端使用Java的springboot架构,微信小程序作为用户控制端.zip (1472个子文件)
libsnowboy-detect.a 15.8MB
libsnowboy-detect.a 4.61MB
libsnowboy-detect.a 1.74MB
libsnowboy-detect.a 1.73MB
libsnowboy-detect.a 1.61MB
libsnowboy-detect.a 1.4MB
libsnowboy-detect.a 1.33MB
libsnowboy-detect.a 1.25MB
projT.uvguix.Administrator 141KB
projT.uvguix.Administrator 140KB
projT.uvguix.Administrator 140KB
SnowboyAlexaDemo.apk 3.39MB
os_cpu_a.asm 7KB
os_cpu_a.asm 7KB
projT.axf 595KB
projT.axf 594KB
projT.axf 511KB
projT_sct.Bak 448B
projT_sct.Bak 448B
projT_sct.Bak 448B
gradlew.bat 2KB
stm32f10x_tim.c 104KB
stm32f10x_tim.c 104KB
stm32f10x_tim.c 104KB
os_core.c 84KB
os_core.c 84KB
stm32f10x_flash.c 59KB
stm32f10x_flash.c 59KB
stm32f10x_flash.c 59KB
os_task.c 55KB
os_task.c 55KB
os_flag.c 54KB
os_flag.c 54KB
stm32f10x_rcc.c 49KB
stm32f10x_rcc.c 49KB
stm32f10x_rcc.c 49KB
stm32f10x_adc.c 45KB
stm32f10x_adc.c 45KB
stm32f10x_adc.c 45KB
stm32f10x_i2c.c 43KB
stm32f10x_i2c.c 43KB
stm32f10x_i2c.c 43KB
os_tmr.c 43KB
os_tmr.c 43KB
stm32f10x_can.c 43KB
stm32f10x_can.c 43KB
stm32f10x_can.c 43KB
os_q.c 41KB
os_q.c 41KB
stm32f10x_usart.c 36KB
stm32f10x_usart.c 36KB
stm32f10x_usart.c 36KB
os_mutex.c 36KB
os_mutex.c 36KB
system_stm32f10x.c 35KB
system_stm32f10x.c 35KB
system_stm32f10x.c 35KB
stm32f10x_fsmc.c 34KB
stm32f10x_fsmc.c 34KB
stm32f10x_fsmc.c 34KB
os_mbox.c 30KB
os_mbox.c 30KB
stm32f10x_spi.c 29KB
stm32f10x_spi.c 29KB
stm32f10x_spi.c 29KB
stm32f10x_dma.c 28KB
stm32f10x_dma.c 28KB
stm32f10x_dma.c 28KB
os_sem.c 28KB
os_sem.c 28KB
stm32f10x_sdio.c 27KB
stm32f10x_sdio.c 27KB
stm32f10x_sdio.c 27KB
stm32f10x_gpio.c 22KB
stm32f10x_gpio.c 22KB
stm32f10x_gpio.c 22KB
os_mem.c 19KB
os_mem.c 19KB
stm32f10x_dac.c 18KB
stm32f10x_dac.c 18KB
stm32f10x_dac.c 18KB
core_cm3.c 16KB
core_cm3.c 16KB
core_cm3.c 16KB
bsp_esp8266.c 13KB
TPCircularBuffer+AudioBufferList.c 13KB
os_dbg_r.c 12KB
os_dbg_r.c 12KB
os_cpu_c.c 12KB
os_cpu_c.c 12KB
os_dbg.c 11KB
os_dbg.c 11KB
stm32f10x_cec.c 11KB
stm32f10x_cec.c 11KB
stm32f10x_cec.c 11KB
os_time.c 11KB
os_time.c 11KB
stm32f10x_pwr.c 8KB
stm32f10x_pwr.c 8KB
stm32f10x_pwr.c 8KB
共 1472 条
- 1
- 2
- 3
- 4
- 5
- 6
- 15
资源评论
阿齐Archie
- 粉丝: 1w+
- 资源: 2303
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功