aboutsummaryrefslogtreecommitdiffstats
path: root/processor.php
diff options
context:
space:
mode:
Diffstat (limited to 'processor.php')
-rw-r--r--processor.php55
1 files changed, 55 insertions, 0 deletions
diff --git a/processor.php b/processor.php
new file mode 100644
index 0000000..a8ac45e
--- /dev/null
+++ b/processor.php
@@ -0,0 +1,55 @@
+<?php
+require_once "init.php";
+
+if (empty($_GET['link'])){
+ header('Location: index.html');
+}
+
+$baselink = htmlspecialchars($_GET['link']);
+
+$yturl = 'youtu.be/';
+
+if (strpos($baselink,$yturl) !== false){
+ $link = preg_replace('~^https?://youtu\.be/([a-z\d]+)$~i', 'http://www.youtube.com/watch?v=$1', $baselink);
+} else {
+ $link = $baselink;
+}
+
+parse_str($link, $urlData);
+$my_id = array_values($urlData)[0];
+
+$videoFetchURL = "http://www.youtube.com/get_video_info?&video_id=" . $my_id . "&asv=3&el=detailpage&hl=en_US";
+$videoData = get($videoFetchURL);
+
+parse_str($videoData, $video_info);
+
+$video_info = json_decode(json_encode($video_info));
+if (!$video_info->status === "ok") {
+ die("error in fetching youtube video data");
+}
+$videoTitle = $video_info->title;
+$videoAuthor = $video_info->author;
+$videoDurationSecs = $video_info->length_seconds;
+$videoDuration = secToDuration($videoDurationSecs);
+$videoViews = $video_info->view_count;
+
+//change hqdefault.jpg to default.jpg for downgrading the thumbnail quality
+$videoThumbURL = "https://i1.ytimg.com/vi/{$my_id}/hqdefault.jpg";
+$librethumb = "https://i1.ytimg.com/vi/{$my_id}/maxresdefault.jpg";
+
+if (!isset($video_info->url_encoded_fmt_stream_map)) {
+ die('No data found');
+}
+
+$streamFormats = explode(",", $video_info->url_encoded_fmt_stream_map);
+
+if (isset($video_info->adaptive_fmts)) {
+ $streamSFormats = explode(",", $video_info->adaptive_fmts);
+ $pStreams = parseStream($streamSFormats);
+}
+
+$cStreams = parseStream($streamFormats);
+
+// Aquí selecciona solo 2 vídeos principales.
+$videosStream = array_slice($cStreams, 0, 2);
+