forked from axiom-team/astrXbian
91 lines
3.9 KiB
Bash
91 lines
3.9 KiB
Bash
|
#!/bin/bash
|
|||
|
########################################################################
|
|||
|
# Author: Fred (support@qo-op.com)
|
|||
|
# Version: 0.1
|
|||
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|||
|
########################################################################
|
|||
|
# SCRIPT INTERACTIF POUR AJOUTER UN FICHIER à ASTROPORT/KODI
|
|||
|
#
|
|||
|
# 1. CAT: film, serie, anime
|
|||
|
# 2. TMDB: ID de la fiche sur https://www.themoviedb.org/
|
|||
|
# 3. TITLE: Titre de la vidéo
|
|||
|
# 4. YEAR: Année de la vidéo
|
|||
|
# 5. RES: Résolution 1080p, 4K, SD, 720, HD
|
|||
|
# 6. SAISON: Pour les séries et animes, c'est le numéro de saison.
|
|||
|
# Pour un film, le champ SAISON est utilisé pour renseigner la Saga
|
|||
|
# 7. GENRES: Action, Aventure, Fantastique, Animation, etc (choix multiple).
|
|||
|
# 8. GROUPES: Permet de regrouper des films. (choix multiple)
|
|||
|
#
|
|||
|
# https://github.com/Kodi-vStream/venom-xbmc-addons/wiki/Voir-et-partager-sa-biblioth%C3%A8que-priv%C3%A9e#d%C3%A9clarer-des-films
|
|||
|
########################################################################
|
|||
|
YOU=$(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1) && [[ ! $YOU ]] && echo "ipfs NOT RUNNING. EXIT" && exit 1
|
|||
|
HOME=/home/$YOU
|
|||
|
########################################################################
|
|||
|
MY_PATH="`dirname \"$0\"`" # relative
|
|||
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
|||
|
ME="${0##*/}"
|
|||
|
########################################################################
|
|||
|
|
|||
|
|
|||
|
########################################################################
|
|||
|
IPFSNODEID=$(ipfs id -f='<id>\n')
|
|||
|
[[ -f ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title ]] && XZUID=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title) || XZUID=$(cat /etc/hostname)
|
|||
|
|
|||
|
|
|||
|
########################################################################
|
|||
|
# CASE ## YOUTUBE
|
|||
|
########################################################################
|
|||
|
|
|||
|
#YTURL=$(zenity --entry --width 300 --title "Lien ou identifiant à copier" --text "Indiquez le lien (URL) ou l'ID de la vidéo" --entry-text="")
|
|||
|
YTURL=$1
|
|||
|
[[ $YTURL == "" ]] && exit 1
|
|||
|
|
|||
|
# Create TEMP directory to copy $YID_$TITLE.$FILE_EXT
|
|||
|
YTEMP="/tmp/$(date -u +%s%N | cut -b1-13)"
|
|||
|
mkdir -p ${YTEMP}
|
|||
|
|
|||
|
# youtube-dl $YTURL
|
|||
|
echo "VIDEO $YTURL"
|
|||
|
/usr/local/bin/youtube-dl -f '[height=720]/best' \
|
|||
|
--write-info-json --write-annotations \
|
|||
|
--no-mtime -o "${YTEMP}/%(id)s_%(title)s.%(ext)s" $YTURL
|
|||
|
|
|||
|
# Get filename, extract ID, make destination dir and move copy.
|
|||
|
YFILE=$(ls -t ${YTEMP} | head -n 1)
|
|||
|
FILE_NAME="$(basename "${YFILE}")"
|
|||
|
FILE_EXT="${FILE_NAME##*.}"
|
|||
|
|
|||
|
YID=$(echo "${FILE_NAME}" | cut -d "_" -f 1)
|
|||
|
YNAME=$(echo "${FILE_NAME}" | cut -d "_" -f 2-)
|
|||
|
TMDB="${YID}"
|
|||
|
|
|||
|
FILE_PATH="$HOME/astroport/youtube/$YID"
|
|||
|
echo "Creating directory $FILE_PATH"
|
|||
|
mkdir -p -v --mode=775 $FILE_PATH || echo "Directory creation failed :-("
|
|||
|
echo "Moving files there..."
|
|||
|
mv -f ${YTEMP}/* ${FILE_PATH}/
|
|||
|
|
|||
|
## CORRECT PARAMETERS to Make Kodi compatible YASTRXBIAN FILE
|
|||
|
TITLE="${YNAME%.*}"
|
|||
|
GENRES="[Youtube]"
|
|||
|
GROUPES="_IPNSKEY_"
|
|||
|
FILE_RES=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 "${FILE_PATH}/${FILE_NAME}" | cut -d "x" -f 2)
|
|||
|
RES=${FILE_RES%?}0p
|
|||
|
|
|||
|
## CREATE "~/astroport/${CAT}/${TMDB}/ajouter_video.txt" (with film CAT !!!)
|
|||
|
URLENCODE_FILE_NAME=$(echo ${FILE_NAME} | jq -Rr @uri)
|
|||
|
echo "film;${TMDB};${YEAR};${TITLE};${SAISON};${GENRES};${GROUPES};${RES};/ipfs/_IPFSREPFILEID_/$URLENCODE_FILE_NAME" > ~/astroport/youtube/${TMDB}/ajouter_video.txt
|
|||
|
# _IPFSREPFILEID_ is replaced later
|
|||
|
|
|||
|
rm -Rf ${YTEMP}
|
|||
|
|
|||
|
|
|||
|
########################################################################
|
|||
|
# ADD $FILE to IPFS / ASTROPORT / KODI
|
|||
|
########################################################################
|
|||
|
./new_youtube_video_in_astroport.sh "$HOME/astroport/youtube/${TMDB}/" "${FILE_NAME}" > /tmp/youtube_${TMDB}.log 2>&1
|
|||
|
########################################################################
|
|||
|
########################################################################
|
|||
|
|
|||
|
exit 0
|