Timeside:用Python编写的可扩展音频处理框架和服务器
Timeside是一个Python框架,可实现低水平和高级音频分析,成像,转码,流和标记。它的高级API旨在在具有插件架构和可靠的可扩展后端的任何音频或视频资产的非常大的数据集上进行复杂的处理。
介绍
随着在线音频应用程序和数据集的数量的增加,对于研究人员和工程师来说,能够在各种平台和计算音乐学和流媒体服务等各种平台和用户酶上尽快进行原型和测试自己的算法至关重要。另一方面,内容提供商和生产商需要根据文化历史以及音频功能分析来增强其平台上的用户体验。与互联网上发布的音乐同步种植这些元数据意味着可以轻松更新,缩放和部署分析和存储系统。
从这种意义上开发了Timeside,以提出在线音频处理服务。它提供:
- Python可以从外壳或任何其他基于Python的程序工作的核心模块
- Web的Web服务器,其构建在核心模块顶部的Web服务器,以便Web开发人员可以轻松地将远程处理服务嵌入到自己的应用程序中。
- 用于JavaScript的SDK ,并基于OpenAPI,可以轻松开发消耗服务器API的第三方应用程序。
用例
- 异步音频处理(过滤,功能分析,机器学习等)
- 缩放和安全的数据提供,处理和访问
- 音频插件原型制作
- 音频可视化
- 按需通过网络转编码和流式传输
- 增强的共享音频播放器
- 自动分割和手动标记与音频事件同步
特征
- 使用Python进行异步和快速的音频处理,
- 将音频帧从任何音频或视频媒体格式解码为numpy阵列,
- 用某些最先进的音频提取库分析音频内容,例如Aubio,Yaafe和Vamp以及一些纯Python处理器
- 用各种花式波形,频谱图和其他凉爽的图表来可视化声音,
- 以各种媒体格式转码音频数据,并通过Web应用程序流式传输它们,
- 通过各种便携式格式序列化特征分析数据,
- 从YouTube或Deezer等Plate Form提供音频源
- 通过REST API在网络上对所提供或上传的轨道进行分析和转码
- 通过智能高级HTML5可扩展播放器播放和互动需求,
- 带有语义元数据的索引,标签和注释音频档案(请参阅嵌入时间嵌入的telemeta)。
- 通过任何基础架构部署和扩展自己的音频处理引擎
资金和支持
为了资助该项目并继续我们的快速开发过程,我们需要您的明确支持。因此,如果您在生产中甚至在开发或实验设置中使用时代,请告诉我们:
感谢您的帮助和支持!
消息
1.1
- 核:
- 默认情况下,请使用基于Libav的Aubio解码器(地球上的Numpy数组转换器的最快音频!)
- 添加基于鞋面的分析仪和一些插件,例如吸血鬼,吸血鬼,vamptempo,vamptuning,vampspectralcentroid,vampspectralkurtosis和vampspectralslope
- 服务器:
- 解决了许多异步处理问题:现在通过工作人员进行所有预处理,处理和后处理任务,包括从YouTube获取源流
- 基于WebSocket添加过程监视器
- 波形自动在item.Save()上自动处理
- 使uuid真正独特
- 重新排序模型
- 改善单位测试
1.0
- 服务器重构:
- 音频过程在项目上运行(REST API TRACK的模型)
- 几种工具,视图,模型和串行化器
- REST API在OpenAPI 3规格上和自动重做的架构
- 将核心和服务器从Python 2.7移至3.7
- 将django升级为2.2,Django休息框架为3.11,芹菜至4.4
- 添加基于Aubio的解码器
- 添加核心和服务器处理器的“版本控制和服务器进程”运行时间
- 重组所有对PIP要求的依赖性删除CONDA使用
- 将提供商类添加为核心API组件和REST API模型
- 添加提供商插件Deezer-Preiview,Deezer-Complete和YouTube
- 改进服务器单元测试
- 在REST API上添加JWT身份验证
- 各种错误修复
- 添加核心,服务器和工人记录
0.9
- 升级所有python依赖性
- 添加鞋面,Essentia,Yaafe,天秤座,Pytorch,Tensorflow Libs和包装器
- 添加一些分析插件(Essentia不和谐,Vamp Constant Q,Vamp Tempo,Vamp General Wrapper,Yaafe General Wrapper)
- 添加处理器参数管理
- 添加处理器继承
- 通过巧妙的数据流改进HTML5播放器
- 改善REST API和各种连续剧
- 改善单元测试
- 各种错误修复
0.8
- 为即时安装添加Docker支持。这允许现在在任何操作系统平台上时台式运行!
- 添加jupyter笔记本电脑支持,以便简单的原型制作,实验和共享(请参阅文档中的示例)。
- 根据Django Rest框架,Redis和芹菜添加实验性Web服务器和REST API。现在,由于Docker(聚类)和芹菜(多处理),这提供了具有高尺度功能的真实Web音频处理服务器。
- 得益于Angular和wavesjs,启动新玩家界面的开发。
- 大量清理JS文件。现在,请使用Bower获取所有JS依赖项,如设置中列出。
- 将元数据导出到Elan注释文件中。
- 修复并改善分析仪结果容器中的一些数据结构。
- 许多不同的错误。
0.7.1
- 将Django版本修复到1.6.10(与Telemeta 1.5同步)
0.7
- 代码重构:
- 创建一个新的模块timeside.plugins并在其中移动处理器:timeside.plugins.decoder,Analyzer,timeside.plugins.encoder,timeside.plugins.fx
- 警告:要正确管理命名空间软件包的结构,泰晤士语主模块现在为timeside.Core和代码现在使用ImportimeDIDE.CORE.CORE.CORE.CORE。
- timeside.plugins现在是一个命名空间软件包,可以自动插入泰式插件(例如,请参见timeside-diadems)。现在,这使Timeside成为真正的插件主机,是的!
- 很快就会提供一个虚拟的Timeside插件,以便于开发。
- 将DIADEMS项目合作伙伴开发的所有分析仪移动到一个新的存储库:Timeside-Diadems
- 许多修复了Travis-Ci的更好处理
- 添加一个DOX文件以在各种分布中持续测试Docker建筑物
有关旧新闻,请访问:https://github.com/ircam-wam/timeside/blob/master/news.rst
文档
- 完整文档:https://timeside.ircam.fr/docs/
- 服务器REST API:https://timeside.ircam.fr/api/docs/
- 幻灯片:https://ircam-wam.github.io/timeside-slides/#1
- 核心教程:https://timeside.ircam.fr/docs/tutorials/
- 一些笔记本:https://github.com/ircam-wam/timeside/tree/master/master/docs/ipynb
- 一些较旧的笔记本:http://mybinder.org/repo/thomasfillon/timeside-demos
- 出版物:
- https://github.com/parisson/telemeta-doc
- https://github.com/ircam-wam/timeside-papers
- 播放器UI V2:https://github.com/ircam-wam/timeside-player
- Player UI V1指南:https://github.com/ircam-wam/timeside/wiki/ui-guide
- 播放器UI V1示例:http://archives.crem-cnrs.fr/archives/items/cnrsmh_e_2004_017_001_01/
安装
多亏了Docker,Timeside现在可以作为Docker组成的准备就绪。基于Docker的组合捆绑了一些强大的应用程序和现代框架,例如:Python,Numpy,Jupyter,Gstreamer,django,django,celery,Postgresql,Redis,rewsgi,uwsgi,uwsgi,nginx等。
首先,安装Docker和Docker组成
然后克隆时代并开始它:
git克隆 - 恢复https://github.com/ircam-wam/timeside.git
CD时间
Docker组成-D
就是这样!现在,请转到:ref:`用户界面'部分以查看如何使用它。
笔记
要获得技术支持,请联系开发团队。如果您需要在Docker映像之外使用时端,请参考基于Debian稳定系统的Dockerfile规则。我们不会在原始Docker容器之外的此典型用户酶中提供任何形式的免费支持。
赞助商和合作伙伴
- IRCAM(法国巴黎)
- 帕里森(法国巴黎)
- CNRS:国家科学研究中心(法国)
- Huma-num:数字人文学科的大数据设备(法国CNRS)
- CREM:法国国家伦理学研究中心(法国)
- Pierre et Marie Curie大学(法国UPMC)
- ANR:Agence Nationale de la Recherche(法国)
- MNHN:博物馆国家D'Histoire Naturelle(法国巴黎)
- C4DM:数字音乐中心,皇后玛丽大学(英国伦敦)
- NYU Steinhardt:纽约大学音乐与表演艺术专业(美国纽约)
相关项目
- Telemeta:打开网络音频平台
- CNRS,CREM和“MuséeDeL'Homme”的声音档案馆在法国巴黎
- ANR赞助的王冠。
- 达卡里(Dacaryh),《历史研究》的数据科学
- 大型历史档案馆的kamoulox在线脉
- NYU+CREM+PARISSON:完整CREM数据库的阿拉伯音乐分析
- Wasabi:由ANR赞助的浏览器中的Web音频语义汇总用于索引
- 时代玩家V2
- Timeside-SDK-JS
参考
- Aline Menin,Michel Buffa,Maroua Tikat,Benjamin Molinet,Guillaume Pellerin,Laurent Pottier,Franck Michel和Marco Winckler。 (2022年6月28日)。唱片的增量和多模式可视化:探索芥末音乐知识库。 2022年网络音频会议(WAC 2022),法国戛纳。 https://doi.org/10.5281/Zenodo.6767530
- Guillaume Pellerin和Paul Brossier。 (2022)。 Timeside API作为音频处理Web服务[数据集]。 2022年网络音频会议(WAC 2022),法国戛纳。 Zenodo。 https://doi.org/10.5281/Zenodo.6769477
- Fillon和G. Pellerin。声音档案管理和分析的协作网络平台。伦敦第43网络音频会议论文集,第43页。伦敦皇后大学,2017年8月。
版权
- 版权(C)2019,2023 IRCAM
- 版权(C)2006,2023 Guillaume Pellerin
- 版权(C)2022,2023 Guillaume Piccarreta
- 版权(C)2010,2022 Paul Brossier
- 版权(C)2020,2021 Romain Herbelleau
- 版权(C)2019,2020 Antoine Grandry
- 版权(C)2006,2019 Parisson SARL
- 版权(C)2013,2017 Thomas Fillon
- 版权(C)2013,2014 Maxime Lecoz
- 版权(C)2013,2014 David Doukhan
- 版权(C)2006,2010 Olivier Guilyardi
执照
TimesIDE是免费软件:您可以根据自由软件基金会发布的GNU Affero通用公共许可证的条款进行重新分配和/或修改它,或者(或(在您的选项上)任何以后的版本。
泰西德(Timeside)的分发是希望它将有用的,但没有任何保证;即使没有对特定目的的适销性或适合性的隐含保证。有关更多详细信息,请参见GNU Affero通用公共许可证。
阅读许可证文件文件以获取更多详细信息。