# VideoKonverter - Samsung Tizen TV Installation Die VideoKonverter TV-App auf einem Samsung Smart TV (Tizen) installieren. ## Voraussetzungen - Samsung Smart TV mit Tizen OS (ab 2017, getestet: Tizen 9.0) - PC und TV im gleichen Netzwerk - Samsung Developer Account (kostenlos): https://developer.samsung.com/ - Tizen Studio auf dem PC ## Schritt 1: Tizen Studio installieren Download: https://developer.tizen.org/development/tizen-studio/download ### Linux (Manjaro/Arch) ```bash # Installer herunterladen und ausfuehren chmod +x web-ide_Tizen_Studio_*.bin ./web-ide_Tizen_Studio_*.bin # Nach Installation: Package Manager CLI nutzen ~/tizen-studio/package-manager/package-manager-cli.bin install \ --accept-license cert-add-on TV-SAMSUNG-Public # WICHTIG auf Manjaro/Arch: Fake-dpkg Wrapper anlegen # (Tizen PM prueft dpkg Pakete die auf Arch nicht existieren) mkdir -p /tmp/fake-dpkg cat > /tmp/fake-dpkg/dpkg << 'EOF' #!/bin/bash if [[ "$*" == *"-l"* ]] || [[ "$*" == *"--list"* ]] || [[ "$*" == *"-s"* ]]; then for pkg in "$@"; do [[ "$pkg" != -* ]] && echo "ii $pkg 99.0 amd64 Fake" done fi exit 0 EOF chmod +x /tmp/fake-dpkg/dpkg # Dann mit PATH="/tmp/fake-dpkg:$PATH" den Package Manager starten ``` ### Wichtige Pfade nach Installation ``` ~/tizen-studio/tools/sdb # Smart Development Bridge ~/tizen-studio/tools/ide/bin/tizen # CLI-Tool ~/tizen-studio/tools/certificate-manager/certificate-manager # Certificate Manager GUI ``` ## Schritt 2: Samsung Developer Zertifikat erstellen Das Zertifikat signiert die App fuer den TV. Samsung TVs akzeptieren NUR Samsung-signierte Zertifikate (nicht Standard-Tizen!). ### Voraussetzung: Samsung Certificate Extension installieren ```bash # MUSS installiert sein, sonst erscheint "Samsung" nicht als Option! PATH="/tmp/fake-dpkg:$PATH" ~/tizen-studio/package-manager/package-manager-cli.bin \ install --accept-license cert-add-on ``` ### Zertifikat erstellen (Certificate Manager GUI) 1. Certificate Manager starten: `~/tizen-studio/tools/certificate-manager/certificate-manager` 2. **"+" klicken** > **Samsung** waehlen (NICHT Tizen!) 3. **TV** als Geraetetyp waehlen 4. Author-Zertifikat: Key Filename + Author Name eingeben 5. Samsung Developer Account einloggen 6. Distributor-Zertifikat: DUID des TVs eintragen (siehe Schritt 3) 7. **Finish** - Zertifikat wird unter `~/SamsungCertificate//` gespeichert **WICHTIG:** Zertifikat sichern! Bei App-Updates muss das gleiche Zertifikat verwendet werden. Backup liegt in `tizen-app/certs/`. ## Schritt 3: TV vorbereiten (Developer Mode) 1. TV einschalten 2. **Apps** oeffnen (Home > Apps) 3. Ziffern **12345** eingeben (virtuelles Nummernfeld bei neueren Fernbedienungen) 4. Developer Mode **ON** schalten 5. **Host PC IP** eingeben (IP des PCs mit Tizen Studio) 6. **TV neustarten** (wichtig!) ### DUID auslesen (fuer Zertifikat) ```bash # Erst TV verbinden (Schritt 4), dann: ~/tizen-studio/tools/sdb shell 0 getduid # Gibt z.B. zurueck: KLCDNTGIJS4OU ``` ## Schritt 4: TV verbinden ```bash # Verbinden (Port 26101 muss offen sein) ~/tizen-studio/tools/sdb connect # Pruefen ~/tizen-studio/tools/sdb devices # Zeigt: :26101 device ``` Falls Verbindung fehlschlaegt: - Developer Mode aktiviert? PC-IP korrekt eingegeben? - TV nach Aenderung des Developer Mode neugestartet? - Port 26101 in Firewall offen? ## Schritt 5: WGT bauen und installieren ### WGT mit Samsung-Zertifikat signieren ```bash # Sauberes Build-Verzeichnis erstellen (nur App-Dateien!) mkdir -p /tmp/tizen-build cp tizen-app/config.xml tizen-app/index.html tizen-app/icon.png /tmp/tizen-build/ # WGT mit Samsung Security Profile signieren cd /tmp/tizen-build ~/tizen-studio/tools/ide/bin/tizen package -t wgt -s -- /tmp/tizen-build/ ``` ### Auf TV installieren ```bash # TV-Name mit sdb devices ermitteln ~/tizen-studio/tools/ide/bin/tizen install -n /tmp/tizen-build/VideoKonverter.wgt -t ``` Erfolgreiche Ausgabe: ``` Tizen application is successfully installed. ``` ### App deinstallieren (falls noetig) ```bash ~/tizen-studio/tools/sdb shell 0 vd_appuninstall vkTVApp001.VideoKonverter ``` ## Schritt 6: App starten 1. App erscheint als **"VideoKonverter"** im Apps-Menue des TVs 2. Beim **ersten Start**: Server-IP eingeben (z.B. `192.168.155.12:8080`) 3. Die IP wird gespeichert - beim naechsten Start verbindet die App automatisch 4. Login mit TV-App Benutzerdaten (erstellt in der Admin-Oberflaeche unter `/admin`) ## Wie funktioniert die App? Die Tizen-App ist nur ein **duenner Wrapper**. Sie macht nichts ausser: 1. Beim ersten Start die Server-Adresse abfragen 2. Weiterleiten auf `http:///tv/` 3. Ab dann kommt alles vom Docker-Container **Vorteil:** Bei Software-Updates muss nur der Docker-Container aktualisiert werden. Die App auf dem TV muss NICHT neu installiert werden. ## Fehlerbehebung ### "Invalid certificate chain" bei Installation - **Haeufigster Fehler!** Samsung TVs akzeptieren NUR Samsung-signierte Zertifikate - Im Certificate Manager: "Samsung" waehlen, NICHT "Tizen" - Samsung Certificate Extension (`cert-add-on`) muss installiert sein ### TV wird nicht gefunden - Sind PC und TV im gleichen Netzwerk/VLAN? - Ist Developer Mode auf dem TV aktiviert + TV neugestartet? - Firewall auf dem PC: Port 26101 offen? ### Video startet langsam / nicht - Server laeuft? `curl http://:8080/tv/` - AV1-Videos brauchen einen TV mit AV1-Unterstuetzung (ab ~2020) - Streaming nutzt fragmented MP4 (`frag_keyframe+empty_moov+default_base_moof`) ### App startet nicht / weisser Bildschirm - Richtige Server-IP eingegeben? - Browser-Cache leeren: App deinstallieren und neu installieren ## Getestete Konfiguration | Komponente | Version | |-----------|---------| | Samsung TV | GQ65Q7FAAUXZG (Tizen 9.0) | | Tizen Studio | 6.0+ | | sdb | 4.2.36 | | tizen CLI | 2.5.25 | | Host OS | Manjaro Linux (KDE) | ## Links - Samsung Developer Portal: https://developer.samsung.com/smarttv/develop - Tizen Studio Download: https://developer.tizen.org/development/tizen-studio/download - Samsung TV Quick-Start Guide: https://developer.samsung.com/smarttv/develop/getting-started/quick-start-guide.html