private function get_youtube_links($html)
{
if (preg_match('@url_encoded_fmt_stream_map["\']:\\s*["\']([^"\'\\s]*)@', $html, $matches)) {
$parts = explode(",", $matches[1]);
foreach ($parts as $p) {
$query = str_replace('\\u0026', '&', $p);
parse_str($query, $arr);
$url = $arr['url'];
if (isset($arr['sig'])) {
$url = $url . '&signature=' . $arr['sig'];
} else {
if (isset($arr['signature'])) {
$url = $url . '&signature=' . $arr['signature'];
} else {
if (isset($arr['s'])) {
// this is probably a VEVO/ads video... signature must be decrypted first!
return $this->youtube_dl();
}
}
}
$result[$arr['itag']] = $url;
}
return $result;
}
return false;
}