Files
fstat13--PSCapture/docs/index.it.html
T
fstat13 876f8ef82b docs: redesign the guide site, fix inaccurate docs
- new modern layout for index.html / index.it.html with shared
  style.css + main.js: app-window mock, pipeline diagram, searchable
  troubleshooting, copy buttons on build commands, live star count
- stream port is 5599 (not 9xxx); real log line is
  "ERRORE caricamento dll"; button label is STOP
- troubleshooting covers more real log lines (UAC refused, pldmgr
  missing, elfldr unreachable, stream dropped)
- links to .md guides point to GitHub, download goes to /releases
  (v0.1 is a pre-release, /latest would miss it)
2026-10-15 15:28:12 +02:00

444 lines
31 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="it" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>PSCapture — la PS5 come scheda di acquisizione sul PC</title>
<meta name="description" content="PSCapture trasforma una PS5 jailbroken in una scheda di acquisizione per il PC: lo schermo della console passa sulla tua rete locale e compare in Discord, OBS e ffmpeg come la webcam “PS5 Capture”.">
<meta name="theme-color" content="#07090d">
<link rel="icon" type="image/png" href="pscapture.png">
<link rel="alternate" hreflang="en" href="https://fstat13.github.io/PSCapture/">
<link rel="alternate" hreflang="it" href="https://fstat13.github.io/PSCapture/index.it.html">
<meta property="og:type" content="website">
<meta property="og:locale" content="it_IT">
<meta property="og:title" content="PSCapture — lo schermo della PS5, live sul tuo PC">
<meta property="og:description" content="Lo schermo della PS5 compare in Discord, OBS e ffmpeg come la webcam “PS5 Capture”. Niente capture card, niente Remote Play, niente cloud.">
<meta property="og:image" content="https://fstat13.github.io/PSCapture/pscapture.png">
<meta property="og:url" content="https://fstat13.github.io/PSCapture/index.it.html">
<meta name="twitter:card" content="summary">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
</head>
<body>
<svg width="0" height="0" style="position:absolute" aria-hidden="true">
<symbol id="i-download" viewBox="0 0 24 24"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></symbol>
<symbol id="i-star" viewBox="0 0 24 24"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></symbol>
<symbol id="i-check" viewBox="0 0 24 24"><polyline points="20 6 9 17 4 12"/></symbol>
<symbol id="i-video" viewBox="0 0 24 24"><path d="m22 8-6 4 6 4V8Z"/><rect x="2" y="6" width="14" height="12" rx="2"/></symbol>
<symbol id="i-zap" viewBox="0 0 24 24"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"/></symbol>
<symbol id="i-file" viewBox="0 0 24 24"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></symbol>
<symbol id="i-refresh" viewBox="0 0 24 24"><polyline points="23 4 23 10 17 10"/><polyline points="1 20 1 14 7 14"/><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"/></symbol>
<symbol id="i-sliders" viewBox="0 0 24 24"><line x1="4" y1="21" x2="4" y2="14"/><line x1="4" y1="10" x2="4" y2="3"/><line x1="12" y1="21" x2="12" y2="12"/><line x1="12" y1="8" x2="12" y2="3"/><line x1="20" y1="21" x2="20" y2="16"/><line x1="20" y1="12" x2="20" y2="3"/><line x1="1" y1="14" x2="7" y2="14"/><line x1="9" y1="8" x2="15" y2="8"/><line x1="17" y1="16" x2="23" y2="16"/></symbol>
<symbol id="i-lock" viewBox="0 0 24 24"><rect x="3" y="11" width="18" height="11" rx="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></symbol>
<symbol id="i-console" viewBox="0 0 24 24"><rect x="2" y="6" width="20" height="12" rx="3"/><line x1="6" y1="12" x2="10" y2="12"/><line x1="8" y1="10" x2="8" y2="14"/><circle cx="16" cy="11" r=".6"/><circle cx="18" cy="13" r=".6"/></symbol>
<symbol id="i-monitor" viewBox="0 0 24 24"><rect x="2" y="3" width="20" height="14" rx="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></symbol>
<symbol id="i-info" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/><line x1="12" y1="16" x2="12" y2="12"/><line x1="12" y1="8" x2="12.01" y2="8"/></symbol>
<symbol id="i-alert" viewBox="0 0 24 24"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></symbol>
<symbol id="i-search" viewBox="0 0 24 24"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></symbol>
</svg>
<nav class="nav">
<div class="wrap">
<a class="logo" href="#top"><img src="pscapture.png" alt="">PSCapture</a>
<div class="nav-links">
<a href="#how">Come funziona</a>
<a href="#start">Installazione</a>
<a href="#trouble">Problemi</a>
<a href="#build">Build</a>
<a href="#faq">FAQ</a>
</div>
<div class="nav-right">
<a class="lang" href="index.html" hreflang="en">English</a>
<a class="btn btn-ghost btn-sm" href="https://github.com/fstat13/PSCapture"><svg class="i"><use href="#i-star"/></svg>Star <span class="stars" data-stars hidden></span></a>
</div>
</div>
</nav>
<header class="hero" id="top">
<div class="wrap hero-grid">
<div>
<span class="eyebrow"><span class="tagv">v0.1</span>Testato sul firmware PS5 13.60</span>
<h1>Lo schermo della PS5,<br><span class="grad">live sul tuo PC.</span></h1>
<p class="lead">PSCapture trasforma una PlayStation&nbsp;5 jailbroken in una scheda di acquisizione.
La console manda il proprio schermo sulla tua rete locale e Windows lo vede come una
webcam chiamata <b>PS5 Capture</b>, pronta per Discord, OBS e ffmpeg.</p>
<div class="cta">
<a class="btn btn-primary" href="https://github.com/fstat13/PSCapture/releases"><svg class="i"><use href="#i-download"/></svg>Scarica per Windows</a>
<a class="btn btn-ghost" href="https://github.com/fstat13/PSCapture"><svg class="i"><use href="#i-star"/></svg>Metti una stella <span class="stars" data-stars hidden></span></a>
</div>
<div class="hero-meta">
<span><svg class="i"><use href="#i-check"/></svg>Niente capture card</span>
<span><svg class="i"><use href="#i-check"/></svg>Niente Remote Play</span>
<span><svg class="i"><use href="#i-check"/></svg>Niente cloud</span>
<span><svg class="i"><use href="#i-check"/></svg>Un solo .exe</span>
</div>
</div>
<div class="app" role="img" aria-label="La finestra di PSCapture: il log mostra il controllo del driver, l'invio del payload e la connessione dello stream; la pillola di stato dice STREAMING.">
<div class="app-bar">
<img src="pscapture.png" alt="">
<span class="t">PSCapture by fstat13 - PS5 screen to PC</span>
<span class="w"><span>–</span><span>□</span><span>✕</span></span>
</div>
<div class="app-body">
<div class="app-head">
<div class="app-title">PSCapture<small>PS5 screen to PC</small></div>
<span class="pill live"><i></i> STREAMING 29.8 fps</span>
</div>
<div class="app-row">
<span class="app-lbl">PS5 IP</span><span class="app-in">192.168.0.36</span>
<span class="app-btn">Deploy payload</span><span class="app-btn">Install driver</span>
</div>
<div class="app-row">
<span class="app-btn big">START STREAMING</span><span class="app-btn stop">STOP</span>
<span class="app-knobs app-row" style="margin:0">
<span class="app-lbl">gain</span><span class="app-in">1.0</span>
<span class="app-lbl">shift px</span><span class="app-in">0</span>
</span>
</div>
<div class="app-log" aria-hidden="true">
<div>PSCapture pronto: premo Start e faccio tutto da solo.</div>
<div>--- AVVIO AUTOMATICO ---</div>
<div>driver gia' installato</div>
<div>payload dall'eseguibile (175480 byte)</div>
<div>payload 175480 byte, invio a 192.168.0.36</div>
<div>autoloader aggiornato (pldmgr)</div>
<div class="hl">payload avviato - la PS5 deve mostrare la notifica PSCapture</div>
<div>porta stream: 5599</div>
<div class="ok">collegato a 192.168.0.36:5599</div>
</div>
</div>
</div>
</div>
<div class="wrap">
<div class="stats">
<div class="stat"><div class="n">1920×1080</div><div class="l">full HD in OBS</div></div>
<div class="stat"><div class="n">~30 fps</div><div class="l">su una normale LAN</div></div>
<div class="stat"><div class="n">0</div><div class="l">ricodifiche sulla console</div></div>
<div class="stat"><div class="n">1 file</div><div class="l">driver e payload inclusi</div></div>
</div>
</div>
</header>
<main class="wrap">
<section id="why" class="reveal">
<div class="sec-head">
<div class="kicker">Perché PSCapture</div>
<h2>Una capture card, senza la capture card.</h2>
<p class="sub">Funziona tutto con quello che hai già: la console, la tua rete e il tuo PC.</p>
</div>
<div class="grid g3">
<div class="card"><div class="ico"><svg class="i"><use href="#i-video"/></svg></div>
<h3>Una vera webcam</h3>
<p>Un filtro sorgente DirectShow chiamato <b>PS5 Capture</b>. Qualsiasi programma che apre una webcam può aprire la tua console.</p></div>
<div class="card"><div class="ico v"><svg class="i"><use href="#i-zap"/></svg></div>
<h3>Direttamente dal display engine</h3>
<p>Il payload legge il buffer di scan-out della console e manda frame NV12 grezzi. Niente ricodifica, quindi niente attese per un encoder.</p></div>
<div class="card"><div class="ico g"><svg class="i"><use href="#i-file"/></svg></div>
<h3>Un file, una finestra</h3>
<p><b>PSCapture.exe</b> installa il driver, manda il payload, lo registra nell'autoloader e si collega. Tutto da solo.</p></div>
<div class="card"><div class="ico a"><svg class="i"><use href="#i-refresh"/></svg></div>
<h3>Si riprende da solo</h3>
<p>Console ancora spenta? Riprova ogni 2 secondi. Stream caduto? Si ricollega. Non devi stargli dietro.</p></div>
<div class="card"><div class="ico"><svg class="i"><use href="#i-sliders"/></svg></div>
<h3>Regolazioni in diretta</h3>
<p><code>gain</code> del colore e <code>shift</code> orizzontale si applicano in circa un secondo e restano salvati in <code>pscapture.ini</code>.</p></div>
<div class="card"><div class="ico v"><svg class="i"><use href="#i-lock"/></svg></div>
<h3>Resta nella tua rete</h3>
<p>Niente account, niente server esterni, niente Remote Play. I frame vanno dalla console al PC e basta.</p></div>
</div>
</section>
<section id="how" class="reveal">
<div class="sec-head">
<div class="kicker">Come funziona</div>
<h2>Tre pezzi piccoli, una webcam.</h2>
<p class="sub">Un payload sulla console, un feeder e un driver sul PC. I programmi che usi già vedono semplicemente una webcam.</p>
</div>
<div class="pipe">
<div class="node"><div class="where">PS5</div><h3>Payload</h3>
<p>Legge il ring di scan-out del display engine, costruisce i frame NV12 e li serve sulla porta TCP <code>5599</code>. Mostra la notifica <i>“PSCapture is streaming on:5599”</i>.</p></div>
<div class="link"><span>TCP · NV12<br>rete locale</span><div class="line"></div></div>
<div class="node"><div class="where">PC · PSCapture.exe</div><h3>Feeder</h3>
<p>Riceve i frame e li pubblica in un ring di memoria condivisa.</p></div>
<div class="link"><span>memoria<br>condivisa</span><div class="line"></div></div>
<div class="node"><div class="where">PC · pscapture.dll</div><h3>Driver</h3>
<p>Un filtro sorgente DirectShow che espone il ring come la webcam <b>PS5 Capture</b>.</p></div>
<div class="link"><span>DirectShow</span><div class="line"></div></div>
<div class="node end"><div class="where">I tuoi programmi</div><h3>Qualsiasi app video</h3>
<p>Scegli <b>PS5 Capture</b> come una webcam qualunque.</p>
<div class="chips"><span class="chip">Discord</span><span class="chip">OBS</span><span class="chip">ffmpeg</span></div></div>
</div>
</section>
<section id="requirements" class="reveal">
<div class="sec-head">
<div class="kicker">Prima di iniziare</div>
<h2>Cosa ti serve.</h2>
</div>
<div class="grid g2">
<div class="req">
<div class="req-h"><div class="ico"><svg class="i"><use href="#i-console"/></svg></div><h3>Sulla PS5</h3></div>
<ul>
<li><svg class="i"><use href="#i-check"/></svg><span>Una console jailbroken<small>Sviluppato e tarato sul firmware <b>13.60</b>. Per le altre versioni vedi la FAQ.</small></span></li>
<li><svg class="i"><use href="#i-check"/></svg><span>Payload loader sulla porta TCP <code>9021</code><small>Tipo <code>elfldr</code>, come in tutti i setup di jailbreak attuali.</small></span></li>
<li><svg class="i"><use href="#i-check"/></svg><span>FTP anonimo sulla porta TCP <code>2121</code><small>L'app legge e scrive alcuni file sulla console.</small></span></li>
<li class="opt"><svg class="i"><use href="#i-check"/></svg><span>Autoloader <code>pldmgr</code> <span class="tagopt">opzionale</span><small>Avvia il payload a ogni accensione, così non devi mai mandarlo a mano.</small></span></li>
</ul>
</div>
<div class="req">
<div class="req-h"><div class="ico v"><svg class="i"><use href="#i-monitor"/></svg></div><h3>Sul PC</h3></div>
<ul>
<li><svg class="i"><use href="#i-check"/></svg><span>Windows 10 o 11, 64 bit<small>La webcam è un dispositivo DirectShow, quindi il lato PC è solo per Windows.</small></span></li>
<li><svg class="i"><use href="#i-check"/></svg><span>Stessa rete della console<small>Meglio via cavo. Il gigabit basta e avanza per 1080p a 30 fps.</small></span></li>
<li><svg class="i"><use href="#i-check"/></svg><span>Permessi di amministratore, una volta<small>Per registrare la webcam per tutti i programmi del PC.</small></span></li>
<li><svg class="i"><use href="#i-check"/></svg><span><b>PSCapture.exe</b> dalle <a href="https://github.com/fstat13/PSCapture/releases">Releases</a><small>Un unico file: payload e driver sono già dentro.</small></span></li>
</ul>
</div>
</div>
</section>
<section id="start" class="reveal">
<div class="sec-head">
<div class="kicker">Installazione</div>
<h2>Da zero a live in cinque passi.</h2>
<p class="sub">Dal passo 2 in poi ti basta guardare: l'app fa il resto e ti dice cosa sta facendo.</p>
</div>
<ol class="steps">
<li><h3>Fai il jailbreak della console</h3>
<p>Avvia il tuo solito jailbreak, così il payload loader (<code>9021</code>) e l'FTP (<code>2121</code>) sono attivi.</p></li>
<li><h3>Doppio clic su <code>PSCapture.exe</code></h3>
<p>Windows chiede <i>“Consentire a questa app di apportare modifiche al dispositivo?”</i>. Clicca <b>Sì</b>. L'app chiede da sola i permessi, non serve il tasto destro.</p></li>
<li><h3>Controlla l'IP</h3>
<p>Quello predefinito è <code>192.168.0.36</code>. Se la tua PS5 ha un altro indirizzo, scrivilo in <b>PS5 IP</b> e premi <b>Apply</b>: viene ricordato. Lo trovi sulla console in <i>Impostazioni → Rete → Stato della connessione → Visualizza stato della connessione</i>.</p></li>
<li><h3>Non toccare niente</h3>
<p>Al primo avvio l'app installa il driver, poi manda il payload e si collega. Sulla console compare <i>“PSCapture is streaming on:5599”</i> e la pillola di stato diventa <b style="color:var(--green)">verde: STREAMING</b>.</p></li>
<li><h3>Scegli <b>PS5 Capture</b> nel tuo programma</h3>
<p>Discord, OBS o ffmpeg. Più sotto trovi <a href="#use">dove trovarla</a>.</p></li>
</ol>
<h3 style="margin:30px 0 6px">Come leggere il log</h3>
<p style="color:var(--dim)">Queste sono le righe che vedrai, nell'ordine in cui compaiono.</p>
<div class="term" style="margin-top:14px">
<div class="term-bar"><i></i><i></i><i></i><b>pscapture-app.log</b></div>
<div class="term-row"><code>driver gia' installato</code><span class="m">La webcam è già registrata. Niente da fare.</span></div>
<div class="term-row"><code>driver non installato: lo installo ora (primo avvio)<br>driver estratto dall'eseguibile (… byte)<br>driver registrato - la webcam 'PS5 Capture' e' pronta</code><span class="m">Primo avvio: il driver viene estratto dall'exe e registrato.</span></div>
<div class="term-row"><code>payload dall'eseguibile (… byte)<br>payload … byte, invio a 192.168.0.36</code><span class="m">Il payload sta andando verso la console.</span></div>
<div class="term-row"><code>autoloader aggiornato (pldmgr)</code><span class="m">Il payload è stato copiato nell'autoloader: partirà a ogni accensione.</span></div>
<div class="term-row"><code>payload avviato - la PS5 deve mostrare la notifica PSCapture</code><span class="m">Il payload gira. Cerca la notifica sulla TV.</span></div>
<div class="term-row ok"><code>porta stream: 5599<br>collegato a 192.168.0.36:5599</code><span class="m">Collegato. La pillola dice <b>STREAMING</b> con gli fps in tempo reale.</span></div>
</div>
<div class="callout warn" style="margin-top:18px">
<svg class="i"><use href="#i-alert"/></svg>
<p><b>Pillola ferma su “IN ATTESA DELLA PS5”?</b> La console è spenta, il jailbreak non è ancora partito o l'IP è sbagliato. Non serve riavviare niente: l'app riprova ogni 2 secondi e si collega appena le porte <code>9021</code> e <code>2121</code> rispondono.</p>
</div>
</section>
<section id="use" class="reveal">
<div class="sec-head">
<div class="kicker">Usalo</div>
<h2>Funziona ovunque funzioni una webcam.</h2>
</div>
<div class="grid g3">
<div class="card target"><h3>Discord</h3>
<div class="path"><i>Impostazioni → Voce e video → Videocamera</i> → <b>PS5 Capture</b></div>
<p style="margin-top:10px">Discord chiede 720p a tutte le webcam, capture card comprese. Per il 1080p60 usa la condivisione schermo (Nitro).</p>
<div class="res">in chiamata <b>1280×720</b></div></div>
<div class="card target"><h3>OBS Studio</h3>
<div class="path"><i>Fonti → + → Dispositivo di acquisizione video</i> → <b>PS5 Capture</b></div>
<p style="margin-top:10px">Risoluzione piena, pronta per registrare o andare in live.</p>
<div class="res">nativo <b>1920×1080</b></div></div>
<div class="card target"><h3>ffmpeg</h3>
<div class="path"><code>ffmpeg -f dshow -i video="PS5 Capture" capture.mkv</code></div>
<p style="margin-top:10px">Per catture da script e test veloci.</p>
<div class="res">nativo <b>1920×1080</b></div></div>
</div>
</section>
<section id="daily" class="reveal">
<div class="sec-head">
<div class="kicker">Uso quotidiano</div>
<h2>Aprilo e gioca.</h2>
</div>
<div class="grid g3">
<div class="card knob"><span class="k">ogni giorno</span>
<p>Apri <b>PSCapture.exe</b> e accetta il prompt UAC. Con l'autoloader lo stream parte da solo.</p>
<ul>
<li><b>Deploy payload</b>: rimanda il payload a mano, dopo un riavvio senza autoloader.</li>
<li><b>Install driver</b>: registra di nuovo la webcam se il log mostra un errore del driver.</li>
<li><b>STOP</b> o chiudere l'app: la webcam si ferma sull'ultimo frame e resta nell'elenco.</li>
</ul></div>
<div class="card knob"><span class="k">gain</span>
<p>Intensità del colore (croma).</p>
<ul><li><code>1.0</code> è il valore grezzo e corretto.</li><li>Cambialo solo se i colori sembrano sbagliati.</li></ul></div>
<div class="card knob"><span class="k">shift px</span>
<p>Sposta l'immagine a destra o a sinistra.</p>
<ul><li><b>Solo numeri pari</b>: un valore dispari scambia i colori.</li><li>Le scritte dei titoli della console sono un buon riferimento.</li></ul></div>
</div>
</section>
<section id="trouble" class="reveal">
<div class="sec-head">
<div class="kicker">Problemi</div>
<h2>Sintomo → rimedio.</h2>
<p class="sub">Scrivi cosa vedi, oppure incolla una riga del log.</p>
</div>
<div class="search"><svg class="i"><use href="#i-search"/></svg>
<input id="q" type="search" placeholder="es. nera, 720p, err=126, ATTESA…" autocomplete="off" aria-label="Filtra i problemi"></div>
<div class="issues">
<div class="issue"><div class="sym">La pillola resta su <code>AVVIO…</code> o <code>IN ATTESA DELLA PS5</code></div>
<div class="fix"><span class="cause">console spenta, senza jailbreak o IP sbagliato</span>Accendi la console, avvia il jailbreak (le porte 9021 e 2121 devono essere attive), controlla il campo <b>PS5 IP</b>. L'app continua a riprovare.</div></div>
<div class="issue"><div class="sym">Il log ripete <code>PS5 non raggiungibile (…), riprovo</code></div>
<div class="fix"><span class="cause">console non raggiungibile</span>Come sopra. Si collega da sola appena la console risponde.</div></div>
<div class="issue"><div class="sym">Log: <code>elfldr :9021 non raggiungibile</code></div>
<div class="fix"><span class="cause">payload loader non attivo</span>Rilancia il jailbreak, poi premi <b>Deploy payload</b>.</div></div>
<div class="issue"><div class="sym">La webcam <b>PS5 Capture</b> non compare in Discord o OBS</div>
<div class="fix"><span class="cause">driver non registrato</span>Premi <b>Install driver</b> e leggi la riga successiva del log: riporta l'errore vero.</div></div>
<div class="issue"><div class="sym">Log: <code>ERRORE: driver non scrivibile in C:\Program Files\PSCapture (serve admin?)</code></div>
<div class="fix"><span class="cause">app senza permessi di amministratore</span>Chiudila, riapri <code>PSCapture.exe</code> e rispondi <b>Sì</b> al prompt UAC.</div></div>
<div class="issue"><div class="sym">Log: <code>elevazione rifiutata: continuo senza privilegi</code></div>
<div class="fix"><span class="cause">al prompt UAC hai risposto “No”</span>Lo stream può funzionare lo stesso, ma il driver non si installa. Riavvia l'app e clicca <b>Sì</b>.</div></div>
<div class="issue"><div class="sym">Log: <code>ERRORE caricamento dll (err=126)</code></div>
<div class="fix"><span class="cause">l'antivirus ha messo in quarantena il driver</span>Ripristina e consenti <code>pscapture.dll</code> nell'antivirus, poi premi di nuovo <b>Install driver</b>.</div></div>
<div class="issue"><div class="sym">Log: <code>autoloader: copia FALLITA (pldmgr c'e'?)</code></div>
<div class="fix"><span class="cause"><code>pldmgr</code> non installato</span>Nessun danno: lo stream funziona. Senza autoloader, però, dopo ogni riavvio della console devi premere <b>Deploy payload</b>.</div></div>
<div class="issue"><div class="sym">La webcam compare ma l'immagine è nera</div>
<div class="fix"><span class="cause">stream non partito</span>Guarda la pillola. Premi <b>Deploy payload</b> e/o <b>START STREAMING</b>.</div></div>
<div class="issue"><div class="sym">Log: <code>stream caduto, riconnetto</code></div>
<div class="fix"><span class="cause">problema di rete o console in modalità riposo</span>L'app si ricollega da sola. Se succede spesso, passa dal Wi-Fi al cavo.</div></div>
<div class="issue"><div class="sym">I colori sembrano sbagliati (pelle rossastra, cielo arancione)</div>
<div class="fix"><span class="cause">hai cambiato <code>gain</code></span>Rimetti <code>gain</code> a <code>1.0</code> e premi <b>Apply</b>.</div></div>
<div class="issue"><div class="sym">Colori invertiti, barra nera, immagine decentrata</div>
<div class="fix"><span class="cause">allineamento</span>Regola <code>shift px</code> usando solo valori <b>pari</b>. Un valore dispari scambia i colori.</div></div>
<div class="issue"><div class="sym">Discord mostra solo 720p</div>
<div class="fix"><span class="cause">limite di Discord, non di PSCapture</span>In chiamata Discord limita ogni webcam a 720p. Usa OBS per il 1080p, o la condivisione schermo di Discord (1080p60 con Nitro).</div></div>
<div class="issue"><div class="sym">OBS vede la webcam, Discord no</div>
<div class="fix"><span class="cause">Discord era aperto durante l'installazione del driver</span>Chiudi Discord del tutto (anche dall'icona nella tray) e riaprilo.</div></div>
<div class="issue"><div class="sym">Tutto il resto</div>
<div class="fix"><span class="cause">leggi i log</span><code>pscapture-app.log</code> (accanto all'exe o in <code>%TEMP%</code>) e il log della console <code>/data/pscapture.log</code> via FTP. Poi <a href="https://github.com/fstat13/PSCapture/issues">apri una issue</a> allegandoli.</div></div>
<div class="noresult" hidden>Nessun risultato. <a href="https://github.com/fstat13/PSCapture/issues">Apri una issue</a> con il tuo <code>pscapture-app.log</code>.</div>
</div>
</section>
<section id="build" class="reveal">
<div class="sec-head">
<div class="kicker">Build dai sorgenti</div>
<h2>Due metà, due toolchain.</h2>
<p class="sub">La repo contiene solo i sorgenti; i binari pronti sono nelle <a href="https://github.com/fstat13/PSCapture/releases">Releases</a>. La guida completa (installazione toolchain, verifiche, trappole) è in <a href="https://github.com/fstat13/PSCapture/blob/main/docs/BUILD.it.md">BUILD.it.md</a>.</p>
</div>
<div class="build-step">
<div class="num">Passo 1 · console</div>
<h3>Payload → <code>pscapture.elf</code></h3>
<p>Servono Docker e l'immagine del PS5 payload SDK (prospero-clang; va bene qualsiasi tag, qui <code>ps5sdk:18</code>).</p>
<div class="codeblock"><pre><span class="p">$ </span>docker run --rm -v "$PWD/payload:/payload" -w /payload ps5sdk:18 make</pre></div>
</div>
<div class="build-step">
<div class="num">Passo 2 · PC</div>
<h3>App e driver → <code>pscapture.exe</code> + <code>pscapture.dll</code></h3>
<p>Serve MinGW-w64 (<code>gcc</code> + <code>windres</code>). <b>L'ordine conta</b>: il <code>.res</code> incorpora driver e payload esattamente come sono su disco.</p>
<div class="codeblock"><pre><span class="c"># dalla radice della repo</span>
cp payload/pscapture.elf pc/
cd pc
<span class="c"># 1) il driver della capture card (filtro sorgente DirectShow)</span>
gcc -O2 -shared -static -static-libgcc -o pscapture.dll ps5cam.c \
-lole32 -loleaut32 -luser32 -ladvapi32 -lws2_32
<span class="c"># 2) icona + payload + driver nell'oggetto risorse</span>
windres pscapture.rc -O coff -o pscapture.res
<span class="c"># 3) l'app in un unico file</span>
gcc -O2 -mwindows -o pscapture.exe pscapture.c pscapture.res \
-lws2_32 -lshell32 -ladvapi32 -luxtheme</pre></div>
</div>
<div class="callout info" style="margin-top:22px">
<svg class="i"><use href="#i-info"/></svg>
<p><b>I due errori classici.</b> Se ricompili la DLL o il payload <i>dopo</i> <code>windres</code>, l'exe si porta dentro quelli vecchi: l'ordine è sempre DLL → windres → exe. E <code>-static -static-libgcc</code> sulla DLL è obbligatorio: senza, Windows può rifiutarsi di caricare il driver con “impossibile trovare il modulo specificato” (manca il runtime MinGW).</p>
</div>
</section>
<section id="faq" class="reveal">
<div class="sec-head">
<div class="kicker">FAQ</div>
<h2>Domande.</h2>
</div>
<div class="faq">
<details><summary>Funziona su firmware diversi dal 13.60?</summary>
<div class="body"><p>Il lato PC funziona con qualsiasi firmware: app e driver usano solo TCP, FTP e memoria condivisa. La parte legata alla versione è il payload della console, sviluppato e tarato sul <b>13.60</b> usando gli ancoraggi del display engine di quel firmware. Su altre versioni può servire un piccolo porting per ritrovare gli stessi ancoraggi. <a href="https://github.com/fstat13/PSCapture/issues">Apri una issue</a> indicando il tuo firmware.</p></div></details>
<details><summary>Perché in chiamata su Discord la webcam è a 720p?</summary>
<div class="body"><p>È il motore vocale di Discord: chiede 1280×720 a ogni webcam. In OBS, PS5 Capture va a 1920×1080 pieni. La condivisione schermo di Discord arriva a 1080p60 con Nitro.</p></div></details>
<details><summary>Servono una capture card o il Remote Play?</summary>
<div class="body"><p>No. PSCapture non usa mai il Remote Play: il payload legge il display engine direttamente sulla console e manda i frame grezzi sulla tua rete locale.</p></div></details>
<details><summary>Cattura anche l'audio del gioco?</summary>
<div class="body"><p>Non ancora. Per ora PSCapture trasmette solo il video.</p></div></details>
<details><summary>Funziona su macOS o Linux?</summary>
<div class="body"><p>Il lato PC è solo per Windows, perché la webcam è un dispositivo DirectShow.</p></div></details>
<details><summary>Come si disinstalla?</summary>
<div class="body"><ol>
<li>Chiudi l'app.</li>
<li>Esegui <code>rundll32 "%ProgramFiles%\PSCapture\pscapture.dll",DllUnregisterServer</code> per rimuovere la webcam.</li>
<li>Cancella <code>C:\Program Files\PSCapture</code>.</li>
<li>Facoltativo, sulla console: cancella <code>/data/pldmgr/payloads/pscapture/</code> così l'autoloader smette di avviarlo.</li>
</ol></div></details>
</div>
</section>
<div class="band reveal">
<div>
<h2>Ti è utile? Lascia una stella.</h2>
<p>PSCapture è gratuito. Una stella su GitHub aiuta altri appassionati di homebrew PS5 a trovarlo.</p>
</div>
<div class="cta">
<a class="btn btn-primary" href="https://github.com/fstat13/PSCapture"><svg class="i"><use href="#i-star"/></svg>Metti una stella <span class="stars" data-stars hidden></span></a>
<a class="btn btn-ghost" href="https://github.com/fstat13/PSCapture/issues">Segnala un problema</a>
</div>
</div>
</main>
<footer>
<div class="wrap">
<div class="foot">
<div>
<a class="logo" href="#top"><img src="pscapture.png" alt="">PSCapture</a>
<p>Lo schermo della PS5 ovunque nella tua rete. Senza card, senza cloud.<br>di <b>fstat13</b></p>
</div>
<div>
<h4>Guide</h4>
<ul>
<li><a href="https://github.com/fstat13/PSCapture/blob/main/docs/GUIDE.it.md">Guida passo-passo</a></li>
<li><a href="https://github.com/fstat13/PSCapture/blob/main/docs/BUILD.it.md">Build dai sorgenti</a></li>
<li><a href="https://github.com/fstat13/PSCapture/blob/main/docs/INSTALLER.md">Cosa fa l'installer (EN)</a></li>
<li><a href="https://github.com/fstat13/PSCapture/blob/main/docs/REVERSE_ENGINEERING.md">Reverse engineering (EN)</a></li>
<li><a href="https://github.com/fstat13/PSCapture/blob/main/docs/ENGINEERING_LOG.md">Engineering log (EN)</a></li>
</ul>
</div>
<div>
<h4>Progetto</h4>
<ul>
<li><a href="https://github.com/fstat13/PSCapture">GitHub</a></li>
<li><a href="https://github.com/fstat13/PSCapture/releases">Releases</a></li>
<li><a href="https://github.com/fstat13/PSCapture/issues">Issues</a></li>
<li><a href="https://github.com/fstat13/PSCapture/blob/main/LICENSE">Licenza</a></li>
</ul>
</div>
</div>
<div class="legal">
<span>© 2026 fstat13 · source-available</span>
<span>Non affiliato a Sony Interactive Entertainment. “PlayStation” e “PS5” sono marchi dei rispettivi proprietari.</span>
</div>
</div>
</footer>
<script src="main.js"></script>
</body>
</html>