
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_**

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_**

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_**

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_**

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_**

Shows how to use the `EZAudioFile` and `EZAudioPlot` to animate in an audio waveform for an entire audio file.
**_EZAudioPassThroughExample_**

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_**

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
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
毕设:基于stm32+树莓派+springboot的小程序智能家居控制系统设计与实现.zip 1、该资源内项目代码经过严格调试,下载即用确保可以运行! 2、该资源适合计算机相关专业(如计科、人工智能、大数据、数学、电子信息等)正在做课程设计、期末大作业和毕设项目的学生、或者相关技术学习者作为学习资料参考使用。 3、该资源包括全部源码,需要具备一定基础才能看懂并调试代码。 毕设:基于stm32+树莓派+springboot的小程序智能家居控制系统设计与实现.zip 1、该资源内项目代码经过严格调试,下载即用确保可以运行! 2、该资源适合计算机相关专业(如计科、人工智能、大数据、数学、电子信息等)正在做课程设计、期末大作业和毕设项目的学生、或者相关技术学习者作为学习资料参考使用。 3、该资源包括全部源码,需要具备一定基础才能看懂并调试代码。 毕设:基于stm32+树莓派+springboot的小程序智能家居控制系统设计与实现.zip 1、该资源内项目代码经过严格调试,下载即用确保可以运行! 2、该资源适合计算机相关专业(如计科、人工智能、大数据、数学、电子信息等)正在做课程设计、期末大
资源推荐
资源详情
资源评论



















收起资源包目录





































































































共 1472 条
- 1
- 2
- 3
- 4
- 5
- 6
- 15
资源评论

- qq_541350982024-05-08请问这个怎么可以拿到文件
- an4645123622024-05-23感谢资源主分享的资源解决了我当下的问题,非常有用的资源。


辣椒种子
- 粉丝: 4515
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- Java课程设计方案报告-酒店客房管理系统.doc
- 各国强化工业互联网战略标准化成重要切入点.docx
- ANSYS有限元软件建模基础.ppt
- 互联网+对高职学生思想政治教育的影响及其应对探析.docx
- 地铁弱电系统IP网络分配建议方案.docx
- 基于虚拟现实技术的网络会展发展展望.docx
- 数学物理化学生物地理常用软件介绍.doc
- 通信行业发展情况分析-行业集中度整体趋势上行.docx
- 大学设计方案松下FPC型PLC实现交通灯控制大学方案.doc
- 单片机乳化物干燥过程控制系统设计方案.docx
- 物联网工程专业C++程序设计教学改革探索.docx
- 单片机研究分析报告路抢答器.doc
- PLC控制的生活给水泵系统设计.doc
- 非授权移动接入在GSM网络应用中的安全分析.docx
- 2019年二级建造师建设工程项目管理精品小抄.doc
- 《数据库系统》教学设计.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
