Ver Fonte

import playlist and make pages for it and videos e2e

Harlan Iverson há 7 anos atrás
pai
commit
889432e841

+ 1 - 0
ispooge.com-v2/.gitignore

@@ -1 +1,2 @@
 ./app
 ./app
+*~

+ 1 - 1
ispooge.com-v2/Dockerfile

@@ -3,6 +3,6 @@ FROM cryogen:8-jdk_1.8_2.8.1
 RUN rm -rf /tmp/app
 RUN rm -rf /tmp/app
 ADD app /tmp/app
 ADD app /tmp/app
 
 
-RUN lein uberjar
+RUN lein deps
 
 
 #CMD ["java", "-jar", "target/app.jar"]
 #CMD ["java", "-jar", "target/app.jar"]

+ 1 - 0
ispooge.com-v2/app/project.clj

@@ -5,6 +5,7 @@
                       :url "http://www.eclipse.org/legal/epl-v10.html"}
                       :url "http://www.eclipse.org/legal/epl-v10.html"}
             :dependencies [[org.clojure/clojure "1.8.0"]
             :dependencies [[org.clojure/clojure "1.8.0"]
                            [ring/ring-devel "1.6.3"]
                            [ring/ring-devel "1.6.3"]
+                           [selmer "1.11.2"]
                            [compojure "1.6.0"]
                            [compojure "1.6.0"]
                            [ring-server "0.5.0"]
                            [ring-server "0.5.0"]
                            [cryogen-markdown "0.1.7"]
                            [cryogen-markdown "0.1.7"]

+ 1 - 0
ispooge.com-v2/app/resources/templates/md/pages/Why_iSpooge_now-1sU-DwWvl0M.md

@@ -0,0 +1 @@
+{:title "Video Why_iSpooge_now-1sU-DwWvl0M" :page-index 5001 :layout :video :video-thumbnail-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.jpg" :video-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.hls/out.m3u8" :video-description "Why_iSpooge_now-1sU-DwWvl0M" }

+ 45 - 0
ispooge.com-v2/app/resources/templates/md/pages/playlist-Random.md

@@ -0,0 +1,45 @@
+{:title "Video Washing_garments_in_the_sink-LE3tX_91iCI"
+
+:page-index 1000
+:layout :playlist
+
+:playlist-items [
+	{:video-thumbnail-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.jpg"
+	 :video-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.hls/out.m3u8"
+	 :title "Why_iSpooge_now-1sU-DwWvl0M"
+	 :url "/Why_iSpooge_now-1sU-DwWvl0M.html"}
+	 
+	{:video-thumbnail-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.jpg"
+	 :video-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.hls/out.m3u8"
+	 :title "Washing_garments_in_the_sink-LE3tX_91iCI"
+	 :url "/video-Washing_garments_in_the_sink-LE3tX_91iCI.html"}	 
+	 
+	{:video-thumbnail-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.jpg"
+	 :video-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.hls/out.m3u8"
+	 :title "Why_iSpooge_now-1sU-DwWvl0M"
+	 :url "/Why_iSpooge_now-1sU-DwWvl0M.html"}
+	 
+	{:video-thumbnail-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.jpg"
+	 :video-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.hls/out.m3u8"
+	 :title "Washing_garments_in_the_sink-LE3tX_91iCI"
+	 :url "/video-Washing_garments_in_the_sink-LE3tX_91iCI.html"}
+	 
+	{:video-thumbnail-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.jpg"
+	 :video-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.hls/out.m3u8"
+	 :title "Why_iSpooge_now-1sU-DwWvl0M"
+	 :url "/Why_iSpooge_now-1sU-DwWvl0M.html"}
+	 
+	{:video-thumbnail-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.jpg"
+	 :video-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.hls/out.m3u8"
+	 :title "Washing_garments_in_the_sink-LE3tX_91iCI"
+	 :url "/video-Washing_garments_in_the_sink-LE3tX_91iCI.html"}
+]
+
+
+:video-thumbnail-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.jpg" 
+:video-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.hls/out.m3u8"
+ :video-description "Washing_garments_in_the_sink-LE3tX_91iCI"
+ 
+ 
+  }
+ 

+ 24 - 0
ispooge.com-v2/app/resources/templates/md/pages/playlist-dl3.md

@@ -0,0 +1,24 @@
+{:title "dl3"
+
+:page-index 1002
+:layout :playlist
+
+
+:playlist-items [
+    {:video-thumbnail-url "/media/videos/Huel_Break-AYt0HH2AwOc.jpg"
+	  :video-url "/media/videos/Huel_Break-AYt0HH2AwOc.hls/out.m3u8"
+	  :title "Huel_Break-AYt0HH2AwOc"
+	  :url "/video-Huel_Break-AYt0HH2AwOc.html"}
+    {:video-thumbnail-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.jpg"
+	  :video-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.hls/out.m3u8"
+	  :title "Why_iSpooge_now-1sU-DwWvl0M"
+	  :url "/video-Why_iSpooge_now-1sU-DwWvl0M.html"}
+    {:video-thumbnail-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.jpg"
+	  :video-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.hls/out.m3u8"
+	  :title "Washing_garments_in_the_sink-LE3tX_91iCI"
+	  :url "/video-Washing_garments_in_the_sink-LE3tX_91iCI.html"}
+    {:video-thumbnail-url "/media/videos/Humidity_dropping-ioZzfjCywKs.jpg"
+	  :video-url "/media/videos/Humidity_dropping-ioZzfjCywKs.hls/out.m3u8"
+	  :title "Humidity_dropping-ioZzfjCywKs"
+	  :url "/video-Humidity_dropping-ioZzfjCywKs.html"}
+]}

+ 1 - 0
ispooge.com-v2/app/resources/templates/md/pages/video-Huel_Break-AYt0HH2AwOc.md

@@ -0,0 +1 @@
+{:title "Video Huel_Break-AYt0HH2AwOc" :page-index 5002 :layout :video :video-thumbnail-url "/media/videos/Huel_Break-AYt0HH2AwOc.jpg" :video-url "/media/videos/Huel_Break-AYt0HH2AwOc.hls/out.m3u8" :video-description "Huel_Break-AYt0HH2AwOc" }

+ 1 - 0
ispooge.com-v2/app/resources/templates/md/pages/video-Humidity_dropping-ioZzfjCywKs.md

@@ -0,0 +1 @@
+{:title "Video Humidity_dropping-ioZzfjCywKs" :page-index 5003 :layout :video :video-thumbnail-url "/media/videos/Humidity_dropping-ioZzfjCywKs.jpg" :video-url "/media/videos/Humidity_dropping-ioZzfjCywKs.hls/out.m3u8" :video-description "Humidity_dropping-ioZzfjCywKs" }

+ 2 - 0
ispooge.com-v2/app/resources/templates/md/pages/video-Washing_garments_in_the_sink-LE3tX_91iCI.md

@@ -0,0 +1,2 @@
+{:title "Video Washing_garments_in_the_sink-LE3tX_91iCI" :page-index 5000 :layout :video :video-thumbnail-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.jpg" :video-url "/media/videos/Washing_garments_in_the_sink-LE3tX_91iCI.hls/out.m3u8" :video-description "Washing_garments_in_the_sink-LE3tX_91iCI" }
+ 

+ 2 - 0
ispooge.com-v2/app/resources/templates/md/pages/video-Why_iSpooge_now-1sU-DwWvl0M.md

@@ -0,0 +1,2 @@
+{:title "Video Why_iSpooge_now-1sU-DwWvl0M" :page-index 5001 :layout :video :video-thumbnail-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.jpg" :video-url "/media/videos/Why_iSpooge_now-1sU-DwWvl0M.hls/out.m3u8" :video-description "Why_iSpooge_now-1sU-DwWvl0M" }
+ 

+ 5 - 1
ispooge.com-v2/app/src/cryogen/core.clj

@@ -1,8 +1,12 @@
 (ns cryogen.core
 (ns cryogen.core
   (:require [cryogen-core.compiler :refer [compile-assets-timed]]
   (:require [cryogen-core.compiler :refer [compile-assets-timed]]
-            [cryogen-core.plugins :refer [load-plugins]]))
+            [cryogen-core.plugins :refer [load-plugins]]
+            [selmer.filters :as selmer-filters]))
 
 
 (defn -main []
 (defn -main []
+  
   (load-plugins)
   (load-plugins)
+  (println "ADDING MOD FILTER 1")
+(selmer-filters/add-filter! :mod (fn [x y] [:safe (mod x (read-string y))]))
   (compile-assets-timed)
   (compile-assets-timed)
   (System/exit 0))
   (System/exit 0))

+ 6 - 1
ispooge.com-v2/app/src/cryogen/server.clj

@@ -6,10 +6,15 @@
             [cryogen-core.watcher :refer [start-watcher!]]
             [cryogen-core.watcher :refer [start-watcher!]]
             [cryogen-core.plugins :refer [load-plugins]]
             [cryogen-core.plugins :refer [load-plugins]]
             [cryogen-core.compiler :refer [compile-assets-timed read-config]]
             [cryogen-core.compiler :refer [compile-assets-timed read-config]]
-            [cryogen-core.io :refer [path]]))
+            [cryogen-core.io :refer [path]]
+            [selmer.filters :as selmer-filters]))
 
 
 (defn init []
 (defn init []
   (load-plugins)
   (load-plugins)
+  
+  (println "ADDING MOD FILTER 2")
+(selmer-filters/add-filter! :mod (fn [x y] [:safe (str (mod x (read-string y)))]))  
+  
   (compile-assets-timed)
   (compile-assets-timed)
   (let [ignored-files (-> (read-config) :ignored-files)]
   (let [ignored-files (-> (read-config) :ignored-files)]
     (start-watcher! "resources/templates" ignored-files compile-assets-timed)))
     (start-watcher! "resources/templates" ignored-files compile-assets-timed)))

