I recently came accross this code that take a youtube video url (for example:http://youtube.com/watch?v=iZdF9PgZ_Dk) and converts that url into a readable path location to the flv file for that movie so that the flash player can read it and play it. The only problem for me is that it uses curl, and hosting account that I have doesnt have it enabled.. its one of those cheap shared server plans... so I need to use the same code just with out the curl part... How would I accomplish this?
Thanks for any suggestions!
Code: Select all
ini_set("max_execution_time","3600");
$baseUrl = "http://www.youtube.com/v/%s";
$idVideo = "3IcwG0jUFxU";
$urlVideo = sprintf($baseUrl,$idVideo);
$baseVideoUrl = "http://www.youtube.com/get_video.php?%s";
ob_start();
// get via CuRL da great library so fine
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $urlVideo);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);
$out = ob_get_clean();
$strs = explode("&t=",$out);
$final = explode("\n",$strs[1]);
$t = $final[0];
$finalUrlVideo = getVideoUrl($idVideo,$t);
$filv = file_get_contents($finalUrlVideo);
$fo = fopen("file.flv","w+");
$fw = fwrite($fo,$filv);
$fc = fclose($fo);
/* getVideoUrl ( string idVideo , string tValue ) */
function getVideoUrl ($id,$tval) {
global $baseVideoUrl;
return sprintf($baseVideoUrl,"video_id=".$id."&t=".trim($tval));
}