Repository 32bit  Forum
Repository 64bit  Wiki

Riprodurre film in Blu-Ray: differenze tra le versioni

Da Slacky.eu.
(Come funziona la Patch e perchè)
 
(29 revisioni intermedie di un utente non mostrate)
Riga 8: Riga 8:
Anzi, la grande quantità di dati contenuta in BD fa sì che sia più semplice acquistare il film che copiarlo o scaricare un rip in mkv di qualche giga, con conseguente perdita di qualità!<br />
Anzi, la grande quantità di dati contenuta in BD fa sì che sia più semplice acquistare il film che copiarlo o scaricare un rip in mkv di qualche giga, con conseguente perdita di qualità!<br />
Ormai i prezzi dei titoli sono abbastanza accessibili e reperibili addirittura da un giornalaio qualsiasi.<br />
Ormai i prezzi dei titoli sono abbastanza accessibili e reperibili addirittura da un giornalaio qualsiasi.<br />
Mi riferisco alla riproduzione degli ormai diffusi dischi Blu-Ray (BD) sotto Linux.
+
Mi riferisco alla riproduzione degli ormai diffusi dischi Blu-Ray (BD) o HD-DVD sotto Linux.
=Mplayer VDPAU=
+
=Configurazione della nostra Slackware=
  +
Veniamo quindi al tasto dolente, i film in BD sono logicamente protetti e purtroppo sotto linux ancora non sono disponibili lettori open che possono fare il lavoro di un lettore proprietario come sotto windows, dobbiamo quindi attrezzarci di punto per ovviare al problema.
  +
===Riproduzione: Mplayer VDPAU===
Sono stati fatti molti passi avanti nella decodifica e nello streaming di formati in alta definizione (720p e 1080p), da quando il team Nvidia ha creato il progetto VDPAU ha finalmente posto le basi per la riproduzione ottimale dei formati in HD sfruttando l'accelerazione hardware della GPU.<br />
Sono stati fatti molti passi avanti nella decodifica e nello streaming di formati in alta definizione (720p e 1080p), da quando il team Nvidia ha creato il progetto VDPAU ha finalmente posto le basi per la riproduzione ottimale dei formati in HD sfruttando l'accelerazione hardware della GPU.<br />
http://en.wikipedia.org/wiki/VDPAU<br />
http://en.wikipedia.org/wiki/VDPAU<br />
Riga 16: Riga 16:
<pre>
<pre>
# svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
# svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
  +
# cd mplayer
# svn up
# svn up
# ./configure
# ./configure
root# make && make install
+
root # make && make install
</pre>
</pre>
Riga 26: Riga 27:
ftp://download.nvidia.com/XFree86/<br />
ftp://download.nvidia.com/XFree86/<br />
Questo ci permetterà di avere un carico in riproduzione sulla CPU praticamente nullo (2-5%), cosa che tornerà utile quando faremo l'output del dump del film direttamente su mplayer.
Questo ci permetterà di avere un carico in riproduzione sulla CPU praticamente nullo (2-5%), cosa che tornerà utile quando faremo l'output del dump del film direttamente su mplayer.
 
==Configurazione Sistema==
 
Veniamo quindi al tasto dolente, i film in BD sono logicamente protetti e purtroppo sotto linux ancora non sono disponibili lettori open che possono fare il lavoro di un lettore proprietario come sotto windows, dobbiamo quindi attrezzarci di punto per ovviare al problema.
 
===UDF2.50===
===UDF2.50===
Dato che i dischi BD contendo molto spesso file grandi anche più di 25GB dobbiamo abilitare il supporto UDF2.5 nel nostro kernel.
Dato che i dischi BD contendo molto spesso file grandi anche più di 25GB dobbiamo abilitare il supporto UDF2.5 nel nostro kernel.
N.B. nel 2.6.28.7 è abilitato di default. a questo punto possiamo aprire senza problemi un BD.
+
N.B. nel 2.6.28.7 è abilitato di default. a questo punto possiamo aprire senza problemi un BD o HD-DVD.
  +