+ 1 - 0
ispooge.com-v2/public

@@ -0,0 +1 @@
+app/resources/public

+ 14 - 0
ispooge.com-v2/scripts/download-playlist.sh

@@ -0,0 +1,14 @@
+PLAYLIST="PLD5lYPY-uZpq7x2zRIiULo2oZ-tWs2lPx"
+
+
+
+youtube-dl \
+  --verbose \
+  --add-metadata \
+  --no-mark-watched \
+  --yes-playlist \
+  --write-all-thumbnails \
+  --all-subs \
+  --no-call-home \
+  --restrict-filenames \
+  "https://www.youtube.com/playlist?list=$PLAYLIST"

+ 15 - 0
ispooge.com-v2/scripts/import-playlist.sh

@@ -0,0 +1,15 @@
+PLAYLIST=${1:"PLD5lYPY-uZpq7x2zRIiULo2oZ-tWs2lPx"}
+NAME=${2:"Random"}
+
+scripts/download-playlist.sh $PLAYLIST
+
+VIDEOS=$( find $PLAYLIST_DIR -maxdepth 1 -type f -name *.mp4 \
+  | xargs -n1 basename -s .mp4 )
+
+
+for vid in $VIDEOS; do
+  scripts/segment-video.sh $vid
+  scripts/make-video-page $vid > 
+done
+
+scripts/make-playlist-page.sh . > playlist-$NAME.md

