Forum społeczności kodiwpigulce.pl - wszystko o Kodi! Polskie wtyczki, dodatki, poradniki.
Kanały w google tv - Wersja do druku

+- Forum społeczności kodiwpigulce.pl - wszystko o Kodi! Polskie wtyczki, dodatki, poradniki. (https://forum.kodiwpigulce.pl)
+-- Dział: Android/AndroidTV (https://forum.kodiwpigulce.pl/forumdisplay.php?fid=46)
+--- Dział: Pomoc & Poradniki (https://forum.kodiwpigulce.pl/forumdisplay.php?fid=48)
+--- Wątek: Kanały w google tv (/showthread.php?tid=6338)

Strony: 1 2 3


Kanały w google tv - azizi - 06-10-2025

Czy można na ekranie głównym google tv dodać dodatkową listę wyświetlająca piliki wideo z lokalnego katalogu?
Chodzi mi o osiągniecie wizualnego wyglądu analogicznie jak wyświetlają się np filmy z youtube, prime video itd.
Udało mi się to np z Kodi zrobić dla plików typu filmy/seriale ale dla plików lokalnych (moich nagrań z telefonu) nie umiem tego osiągnąć.


RE: Kanały w google tv - harypoter - 06-10-2025

A jak zrobiłeś dla filmów i seriali?


RE: Kanały w google tv - azizi - 07-10-2025




RE: Kanały w google tv - Tomek - 07-10-2025

A próbowałeś dać im własne By zobaczyć linki musisz się zalogować lub zarejestrować. nfo? , zeskanować do biblioteki itp itd używając scrapera do plików nfo (domyśłnie jest w kodi z tego co pamiętam) a potem utworzyć listę? Nie wiem czy będą miniaturki (ale tu znowu można porobić screenshoty materiału i wrzucić go w katalog itp)


RE: Kanały w google tv - azizi - 07-10-2025




RE: Kanały w google tv - Tomek - 07-10-2025

machnij sobie skrypt w pythonie/bash który na podstawie nazwy pliku, daty tworzył odpowiednie nfo


RE: Kanały w google tv - azizi - 07-10-2025

(07-10-2025, 07:09 AM)Tomek napisał(a): machnij sobie skrypt w pythonie/bash który na podstawie nazwy pliku, daty tworzył odpowiednie nfo
Rozumiem co piszesz ale czy dam radę ogarnąć skrypt to inny temat Smile

Przyznam szczerze, że to trochę dużo roboty na około aby ostatecznie w google tv mi się wyświetliło na ekranie głównym.
Tu też nie wiadomo czy się pokaże, bo te kanały często żyją swoim życiem i różnie z tym bywa :/

Myślałem, że będzie coś jak apka do plexa o nazwie chyba plex channels. Instalujesz ją i dzięki temu jest opcja dodania większej ilość kanałów na ekranie google tv. 
Szkoda, że do kodi nikt czegoś takiego nie przewidział. Z drugiej strony, kodi wystarczy skonfigurować Smile


RE: Kanały w google tv - Tomek - 07-10-2025

3 sekundy z chatem gpt:
import os
import datetime
import xml.etree.ElementTree as ET

# Rozszerzenia plików wideo, które Kodi rozpoznaje
VIDEO_EXTENSIONS = {'.mp4', '.mkv', '.avi', '.mov', '.wmv', '.flv', '.mpg', '.mpeg'}

def create_nfo(title, date, path, is_folder=False):
    """Tworzy plik NFO w formacie akceptowanym przez Kodi."""
    # Wybór głównego tagu: <movie> dla pliku, <tvshow> dla folderu
    root_tag = 'tvshow' if is_folder else 'movie'
    root = ET.Element(root_tag)

    title_el = ET.SubElement(root, 'title')
    title_el.text = title

    date_el = ET.SubElement(root, 'dateadded')
    date_el.text = date

    # Formatowanie XML (ładny zapis z wcięciami)
    xml_str = ET.tostring(root, encoding='utf-8')
    nfo_path = os.path.splitext(path)[0] + '.nfo'

    # Zapis NFO
    with open(nfo_path, 'wb') as f:
        f.write(b'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n')
        f.write(xml_str)

    print(f'Utworzono NFO: {nfo_path}')

def generate_nfo_for_directory(base_path):
    """Przechodzi po wszystkich plikach i katalogach, tworząc NFO."""
    for root, dirs, files in os.walk(base_path):
        # Najpierw dla folderów (TV show / kolekcje)
        for d in dirs:
            dir_path = os.path.join(root, d)
            nfo_path = os.path.join(dir_path, 'tvshow.nfo')
            if not os.path.exists(nfo_path):
                creation_time = os.path.getctime(dir_path)
                date_str = datetime.datetime.fromtimestamp(creation_time).strftime('%Y-%m-%d')
                create_nfo(d, date_str, nfo_path, is_folder=True)

        # Następnie dla plików wideo
        for f in files:
            file_path = os.path.join(root, f)
            name, ext = os.path.splitext(f)
            if ext.lower() in VIDEO_EXTENSIONS:
                nfo_path = os.path.splitext(file_path)[0] + '.nfo'
                if not os.path.exists(nfo_path):
                    creation_time = os.path.getctime(file_path)
                    date_str = datetime.datetime.fromtimestamp(creation_time).strftime('%Y-%m-%d')
                    create_nfo(name, date_str, file_path, is_folder=False)

if __name__ == "__main__":
    base_dir = input("Podaj ścieżkę katalogu z plikami wideo: ").strip('"')
    if not os.path.isdir(base_dir):
        print("Błąd: podana ścieżka nie jest katalogiem.")
    else:
        generate_nfo_for_directory(base_dir)
        print("Zakończono generowanie plików NFO.")
Oczywiście do zmian we własnym zakresie


RE: Kanały w google tv - azizi - 07-10-2025

(07-10-2025, 07:42 AM)Tomek napisał(a): 3 sekundy z chatem gpt:
import os
import datetime
import xml.etree.ElementTree as ET

# Rozszerzenia plików wideo, które Kodi rozpoznaje
VIDEO_EXTENSIONS = {'.mp4', '.mkv', '.avi', '.mov', '.wmv', '.flv', '.mpg', '.mpeg'}

def create_nfo(title, date, path, is_folder=False):
    """Tworzy plik NFO w formacie akceptowanym przez Kodi."""
    # Wybór głównego tagu: <movie> dla pliku, <tvshow> dla folderu
    root_tag = 'tvshow' if is_folder else 'movie'
    root = ET.Element(root_tag)

    title_el = ET.SubElement(root, 'title')
    title_el.text = title

    date_el = ET.SubElement(root, 'dateadded')
    date_el.text = date

    # Formatowanie XML (ładny zapis z wcięciami)
    xml_str = ET.tostring(root, encoding='utf-8')
    nfo_path = os.path.splitext(path)[0] + '.nfo'

    # Zapis NFO
    with open(nfo_path, 'wb') as f:
        f.write(b'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n')
        f.write(xml_str)

    print(f'Utworzono NFO: {nfo_path}')

def generate_nfo_for_directory(base_path):
    """Przechodzi po wszystkich plikach i katalogach, tworząc NFO."""
    for root, dirs, files in os.walk(base_path):
        # Najpierw dla folderów (TV show / kolekcje)
        for d in dirs:
            dir_path = os.path.join(root, d)
            nfo_path = os.path.join(dir_path, 'tvshow.nfo')
            if not os.path.exists(nfo_path):
                creation_time = os.path.getctime(dir_path)
                date_str = datetime.datetime.fromtimestamp(creation_time).strftime('%Y-%m-%d')
                create_nfo(d, date_str, nfo_path, is_folder=True)

        # Następnie dla plików wideo
        for f in files:
            file_path = os.path.join(root, f)
            name, ext = os.path.splitext(f)
            if ext.lower() in VIDEO_EXTENSIONS:
                nfo_path = os.path.splitext(file_path)[0] + '.nfo'
                if not os.path.exists(nfo_path):
                    creation_time = os.path.getctime(file_path)
                    date_str = datetime.datetime.fromtimestamp(creation_time).strftime('%Y-%m-%d')
                    create_nfo(name, date_str, file_path, is_folder=False)

if __name__ == "__main__":
    base_dir = input("Podaj ścieżkę katalogu z plikami wideo: ").strip('"')
    if not os.path.isdir(base_dir):
        print("Błąd: podana ścieżka nie jest katalogiem.")
    else:
        generate_nfo_for_directory(base_dir)
        print("Zakończono generowanie plików NFO.")
Oczywiście do zmian we własnym zakresie
Dzięki Smile


RE: Kanały w google tv - azizi - 08-10-2025

OK powalczyłem trochę z tymi nfo dziś.

Zrobiłem sobie katalog "nagrania" i w nim wrzuciłem tak pliki testowe:
test1.jpg
test1.mkv
test1.nfo
test2.jpg
test2.mkv
test2.nfo
test3.jpg
test3.mkv
test3.nfo

Dodałem sobie w kodi->video-> katalog nagrania, a potem na nim ustawiłem:
Folder zawiera: Filmy
Dostawca informacji: local information only.
[Obrazek: XcciHdrl.png]

W menu głównym Kodi podpiąłem sobie "nagrania" na listę i jak w nie wejdę to mi się ładnie wyświetla test1, 2 i 3.
Czyli pliki nfo działają i jest tak jak powinno być.

Teraz próbuję w video->listy->nowa inteligenta lista dodać nową (tak jak to mam np do zwykłych filmów i seriali).
Tu wskazuje katalog na dysku gdzie mam pliki test ale mimo to nic mi się po wejściu w listę nie wyświetla.
[Obrazek: SQKTYf0l.jpeg]

Dla listy z filmami lub serialami wystarczy, że wybiorę typ odpowiedni tj filmy lub seriale i nic więcej w sumie nie trzeba ustawiać aby zawartość się dodała.
Dodam, że pliki test1, 2 i 3 pojawiają się w liście z Filmami (ogólnej).

Co nie tak ustawiam przy tworzeniu nowej listy? Jak powinna wyglądać taka reguła aby złapał tylko te konkretne pliki z karalogu?


edit.
wystarczyło w regule listy wybrać folder i zmienić z "zawiera" na "jest" Smile
[Obrazek: h8QjXVCl.png]

Teraz będę musiał jeszcze powalczyć z interfejsem google tv któregoś dnia, bo testy były na PC.