Ejemplo n.º 1
0
#!/usr/bin/php
<?php 
require_once '../application/bootstrap.php';
//TODO MP3 ID3 Tagging
//TODO
$init = new Initializer(isset($argv[1]) ? $argv[1] : 'production');
$init->initDb();
$init->initApp();
$config = $init->getConfig();
$log = new Zend_Log();
$logwriter = new Zend_Log_Writer_Stream('ingestion.log');
$logwriter->setFormatter(new Zend_Log_Formatter_Simple('%timestamp% %priorityName% (%priority%): %process% [%track%] %message%' . PHP_EOL));
$log->addWriter($logwriter);
$log->setEventItem('process', str_pad(rand(0, 999), 3, '0'));
define('WORKDIR', $config->injestion->workDir);
$s3 = new S3($config->aws->accessKey, $config->aws->secretKey);
//------------------------------------
$log->log('-- begin processing tracks --', Zend_Log::INFO);
$table = new Doctrine_Table('Track', Doctrine_Manager::connection(), true);
while ($track = $table->findOneByEncodingstatus('UPLOADED')) {
    $log->setEventItem('track', $track->id);
    $track->encodingStatus = 'PROCESSING';
    $track->save();
    $log->log('- processing track', Zend_Log::INFO);
    // Make sure track has an original file id
    if (intval($track->originalFileId) == 0) {
        $track->encodingStatus = 'ERROR';
        $track->save();
        $log->log('error: no source file to process', Zend_Log::ERR);
        continue;
    }