+ 42 - 0
ispooge.com-v2/scripts/make-playlist-page.sh

@@ -0,0 +1,42 @@
+#!/bin/bash
+
+
+# we have run download-playlist.sh in $PLAYLIST_DIR
+# we have segmented each video in the playlist
+# there is a thumbnail for each downloaded video
+
+PLAYLIST_DIR="$1"
+
+NAME=$(basename $PLAYLIST_DIR)
+PAGE_IDX=$(expr 1000 + `ls -l md-pages/playlist-*.md | wc -l`)
+
+cat <<EOM
+{:title "$NAME"
+
+:page-index $PAGE_IDX
+:layout :playlist
+
+
+:playlist-items [
+EOM
+
+
+VIDEOS=$( find $PLAYLIST_DIR -maxdepth 1 -type f -name *.mp4 \
+  | xargs -n1 basename -s .mp4 )
+
+#echo $VIDEOS | xargs -n1 echo "VID"
+
+for vid in $VIDEOS; do
+  cat <<EOM
+    {:video-thumbnail-url "/media/videos/${vid}.jpg"
+	  :video-url "/media/videos/${vid}.hls/out.m3u8"
+	  :title "${vid}"
+	  :url "/video-${vid}.html"}
+EOM
+  
+done
+
+
+echo "]}"
+
+#sed -e 's/^/https:\/\/tinydatacenter\.com\//' | xargs -n1 curl -o /dev/null