public function __construct($aObject) { parent::__construct($aObject, true); $this->_sTableFiles = '`sys_transcoder_videos_files`'; $this->_sHandlerPrefix = 'sys_video_transcoder_'; }
/** * Store completed files from tmp queue storage to the final storage * Must be performed on the actual site. */ public static function processCompleted() { $a = BxDolTranscoderQuery::getCompletedFromQueue(); foreach ($a as $r) { $o = self::getObjectInstance($r['transcoder_object']); $aQueue = $o->getDb()->getFromQueue($r['file_id_source']); if (!$aQueue || $aQueue['status'] != BX_DOL_QUEUE_COMPLETE) { continue; } if ($aQueue['file_url_result'] && $aQueue['file_id_result']) { // get transcoded file from provided URL $sFileData = bx_file_get_contents($aQueue['file_url_result']); if (false === $sFileData) { $o->getDb()->updateQueueStatus($aQueue['file_id_source'], BX_DOL_QUEUE_FAILED, "download file failed: {$aQueue['file_url_result']}\n"); continue; } $sTmpFile = $o->getTmpFilename('.' . $aQueue['file_ext_result']); if (!file_put_contents($sTmpFile, $sFileData)) { $o->getDb()->updateQueueStatus($aQueue['file_id_source'], BX_DOL_QUEUE_FAILED, "store downloaded file failed\n"); @unlink($sTmpFile); continue; } // store downloaded file in final storage if ($o->storeTranscodedFile($aQueue['file_id_source'], $sTmpFile, $aQueue['profile_id'])) { $o->getDb()->updateQueueStatus($aQueue['file_id_source'], BX_DOL_QUEUE_DELETE); } else { $o->getDb()->updateQueueStatus($aQueue['file_id_source'], BX_DOL_QUEUE_FAILED, "store file failed:\n" . $o->getLog()); } // delete tmp local file @unlink($sTmpFile); } } }
public function __construct($aObject) { parent::__construct($aObject, false); $this->_sTableFiles = '`sys_transcoder_images_files`'; $this->_sHandlerPrefix = 'sys_image_transcoder_'; }