Prosperotv
Un client IPTV natif pour PlayStation 5 homebrew Parcourir, rechercher et enregistrer les canaux depuis iptv-org, les listes de lecture M3U personnalisées, ou...
Choisir une liste...
ProsperoTV
Un client IPTV natif pour PlayStation 5 homebrew
Parcourir, rechercher et enregistrer les canaux depuis iptv-org, les listes de lecture M3U personnalisées, ou
votre propre fournisseur de codes Xtream avec un premier cache SQLite hors ligne, un
contrôleur-première interface, et le décodage vidéo natif PS5.
.
Démo disponible en cliquant sur l'image ci-dessous.
Faits marquants
- Parcourez des milliers de chaînes IPTV gérées par la communauté depuis l'iptv-org cataloguer, ajouter une liste de lecture HTTP(S) M3U personnalisée, ou connecter un code Xtream compte.
- Recherche par nom et filtre par pays, langue, catégorie et annonce qualité avec pagination continue de contrôleur.
- Décoder H.264, HEVC et VP9 à travers les chemins vidéo natifs PS5 à des résolutions vers le haut à 4K.
- Gardez le catalogue, les favoris, les canaux récents, et l'état source rapide et
persistante
/download0. - Poignez le buffering HLS en direct, les segments bloqués, les URLs alternées et les flux échoués sans déstabiliser la prochaine session de lecture.
- Utilisez une interface RmlUi plein écran polie avec navigation DualSense, native entrée texte, favoris dédiés, et une superposition optionnelle des statistiques de lecture.
Fondations de projets
[!IMPORTANT] Construit sur lePS5 Native App Boilerplate.ProsperoTV conserve sa structure d'application C++20, propre reproductible l'exécution, l'outillage FSELF, les tests, le flux de déploiement et l'automatisation de la libération.
[!IMPORTANT] Le travail vidéo est documenté dansPS5 Hardware Video Decoding Research.Le dépôt d'accompagnement enregistre VideoDec2, H.264, HEVC, VP9, copie zéro AGC, la résolution et les résultats de performance qui ont éclairé la vidéo native de ProsperoTV pipeline.
[!IMPORTANT] Le travail audio est documenté enPS5 Audio Decoding Research.Le dépôt compagnon enregistre codec, AJM, matériel et firmware décharge, et la recherche sur le chemin de sortie qui a éclairé l'implémentation audio de ProsperoTV.
[!IMPORTANT] Les données du canal proviennent deiptv-org/iptv.ProsperoTV est un client indépendant. Ni ce projet ni les hôtes iptv-org les flux énumérés, et la disponibilité du canal peut changer sans préavis.
Valeur
- Oui.
Titre de la coquilleProsperoTVAutres
Titre IDPPSA99003Autres
Catégorie Shell
Version bêta actuelle01.000.004Autres
Source de versionsce_sys/param.jsonAutres
Catalogue intégréhttps://iptv-org.github.io/iptv/index.m3uAutres
Données écrites/download0seulement
Caractéristiques
- Ouvrir le dernier catalogue de canaux vérifié immédiatement à partir d'un cache SQLite local pendant qu'un rafraîchissement se déroule en arrière-plan.
- Parcourir la TV en direct, Favoris, Récent, Nouvelles, Sports, Enfants, et autre chaîne groupes avec pagination continue du contrôleur.
- Recherche insensible aux cas par nom de canal et filtre par pays, langue, la catégorie et la qualité annoncée à l'aide du clavier PS5 natif.
- Conserver les favoris, les canaux récents, la sélection des sources et les données du catalogue sous
/download0; les rafraîchissements échoués laissent la dernière bonne base de données intacte. - Ajouter une liste de lecture personnalisée HTTP(S) M3U ou M3U8 à côté de l'iptv-org intégré source.
- Ajouter un serveur Xtream fourni par l'utilisateur, un nom d'utilisateur et un mot de passe masqué entrée de mot de passe native; authentifier avec l'API Player et mettre en cache son live catégories et canaux locaux.
- Retourner au même écran, groupe, page et canal après la lecture se ferme.
- Jouer HLS et direct MPEG-TS flux avec H.264 ou HEVC vidéo et pris en charge AAC audio à travers le chemin de médias PS5 natif.
- Lecture directe de flux WebM contenant VP9 Profil 0 vidéo.
- Adapter le tampon de lecture-à-propos pour vivre HLS timing et récupérer de l'impasse live segments sans jeter le canal immédiatement.
- Afficher le codec, la résolution, le taux d'image et le débit pendant la lecture; basculer la superposition des statistiques avec Touchpad + R1.
- Signaler les défaillances actionnables pour le statut HTTP, les restrictions GeoIP, indisponible flux, chiffrement non pris en charge ou codecs, listes de lecture mal formées, MPEG-TS synchronisation, et erreurs de décodeur natif.
- Renvoyez une interface RmlUi plein écran avec des polices bitmap multilingues emballées et la navigation axée sur DualSense.
Support vidéo
Classes de sortie - Oui. MPEG-TS et HLS; profils de base, principal et haut à l'intérieur des limites de niveau configurées HEVC=MPEG-TS et HLS; Profil principal, 8 bits 4:2:0=720p, 1080p, 1440p, 2160p= VP9 : WebM direct ; Profil 0, 8 bits 4:2 :0 : 1080p, 1440p, 2160p
Les sources jusqu'à 1080p utilisent une surface de présentation 1920×1080. Native 1440p vidéo est mis à l'échelle sur la surface de sortie 4K, tandis que 2160p vidéo est décodé et présenté à 3840×2160. Les détails de codec et de rendu sont documentés dans ArchitectureetTesting.
Contrôles
Actions - Oui. D-pad / gauche stick Choisir, ouvrir ou jouer Retourner, rejeter ou effacer les filtres actifs Ajouter ou supprimer un favori Ouvrir la recherche avancée et les filtres Interrupteur entre TV en direct, Favoris et Sources Triangle sur une source configurable Modifier l'URL M3U ou le compte Xtream personnalisé Options Actualiser la source de catalogue sélectionnée Cercle / Options pendant la lecture Touchpad + R1 pendant la lecture
Exigences
La construction nécessite Linux, WSL ou un coureur Linux CI. Sur Ubuntu, Debian ou WSL :
sudo apt update
sudo apt install clang-18 clang-format-18 clang-tidy-18 curl git lld-18 make \
pkg-config python3 python3-pip python3-venv tar unzip wget libsqlite3-dev
La compilation télécharge, vérifie et cache le public PS5 Payload SDK, zlib,
Le port SQLite de PacBrew, GoogleTest et les outils d'emballage sélectionnés sous le
ignoré.deps/répertoire. Pas de Sony SDK propriétaire, module de firmware,
clé de chiffrement, ou l'actif de jeu est inclus ou récupéré.
Exécutez la vérification préalable en lecture seule avant de construire:
make doctor
VoirGetting startedet Native toolingpour une configuration détaillée de l'environnement.
Construire
sce_sys/param.jsonest la source de vérité pour l'application
l'identité et la version de publication. GardezPPSA99003lors de la publication d'une mise à jour;
changer le titre ID crée un titre PS5 séparé.
# Lint, run all host tests, and build the complete title folder.
make check
# Build the compressed release image.
make ffpfsc
Les résultats de la publication sont écrits à l'adresse suivante :
dist/PPSA99003/ complete title folder
dist/PPSA99003.ffpfsc compressed release image
Un UFS2 optionnel.ffpkgl'objectif de développement est également disponible. Voir
Package formats.
Installation et développement
Installer le produit.ffpfscavec un workflow PS5 compatible, ou
étape le dossier de titre complet ci-dessous/data/homebrew/PPSA99003. Ne pas copier
eboot.binpar lui-même ; l'application nécessite également son module d'exécution, UI, polices,
icônes, œuvres d'art et métadonnées.
Pour un déploiement FTP vers un PS5 disponible :
make deploy PS5_HOST=192.168.1.100 DEPLOY_FORMAT=folder
[!NOTE] Le premier lancement télécharge, valide et cache le catalogue iptv-org. Gardez la console en ligne et laisser ProsperoTV ouvert jusqu'à ce que le catalogue soit prêt. Plus tard, chargez la base de données locale immédiatement.
Le support Xtream est pour les identifiants fournis par l'utilisateur. ProsperoTV ne fait pas
inclure, vendre ou découvrir des comptes fournisseurs. Le serveur, le nom d'utilisateur et
le mot de passe est stocké dans un local/download0et ne sont jamais écrits au
journal de l'application; l'enregistrement des titres n'est pas chiffré, donc ne partagez pas le titre
les données copiées depuis la console.
Déploiement n'écrit que des chemins de titre/data/homebrewVoir
Deploymentpour le workflow complet.
Portails d'essai et de qualité
make test # GoogleTest unit suite and Python integration tests
make lint # formatting, static analysis, metadata, and shell checks
make check # lint + tests + complete folder build
make ffpfsc # production folder + compressed release image
Les tests d'hôte couvrent le catalogue M3U et Xtream analyse et persistance, analyse HLS, Classification des erreurs HTTP, gestion des unités d'accès MPEG-TS, analyse VP9/WebM, native-app layout, runtime handoff, et les contraintes de présentation. Matériel l'acceptation est effectuée séparément sur PS5 avec des échantillons de canaux délimités, télémétrie de décodeur, et contrôles de démantèlement.
GitHub Actions lance le lintage, tous les tests hôtes, l'exécution déterministe
la reproduction et la construction de la FFPFSC. Pousser une étiquette qui correspond exactement
contentVersionpublie les.ffpfscimage etSHA256SUMS.
Présentation des sources
src/main.cpp Native SDL/RmlUi lifetime and renderer bridge
src/iptv_app.cpp Screens, focus, search, paging, and user state
src/iptv_xtream.cpp Xtream credentials, Player API parsing, and live URLs
src/iptv_player.cpp Stream selection, buffering, playback, and errors
src/iptv_stream.cpp MPEG-TS demux and H.264/HEVC access-unit assembly
src/iptv_native_backend.c Native video/audio decode and presentation backend
src/iptv_catalog.cpp Extended M3U catalog parser
src/iptv_store.cpp SQLite last-good catalog persistence
src/iptv_webm.cpp Bounded WebM/VP9 parser
include/ Public application and media interfaces
ui/ RML, RCSS, fonts, controller icons, and artwork
sce_sys/ PS5 metadata and launcher assets
runtime/ Reproducible clean-room libc.prx output
tooling/native/ ELF, FSELF, and runtime-generation tooling
tests/ Host unit and integration regressions
docs/ Architecture, build, testing, and deployment guides
Version et versions
contentVersiondanssce_sys/param.jsonconduit la
métadonnées emballées, version de la barre supérieure, balise Git et version GitHub. Il utilise les
PS5NN.NNN.NNNformat sansvpréfixe.
# After updating param.json and passing the release gates:
git tag 01.000.004
git push origin main 01.000.004
Le workflow de publication rejette une balise incorrecte. Voir Configurationpour les champs de métadonnées coordonnés.
Compatibilité des flux et limitations
- Les URL IPTV publiques peuvent disparaître, se déplacer, devenir restreintes par le GéoIP, exiger en-têtes spécifiques au fournisseur, ou refuser l'accès à tout moment.
- Les médias DRM et HLS cryptés ne sont intentionnellement pas pris en charge.
- VP9 prend actuellement en charge directement, uniquement vidéo WebM Profile 0 flux. Oui. MP4, WebM audio, VP9 Profil 2 et les fonctionnalités générales de Matroska sont en dehors du chemin supporté.
- La lecture MPEG-TS prend en charge la vidéo H.264 et HEVC 8 bits. Un support audio peut continuer comme vidéo silencieuse lorsque le chemin vidéo reste valide.
- Les métadonnées du catalogue décrivent un canal, mais ne peuvent garantir que son contenu actuel stream est en ligne, correctement étiqueté ou compatible avec le décodeur PS5.
ProsperoTV affiche la cause la plus spécifique détectée lorsqu'un canal ne peut être joué. Une défaillance de canal n'implique pas que l'application, iptv-org, console n'est pas disponible.
Crédits et licences
ProsperoTV développe et reconnaît :
- PS5 Native App Boilerplate, ,PS5 Payload SDK, ,PacBrew, ,MkPFSet UFS2Tool.
- iptv-org/iptvpour la chaîne publique catalogue et métadonnées.
- ProsperoRadioen tant que application native primaire et référence expérience utilisateur.
- IPTVnatoret Megacubocomme produit IPTV Références.
- SDL2, RmlUi, FreeType, SQLite, zlib, LLVM, GoogleTest, Montserrat, Noto, DejaVu, et Source Han Sans.
Les logiciels tiers et les données conservent leurs propres licences et conditions. Voir NOTICE.mdpour les détails de dépendance et d'attribution.
ProsperoTV est sous licence GPL-3.0-ou plus tard. VoirLICENSEet Contributing.
PlayStation et PS5 sont des marques de commerce de Sony Interactive Entertainment. Cette projet est indépendant et n'est pas affilié à ou soutenu par Sony.
Ce projet a été élaboré avec l'aide de OpenAI Codex, y compris l'interface originale. Les responsables du projet ont examiné et validé le code, les tests, la documentation, les dépendances et les actifs générés.