===Lettori BD / HD-DVD===
===Lettori BD / HD-DVD===
Veniamo ai lettori/masterizzatori BD, vi consiglio vivamente gli LG tipo GGW-H20L economici e funzionali.
+
Veniamo ai lettori/masterizzatori BD, vi consiglio vivamente gli LG tipo GGW-H20L / LG GGC-H20 economici e funzionali. Disponibile anche una patch per Plextor PX-B920SA.
Questo tipo di Lettori possono essere semplicemente "patchati" (senza compromettere il loro funzionamento), il che permette di leggere il Volume ID dell'unità senza aacs authentication.<br />
Questo tipo di Lettori possono essere semplicemente "patchati" (senza compromettere il loro funzionamento), il che permette di leggere il Volume ID dell'unità senza aacs authentication.<br />
http://it.wikipedia.org/wiki/Advanced_Access_Content_System
http://it.wikipedia.org/wiki/Advanced_Access_Content_System
Riga 47: Riga 45:
La Patch modifica il firmware del driver nel modo che esso riporti il VUid senza il bisogno di un autenticazione da parte di una player key.
La Patch modifica il firmware del driver nel modo che esso riporti il VUid senza il bisogno di un autenticazione da parte di una player key.
Facendo questo, una parte della protezione aacs è completamente tagliata fuori, perchè non è più possibile prevenire qualcuno dal ricavare il VUid invalidando la player key usata dal sotware di rippaggio.<br/>
Facendo questo, una parte della protezione aacs è completamente tagliata fuori, perchè non è più possibile prevenire qualcuno dal ricavare il VUid invalidando la player key usata dal sotware di rippaggio.<br/>
A questo punto la protezione del nostro lettore BD è stata sbloccata e possiamo accedere ai contenuti protetti senza problemi.<br />
+
A questo punto la protezione del nostro lettore BD è stata sbloccata e possiamo accedere ai contenuti protetti senza problemi.<br/>
http://forum.doom9.org/showthread.php?t=144838
+
http://forum.doom9.org/showthread.php?t=144838<br/>
  +
- - - -<br/>
  +
30th August 2009, 18:20<br/>
  +
grazie alla scoperta del membro Pinux di forum.doom9.org è stato possibile aggiornare aacskeys alla ver 0.4.0c includendo un nuovo certificato che rende possibile l'uso automatico delle aacskeys fino alla MKBv12 senza aver bisogno di patchare il driver BD.<br/>
  +
http://forum.doom9.org/showthread.php?p=1320065#post1320065
  +
  +
=Dump del formato BluRay (m2ts) o HD-DVD (evo)=
=Riproduzione del formato BluRay (m2ts)=
 
===DumpHD===
===DumpHD===
Il prossimo passo è quello di creare un dump dei files m2ts "decriptato" e quindi semplice da leggere.
+
Il prossimo passo è quello di creare un dump dei files M2TS "decriptato" e quindi semplice da leggere. Lo stesso procedimento è usato per gli HD-DVD che forniranno un contenitore stream in formato EVO.<br/>
Per fare ciò ci sono ancora dei progetti tutt'ora aperti vi illustrerò per ora quello che mi sembra il più semplice, stabile e funzionale cioè un utility scritta in java di nome DumpHd.<br />
+
Per fare ciò ci sono ancora dei progetti tutt'ora aperti vi illustrerò per ora quello che mi sembra il più semplice, stabile e funzionale cioè un utility scritta in java di nome DumpHd. http://forum.doom9.org/showthread.php?t=123111<br />
http://forum.doom9.org/showthread.php?t=123111<br />
+
<b>per farla funzionare dovete installare JRE.</b><br />
per farla funzionare dovete installare JRE.<br />
+
A questo punto da terminale potete fare il dump dei vostri files m2ts e dirigere l'output direttamente su mplayer usando gli appositi video codec vdpau, potrete riprodurre (on-fly) senza interruzione i vs BD originali. (N.B. il meno finale)<br />
A questo punto da terminale potete fare il dump dei vostri files m2ts e dirigere l'output direttamente su mplayer usando gli appositi video codec vdpau, potrete riprodurre (on-fly) senza interruzione i vs BD originali.<br />
+
In genere la traccia video utile è il file di maggiore grandezza, quindi puntate direttamente a quella.
<pre>
<pre>
# sh dumphd.sh --infile:BDMV/STREAM/00001.m2ts /media/BD-disk | mplayer -vc ff(vc1,mpeg12,wmv3,h264)vdpau -vo vdpau -cache 8192 -
# sh dumphd.sh --infile:BDMV/STREAM/00001.m2ts /media/BD-disk | mplayer -vc ff(vc1,mpeg12,wmv3,h264)vdpau -vo vdpau -cache 8192 -
</pre>
</pre>
Attualmente il programma può decifrare dischi protetti fino allo standard MBKv10.<br/>
+
N.B. Il programma ha anche un'interfaccia grafica eseguibile con dumphd.sh<br/>
  +
  +
Attualmente il programma può decifrare dischi protetti fino allo standard MKBv10.<br/>
http://forum.doom9.org/showthread.php?t=145789<br/>
http://forum.doom9.org/showthread.php?t=145789<br/>
Riga 70: Riga 67:
per qualsiasi aiuto o info fatemi sapere...<br/>
per qualsiasi aiuto o info fatemi sapere...<br/>
  +
  +
=Tips=
  +
