/** * @param type $RIFFdata * * @return bool */ public function ParseRIFFdata(&$RIFFdata) { $info =& $this->getid3->info; if ($RIFFdata) { $tempfile = tempnam(GetId3Core::getTempDir(), 'getID3'); $fp_temp = fopen($tempfile, 'wb'); $RIFFdataLength = strlen($RIFFdata); $NewLengthString = Helper::LittleEndian2String($RIFFdataLength, 4); for ($i = 0; $i < 4; ++$i) { $RIFFdata[$i + 4] = $NewLengthString[$i]; } fwrite($fp_temp, $RIFFdata); fclose($fp_temp); $getid3_temp = new GetId3Core(); $getid3_temp->openfile($tempfile); $getid3_temp->info['filesize'] = $RIFFdataLength; $getid3_temp->info['filenamepath'] = $info['filenamepath']; $getid3_temp->info['tags'] = $info['tags']; $getid3_temp->info['warning'] = $info['warning']; $getid3_temp->info['error'] = $info['error']; $getid3_temp->info['comments'] = $info['comments']; $getid3_temp->info['audio'] = isset($info['audio']) ? $info['audio'] : array(); $getid3_temp->info['video'] = isset($info['video']) ? $info['video'] : array(); $getid3_riff = new self($getid3_temp); $getid3_riff->analyze(); $info['riff'] = $getid3_temp->info['riff']; $info['warning'] = $getid3_temp->info['warning']; $info['error'] = $getid3_temp->info['error']; $info['tags'] = $getid3_temp->info['tags']; $info['comments'] = $getid3_temp->info['comments']; unset($getid3_riff, $getid3_temp); unlink($tempfile); } return false; }
/** * Transform file content to structured Rules * @param string|Content $content * @return Rules */ public static function parse($content) { $parser = new self(); return $parser->analyze($content); }