博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[翻译] OrigamiEngine
阅读量:5983 次
发布时间:2019-06-20

本文共 2230 字,大约阅读时间需要 7 分钟。

OrigamiEngine

 

Lightweight iOS and OSX audio engine with opus, flac, cue, mp3, m4a, m3u support.

轻量级iOS,OSX音频处理工具,支持opus, flac, cue, mp3, m4a, m3u

 

Supported formats

  • Audio sources: http and local files 支持http方式以及本地文件方式
  • Audio files: opus, flac, mp3, m4a, wav and other from CoreAudio 支持的文件格式包括opus, flac, mp3, m4a, wav以及其他CoreAudio支持的类型
  • Playlists: cue, m3u 支持播放列表

 

Features

  • Ligthweight: 300kb compiled, 1.2mb with libFLAC 轻量级:编译后是300kb,链接到libFLAC后是1.2mb
  • Small memory foorprint: no more than 2.5mb for the flac files 占用内存小:flac文件不会超过2.5mb
  • Low resource consumption: about 14% CPU usage for FLAC on ipod 4g 低资源消耗:在ipod 4g上只用到了14%的CPU
  • All operations in background with GCD 所有后台操作基于GCD
  • Event-based (using dispatch sources and CoreAudio async api) 事件触发机制(使用了dispatch source以及CoreAudio 异步的api)
  • Provides full audio metadata (vorbis, id3 tags) with embeeded cover images 提供全部的音频元数据包括嵌入的图片资源
  • HTTP data caching HTTP数据缓存
  • Tested (currently about 85% code coverage) 已经测试过了(当前超过85%已经测试过)

 

Overview

Static library and  podspec provided. Static library can be compiled with embeeded FLAC library (check project targets). For OSX you can use static framework.

提供静态库或者cocoapods.静态库可用来编译嵌入FLAC的库,在OSX上,你可以使用静态库.

 

Start playback: 开始播放:

self.player = [[ORGMEngine alloc] init];NSURL* url = [NSURL URLWithString:tfUrl.text];[_player playUrl:url];

Common operations: 常用的操作:

[_player metadata];                         // current metadata[_player pause];                            // pause playback[_player resume];                           // resume playback[_player stop];                             // stop playback[_player seekToTime:seekSlider.value];      // seek to second[_player setNextUrl:url withDataFlush:YES]; // play next track and clear current buffer

Delegate methods: 代理方法:

- (NSURL*)engineExpectsNextUrl:(ORGMEngine*)engine; // provides continious playback- (void)engine:(ORGMEngine*)engine didChangeState:(ORGMEngineState)state; // state change callback

Check example project and tests for the additional information.

 

Documentation

Project headers contain appledoc comments, precompiled docset .

工程头文件件中包含了appledoc的描述.

 

Tests

OCUnit tests included into the project.

 

Credits

  •  by Vincent Spader. FLAC decoder implementation based on Cog sources

转载地址:http://logox.baihongyu.com/

你可能感兴趣的文章
云存储遍地开花,你用哪个?
查看>>
PS网页设计教程XIV——如何创建一个复古风格的PS布局
查看>>
PostgreSQL 的 WINDOW clause
查看>>
linux用户栈内核栈的设置---进程的创建: fork/execve【转】
查看>>
CookieContainer
查看>>
POJ 3264-Balanced Lineup(段树:单点更新,间隔查询)
查看>>
Hawk 数据抓取工具 使用说明(二)
查看>>
如何在Eclipse或者Myeclipse中使用tomcat(配置tomcat,发布web项目)?(图文详解)(很实用)...
查看>>
C#图片处理之: 另存为压缩质量可自己控制的JPEG
查看>>
[翻译]C#和COM的互操作
查看>>
PLSQL的 dynamic sql小例子
查看>>
[Spark][python]从 web log 中提取出 UserID 作为key 值,形成新的 RDD
查看>>
通用权限实现的核心设计思想
查看>>
一个自带简易数据集的模拟线性分类器matlab代码——实验训练
查看>>
30 个很棒的 PHP 开源 CMS 内容管理系统
查看>>
HDU ACM 1046 Gridland 找规律
查看>>
面试题36:数组中的逆序对
查看>>
Windows 8.1 新增控件之 TimePicker
查看>>
设计模式之美:Strategy(策略)
查看>>
使用 ALinq 实现 Linq to MySQL【转】
查看>>