Per una codifica audio hardware DTS 5/6.1, PCM 5/6.1, DolbyDigital Surround AC3, aggiungere nella codifica di mplayer il flag sottostante (Alcuni stream audio possono portare fino ad 8 canali, ma per ora nessun lettore linux può riprodurle)
  +
<pre>
  +
-ac hwdts,hwac3,
  +
</pre>
  +
a volte per alcuni file contenenti tracce audio AC3(core)/TRUE-HD, E-AC3, DTSHD, MLP è necessario usare anche il flag sottostante accompagnato dalla giusta traccia audio (n.b. il numero è riferito alla traccia audio contenuta nello stream audio HD usato e non l'id rappresentato dalla singola traccia audio).
  +
<pre>
  +
-demuxer lavf -aid 1
  +
</pre>
  +
Nel caso il vs streaming sia lento provate con
  +
<pre>
  +
-lavdopts threads=2:fast:skiploopfilter=all -sws 0 -framedrop
  +
</pre>

Versione attuale delle 09:58, 1 set 2009

Indice

[modifica] Introduzione

Sarò veloce e coinciso, poi ci sarà modo di approfondire...
Non intendo imporre nessun metodo o programma.
Non intendo promuovere nessun tipo di pirateria o simile.
Anzi, la grande quantità di dati contenuta in BD fa sì che sia più semplice acquistare il film che copiarlo o scaricare un rip in mkv di qualche giga, con conseguente perdita di qualità!
Ormai i prezzi dei titoli sono abbastanza accessibili e reperibili addirittura da un giornalaio qualsiasi.
Mi riferisco alla riproduzione degli ormai diffusi dischi Blu-Ray (BD) o HD-DVD sotto Linux.

[modifica] Configurazione della nostra Slackware

Veniamo quindi al tasto dolente, i film in BD sono logicamente protetti e purtroppo sotto linux ancora non sono disponibili lettori open che possono fare il lavoro di un lettore proprietario come sotto windows, dobbiamo quindi attrezzarci di punto per ovviare al problema.

[modifica] Riproduzione: Mplayer VDPAU

Sono stati fatti molti passi avanti nella decodifica e nello streaming di formati in alta definizione (720p e 1080p), da quando il team Nvidia ha creato il progetto VDPAU ha finalmente posto le basi per la riproduzione ottimale dei formati in HD sfruttando l'accelerazione hardware della GPU.
http://en.wikipedia.org/wiki/VDPAU
Il progetto è poi passato direttamente nelle mani degli sviluppatori di mplayerhq.hu che stanno cercando di finalizzare l'implementazione direttamente nel lettore standard. Per ora si può usare la versione svn.

# svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
# cd mplayer
# svn up
# ./configure
root # make && make install

[modifica] Driver Nvidia per Linux

In breve, i video codec utilizzati in genere dai BD sono: ffmpeg12, ffh264, ffvc1, ffwmv3 tutti con estensione vdpau.
Ottimi e sempre in evoluzione sono i driver Linux di Nvidia, con la versione odierna l'accelerazione dei driver VDPAU è stata aperta a tutte le GPU serie Nvidia.
ftp://download.nvidia.com/XFree86/
Questo ci permetterà di avere un carico in riproduzione sulla CPU praticamente nullo (2-5%), cosa che tornerà utile quando faremo l'output del dump del film direttamente su mplayer.

[modifica] UDF2.50

Dato che i dischi BD contendo molto spesso file grandi anche più di 25GB dobbiamo abilitare il supporto UDF2.5 nel nostro kernel. N.B. nel 2.6.28.7 è abilitato di default. a questo punto possiamo aprire senza problemi un BD o HD-DVD.

[modifica] Lettori BD / HD-DVD

Veniamo ai lettori/masterizzatori BD, vi consiglio vivamente gli LG tipo GGW-H20L / LG GGC-H20 economici e funzionali. Disponibile anche una patch per Plextor PX-B920SA. Questo tipo di Lettori possono essere semplicemente "patchati" (senza compromettere il loro funzionamento), il che permette di leggere il Volume ID dell'unità senza aacs authentication.
http://it.wikipedia.org/wiki/Advanced_Access_Content_System

[modifica] Come funziona la Patch e perchè

Ho cercato di mettere insieme e tradurre le informazioni che meglio rendono l'idea del tipo di protezione che gira attorno al processo:
Alla base del processo di decriptazione AACS di un HD-DVD o di un BD bisogna conoscere due blocchi di dati:
Una "processing key" o PK utile per il "Media key block version" o MKBv usata su quel disco, e il "Volume Unique Id" o VUid del disco da decriptare. Entrambe i dati sono usati per calcolare il "Volume unique key" o VUK che è usato per decriptare le chiavi del titolo che saranno poi usate per decriptare il contenuto del disco.
Per prevenire ad un hacker di fare tutto ciò il firmware di un lettore HD-DVD / BD normalmente rifiuterà incondizionatamente di rendere noto il VUid, cosa che alcuni lettori software come ( WinDVD or PowerDVD ) possono fare, autenticandosi come "leggittimi" ed inviando al lettore una chiave proprietaria "player key" che se accettata come valida permetterà di ritornare il VUid del disco.
Se la player key di un lettore software è compromessa può anche essere invalidata dalle Autorità AACS con un meccanismo di aggiornamento incluso nei nuovi dischi, quindi una lista di chiavi non valide è salvata nella flash rom del driver.
Ad esempio se l' "AACS Autorities" trovassero la chiave usata da AnyDVDHD per autenticarsi, potrebbero invalidare questa chiave, rendendo il programma temporaneamente non usabile, fino a che Slysoft non integrerà una nuova player-key in AnyDVDHD, il processo non richiede più di qualche ora. A questo punto la Patch di Oopho2ei entra in gioco:
La Patch modifica il firmware del driver nel modo che esso riporti il VUid senza il bisogno di un autenticazione da parte di una player key. Facendo questo, una parte della protezione aacs è completamente tagliata fuori, perchè non è più possibile prevenire qualcuno dal ricavare il VUid invalidando la player key usata dal sotware di rippaggio.
A questo punto la protezione del nostro lettore BD è stata sbloccata e possiamo accedere ai contenuti protetti senza problemi.
http://forum.doom9.org/showthread.php?t=144838
- - - -
30th August 2009, 18:20
grazie alla scoperta del membro Pinux di forum.doom9.org è stato possibile aggiornare aacskeys alla ver 0.4.0c includendo un nuovo certificato che rende possibile l'uso automatico delle aacskeys fino alla MKBv12 senza aver bisogno di patchare il driver BD.
http://forum.doom9.org/showthread.php?p=1320065#post1320065

[modifica] Dump del formato BluRay (m2ts) o HD-DVD (evo)

[modifica] DumpHD

Il prossimo passo è quello di creare un dump dei files M2TS "decriptato" e quindi semplice da leggere. Lo stesso procedimento è usato per gli HD-DVD che forniranno un contenitore stream in formato EVO.
Per fare ciò ci sono ancora dei progetti tutt'ora aperti vi illustrerò per ora quello che mi sembra il più semplice, stabile e funzionale cioè un utility scritta in java di nome DumpHd. http://forum.doom9.org/showthread.php?t=123111
per farla funzionare dovete installare JRE.
A questo punto da terminale potete fare il dump dei vostri files m2ts e dirigere l'output direttamente su mplayer usando gli appositi video codec vdpau, potrete riprodurre (on-fly) senza interruzione i vs BD originali. (N.B. il meno finale)
In genere la traccia video utile è il file di maggiore grandezza, quindi puntate direttamente a quella.

# sh dumphd.sh --infile:BDMV/STREAM/00001.m2ts /media/BD-disk | mplayer -vc ff(vc1,mpeg12,wmv3,h264)vdpau -vo vdpau -cache 8192 -

N.B. Il programma ha anche un'interfaccia grafica eseguibile con dumphd.sh

Attualmente il programma può decifrare dischi protetti fino allo standard MKBv10.
http://forum.doom9.org/showthread.php?t=145789

ci sono però altri lettori in grado di farlo con altri pro e altri contro.
vi rimando al forum di doom9.org http://forum.doom9.org/ per qualsiasi tipo di informazione in merito.

ora non vi resta che loggarvi nella nostra amata Slackware...
accendere il vostro televisore FullHD, l'impianto dolbyDigital5.1 e godervi lo spettacolo!

per qualsiasi aiuto o info fatemi sapere...

[modifica] Tips

Per una codifica audio hardware DTS 5/6.1, PCM 5/6.1, DolbyDigital Surround AC3, aggiungere nella codifica di mplayer il flag sottostante (Alcuni stream audio possono portare fino ad 8 canali, ma per ora nessun lettore linux può riprodurle)

-ac hwdts,hwac3,

a volte per alcuni file contenenti tracce audio AC3(core)/TRUE-HD, E-AC3, DTSHD, MLP è necessario usare anche il flag sottostante accompagnato dalla giusta traccia audio (n.b. il numero è riferito alla traccia audio contenuta nello stream audio HD usato e non l'id rappresentato dalla singola traccia audio).

-demuxer lavf -aid 1

Nel caso il vs streaming sia lento provate con

-lavdopts threads=2:fast:skiploopfilter=all -sws 0 -framedrop
Strumenti personali
Namespace

Varianti