#!/bin/bash

PLAYLISTS=(
  "https://www.youtube.com/playlist?list=PLqb58q4vyU82xCF_22mHtbL-0kqhv_4OB"
  "https://www.youtube.com/playlist?list=PLqb58q4vyU829P0kyA0qr6q8B0khdZAhX"
  "https://www.youtube.com/playlist?list=PLqb58q4vyU80j4rNQevpjwmn_nK7aT-SN"
  "https://www.youtube.com/playlist?list=PLqb58q4vyU81t3UZvSthNg1N9PRe6vwet"
  "https://www.youtube.com/playlist?list=PLqb58q4vyU80Gd4YygiJapTfNNl5f7aTL"
)

HLS_DIR="/var/www/html/las/hls"
mkdir -p "$HLS_DIR"

USER_AGENT="Mozilla/5.0"

while true; do
    VIDEOS=()

    echo "🔄 Încarc playlist..."

    for P in "${PLAYLISTS[@]}"; do
        IDS=$(yt-dlp --flat-playlist --print id "$P" 2>/dev/null)

        for ID in $IDS; do
            VIDEOS+=("https://www.youtube.com/watch?v=$ID")
        done
    done

    VIDEOS=($(shuf -e "${VIDEOS[@]}"))

    for URL in "${VIDEOS[@]}"; do
        echo "🎬 Rulez: $URL"

        STREAM=$(yt-dlp \
            -f "bestvideo[height<=1080]+bestaudio/best" \
            -g "$URL" \
            --user-agent "$USER_AGENT" \
            --no-warnings 2>/dev/null)

        if [ -z "$STREAM" ]; then
            echo "⚠️ skip"
            continue
        fi

        echo "🚀 ffmpeg..."

        ffmpeg -loglevel error -re \
            -user_agent "$USER_AGENT" \
            -i "$STREAM" \
            -c:v libx264 -preset veryfast -crf 23 \
            -c:a aac -b:a 128k \
            -f hls \
            -hls_time 4 \
            -hls_list_size 10 \
            -hls_flags delete_segments+append_list+discont_start \
            -hls_segment_filename "$HLS_DIR/seg_%03d.ts" \
            "$HLS_DIR/stream.m3u8"

        echo "➡️ next video"
        sleep 1
    done

done
