/** * Load wikitext and get article URL */ public function getArticleDetails($id) { $dbr = WikiVisualTranscoder::getDB('read'); $rev = Revision::loadFromPageId($dbr, $id); if ($rev) { $text = $rev->getText(); $title = $rev->getTitle(); $url = WikiVisualTranscoder::makeWikihowURL($title); return array($text, $url, $title); } else { return array('', '', null); } }
public function processMedia($aid, $creator, $videoList, $warning, $isHybridMedia) { //transcode or schedule transcode $this->removeOldTranscodingJobs($aid); $err = ''; $s3 = new S3(WH_AWS_WIKIVIDEO_PROD_ACCESS_KEY, WH_AWS_WIKIVIDEO_PROD_SECRET_KEY); $t = Title::newFromId($aid); if (!$t || !$t->exists()) { $err = 'Could not find article ID ' . $aid; } self::d("In Mp4Transcoder->processMedia \$t:" . $t . ", err :" . $err); if (!$err) { $transcodeDir = $aid . "-" . mt_rand(); foreach ($videoList as $video) { $transcodeInPath = $transcodeDir . "/" . $video['name']; $err = WikiVisualTranscoder::postFile($s3, $video['filename'], $transcodeInPath, WikiVisualTranscoder::AWS_TRANSCODING_IN_BUCKET); self::d("Posting " . $transcodeInPath . " to S3, err=" . $err); if (strlen($err)) { break; } $result = $this->createTranscodingJob($transcodeDir, $video['name']); if ($result['Status'] == 'Error') { $err = "Transcoding job creation error. file: {$transcodeInPath}, id: {$result[3]}, msg: {$result['2']}"; break; } self::d("Transcoding job created for " . $aid . " resule=" . $result); $this->dbRecordTranscodingJobStatus($aid, $result); } $url = WikiVisualTranscoder::makeWikihowURL($t); $status = $err ? WikiVisualTranscoder::STATUS_ERROR : WikiVisualTranscoder::STATUS_TRANSCODING; self::d("Transcoding job URL " . $url . ", status = " . $status); return array($err, $url, $status); // if ($err) { // self::dbSetArticleProcessed($aid, $creator, $err, $warning, $url, 0, $numSteps, 0, self::STATUS_ERROR, count($images)); // // We won't take any further actions on these jobs // // Clean up the transcoding jobs and any S3 URIs that might have been created. // //self::removeOldTranscodingJobs($aid); // } else { // self::dbSetArticleProcessed($aid, $creator, '', $warning, $url, count($videoList), 0, 0, self::STATUS_TRANSCODING, count($images)); // } } }