#audio-samples #slice #file #generate #ot #sampler #wav

ot_utils

为 Elektron Octatrack 样本器设计,用于连接音频样本并生成 .ot(切片)文件的库

5 个版本

0.1.4 2020 年 8 月 3 日
0.1.3 2020 年 7 月 30 日
0.1.2 2020 年 7 月 28 日
0.1.1 2020 年 7 月 20 日
0.1.0 2020 年 7 月 20 日

#152 in 多媒体

GPL-3.0 许可证

17KB
206

Crates.io version Documentation


关于

ot_utils 是一个 Rust 库,旨在连接和生成用于 Elektron Octatrack 样本器的 .ot(切片)文件。

该库旨在使将样本分组到单个 .wav 文件变得更加容易,以便通过不同的切片在 Octatrack 上访问它们。目标是最终在静态和 Flex 机器中节省插槽(例如,可以将多个踢样本组合到单个插槽中,而不是每个样本使用一个插槽)。

通过 add_file 函数添加的每个音频文件都将附加到临时 .wav 文件中,并为该音频文件创建一个新的切片。 generate_ot_file 函数生成 .ot 文件,并将临时 .wav 文件重命名为最终的名称(与 .ot 文件相同)。

该库受由 OctaChainer 工具的启发,该工具由 Kai Drange 创建。


示例


extern crate ot_utils;

use ot_utils::Slicer;
 

let folder_path = "path/to/sample/folder".to_string();
let check_file: &Path = &folder_path.as_ref();

// Validate directory
if check_file.is_dir() {

    // Get list of files
    let paths = fs::read_dir(&folder_path).unwrap();

    // Set output folder
    OT_Slicer.output_folder = folder_path.clone();

    // Set final .ot and .wav filename
    OT_Slicer.output_filename = check_file.file_name().unwrap().to_str().unwrap().to_string();


    for path in paths {
        // Get file info (path, name, and extension)
        let file_path = path.unwrap().path();
        let file_name = &file_path.file_name();
        let file_ext = match &file_path.extension(){
            &Some(x) => x.to_str().unwrap(),
            &None => " "
        };

        if file_ext == "wav" {
            OT_Slicer.add_file(new_file);
        } 
    }
}
        
OT_Slicer.generate_ot_file();


限制

ot_utils 目前仅接受单声道、16 位 wav 文件。


@icaroferre 创建
spektroaudio.com

依赖项

~120KB