audero/audero-wav-extractor

Audero Wav Extractor 是一个 PHP 库,允许从 wav 文件中提取数据块。提取的数据块可以保存到硬盘上,可以强制用户浏览器提示下载,也可以作为字符串返回以供后续处理。

2.1.0 2013-02-03 03:13 UTC

This package is not auto-updated.

Last update: 2024-09-28 14:22:38 UTC


README

Audero Wav Extractor 是一个 PHP 库,允许从 wav 文件中提取数据块。提取的数据块可以保存到硬盘上,可以强制用户浏览器提示下载,也可以作为字符串返回以供后续处理。

要求

此库需要 PHP 版本 5.3 或更高。

下载

通过 Composer 下载

您可以通过向您的 composer.json 文件添加以下行来通过 Composer 获取 "Audero Wav Extractor":

"require": {
    "audero/audero-wav-extractor": "2.0.*"
}

然后运行 install 命令以解决和下载依赖项

php composer.phar install

Composer 将将库安装到您的项目的 vendor/audero 目录中。

通过 Git 下载

如果您还没有或不想使用 Composer,您可以通过以下命令从其 仓库 使用 Git 下载库:

git clone https://github.com/AurelioDeRosa/Audero-Wav-Extractor.git

用法

"Audero Wav Extractor" 非常容易使用。然而,由于该库使用命名空间并遵循 PSR 标准,您必须使用自动加载器来动态加载所需的类。之后,您必须创建一个 AuderoWavExtractor 实例,并调用最适合您需求的方法。使用 Audero Wav Extractor,您可以使用 downloadChunk() 下载数据块,使用 saveChunk() 将其保存到硬盘上,或使用 getChunk() 以字符串形式检索它。

通过 Composer 安装

如果您使用 Composer 安装了 "Audero Wav Extractor",则可以依赖内置的自动加载器。因此,在包含它之后,您可以使用以下示例中引用的任何一种方法。

从 wav 文件中提取数据块并强制用户浏览器下载

<?php
    // Include the Composer autoloader
    require_once 'vendor/autoload.php';

    $inputFile = 'sample1.wav';
    $outputFile = 'chunk.wav';
    $start = 0 * 1000; // From 0 seconds
    $end = 2 * 1000; // To 2 seconds

    // Extract the chunk and save it on the hard disk
    try {
       $extractor = new \Audero\WavExtractor\AuderoWavExtractor($inputFile);
       $extractor->downloadChunk($start, $end, $outputFile);
       echo 'Chunk extraction completed.';
    } catch (\Exception $ex) {
       echo 'An error has occurred: ' . $ex->getMessage();
    }
?>

通过 Git 安装

如果您通过 Git 获取了代码,则可以使用库提供的自动加载器。但是,在使用它之前,您必须将库的路径添加到 PHP 包含路径,如下例所示。

从 wav 文件中提取数据块并将其保存到本地磁盘

<?php
    // Set include path
    set_include_path(get_include_path() . PATH_SEPARATOR . __DIR__ . '/../src/');
    // Include the class loader
    require_once 'Audero\Loader\AutoLoader.php';
    // Set the classes' loader method
    spl_autoload_register('Audero\Loader\AutoLoader::autoload');

    $inputFile = 'sample1.wav';
    $outputFile = 'chunk.wav';
    $start = 0 * 1000; // From 0 seconds
    $end = 2 * 1000; // To 2 seconds

    // Extract the chunk and force the download to the user browser
    try {
       $extractor = new \Audero\WavExtractor\AuderoWavExtractor($inputFile);
       $extractor->saveChunk($start, $end, $outputFile);
       echo 'Chunk extraction completed.';
    } catch (\Exception $ex) {
       echo 'An error has occurred: ' . $ex->getMessage();
    }
?>

资源

许可证

Audero Wav Extractor 的许可证为 CC BY-NC 3.0("Creative Commons Attribution NonCommercial 3.0")

作者

Aurelio De Rosa(Twitter:@AurelioDeRosa