Pages: 1 2 [3] 4   Go Down
Author Topic: Gestire video 3D  (Read 2751 times)
0 Members and 1 Guest are viewing this topic.
Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Dimenticavo, il V-sync è generato in hardware dalla scheda video, non importa se poi è collegata al monitor tramite VGA (analogica) oppure in digitale tramite VDI/HDMI, il segnale è ottenibili in software tramite le apposite API, molti giochi prevedono il V-sync come opzione per sincronizzare la generazione dei frame con la visualizzazione sul monitor.
In tutti i casi non è possibile in nessun modo ottenere il V-sync sulla USB in modo fedele perché la USB ha le sue latenze (non costanti e possono arrivare a svariate decine di ms), non sono trascurabili per questo genere di applicazione.
Per non parlare delle latenze software, un normale programma è soggetto a rallentamenti e fermi in funzione di quello che fa il pc, solo questo è più che sufficiente per impedire la perfetta sincronizzazione con gli occhiali, ovviamente c'è un modo per ovviare a questa cosa, però tocca essere molto bravi a scrivere software per pc e avere un'ottima conoscenza di Windows/Linux.
Logged

Riva del Garda, TN / Forlì
Offline Offline
Edison Member
*
Karma: 7
Posts: 2247
Il piu' modesto al mondo
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

comunque ti dico per esperienza (possessore di un nvidia 3d vision kit con schermo samsung syncmaster 2233) che se gli schermi per il 3D partono da 100Hz e che se uno schermo normale oscilla tra i 60 e i 75Hz il motivo è che se scendi sotto i 50Hz per occhio ti si affatica la vista e ti provoca un gran mal di testa dopo anche una sola ora (indifferentemente dalla profondità che dai all'immagine stereoscopica).

se proprio vuoi fare un 3D in casa per un portatile utilizza una cosa chiamata barriera di parallasse che almeno non ti rovini gli occhi.

se però vuoi continuare devi usare una porta esterna, non credo che il tuo pc non abbia nemmeno una HDMI o DVI o VGA. Certo se fossi in grado di gestire le directx come nulla potresti farlo via software ma già il tempo necessario per comunicare via seriale e credo andresti out of sync
inoltre abilitare il v-sync riduce le prestazioni del gioco/programma
Logged

Il nuovo forum italiano sull'elettronica: http://www.electroit.tk/ <--- Nuovamente online!

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok ho più o meno capito quello che vuoi dire, mi domando se a questo punto una soluzione potrebbe essere che il plughin stesso si sincronizzi con gli occhiali ( è il plughin che alterna i 2 fotogrammi del formato Side-by-Side 3D )
ma cosi mi vengono in mente molti altri problemi.
Chi sta provando a farmi il plughin non sa nemmeno se farlo in c++ o in java ( stavamo giusto ragionandoci ora ) e non abbiamo la più pallida idea di come interfacciarlo con arduino.
Il plughin lo stiamo pensando per VLC.
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2322
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
però tocca essere molto bravi a scrivere software per pc e avere un'ottima conoscenza di Windows/Linux.

E anche di DirectX o similare secondo me  smiley-wink

Quote
Chi sta provando a farmi il plughin non sa nemmeno se farlo in c++ o in java ( stavamo giusto ragionandoci ora ) e non abbiamo la più pallida idea di come interfacciarlo con arduino.

Se vuoi avere una chance per il plugin devi andare su C++ e NON si deve interfacciare con Arduino che il segnale lo deve prendere direttamente dalla VGA
« Last Edit: March 15, 2013, 01:48:17 pm by flz47655 » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
comunque ti dico per esperienza (possessore di un nvidia 3d vision kit con schermo samsung syncmaster 2233) che se gli schermi per il 3D partono da 100Hz e che se uno schermo normale oscilla tra i 60 e i 75Hz il motivo è che se scendi sotto i 50Hz per occhio ti si affatica la vista e ti provoca un gran mal di testa dopo anche una sola ora (indifferentemente dalla profondità che dai all'immagine stereoscopica).

Io ho visto usare con un discreto successo anche con la frequenza di 60 Hz.
In ogni caso se avessi un ipotetica shcedavideo che arriva fino a 120 l'intero dispositivo si adaterebbe alla nuovo frequenza.
Il progetto e pensato solo per la visualizazioni di video.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


E anche di DirectX o similare secondo me  smiley-wink


Domanda stupida cosa intendete per DirectX ?
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2322
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

http://it.wikipedia.org/wiki/DirectX
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10112
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

o meglio ancora le openGL, così fai win, linux e mac smiley
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok ho letto quello che riguarda il DirectX, è molto bella come cosa ma decisamente troppo complessa secondo me.
ora non mi rimane che riordinare le idee.
In ogni caso vorrei realizzare un programma su arduino per prendere il clock dal vsinc della presa vga ( lasciando per ora perdere la porta usb ) per poi mandarlo ai vari occhiali, cosi almeno potrò effettuare maggiori test.
Il dubbio che mi rimane ora è se riuscirò a creare il tanto agoniato plughin e nel caso riuscire a sincronizzarlo .

PROPOSITI FUTURI:
Spero di riuscire ad ottenere almeno un risultato accettabile e speriamo che il progetto prenda piede in maniera da poter essere sempre più sviluppato.

INTANTO:
Secondo voi questo codice va bene ? o si potrebbe quasi sicuramente renderlo più snello e veloce?

Code:
int VGAclock=0;
int SINCswic=0;

void setup(){
  
  pinMode ( 13, OUTPUT );  // il pin 13 e 12 servono per comandare gli occhiali tramite cavo non IR
  pinMode ( 12, OUTPUT );
  pinMode (8, INPUT);     // da qui faccio entrare il segnale di clock VGA
  pinMode (9, INPUT);     // interruttore per girare la fase
}

void loop() {
  VGAclock=digitalRead(8);
  SINCswic=digitalRead(9);
  
  if(VGAclock==HIGH , SINCswic==LOW ){
   digitalWrite(13,HIGH);
   digitalWrite(12,LOW);
  }
  else{
   digitalWrite(13,LOW);
   digitalWrite(12,HIGH);
  }
  
  if(VGAclock==HIGH , SINCswic==HIGH  ){
   digitalWrite(13,LOW);
   digitalWrite(12,HIGH);
  }
  else{
   digitalWrite(13,HIGH);
   digitalWrite(12,LOW);
  }

}
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2322
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

o meglio ancora le openGL, così fai win, linux e mac smiley

Facile dire openGL ma in questo caso non si avrebbe qualcosa di molto portabile a meno di non scrivere codice specifico per le tre piattaforme, il VSYNC con la scheda video non è inclusa nelle specifiche principali ed è delegata alla piattaforma

Ciao
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10112
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ah, non sapevo questo particolare, mi aspettavo che invece ci fosse un qualcosa.

@mango: direi che può andare bene, ma se usi le macro guadagni microsecondi preziosi, vedi http://www.billporter.info/2010/08/18/ready-set-oscillate-the-fastest-way-to-change-arduino-pins/
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok recuperato pc con porta VGA, ora mi metto a provare a creare il circuito e a tampinare per vedere come sistamare la parte in c++ per vlc.
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2322
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Leggiti le specifiche VGA prima di agganciarti alla porta. La massa deve essere in comune con Arduino.

Ciao
« Last Edit: March 16, 2013, 05:44:10 am by flz47655 » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si si lo so, è che non riesco a trovare la tensione di uscita del Vsync per capire se devo amplificarlo un pelo oppure no.
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2322
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

VSYNC se non ricordo male è a 5v quindi non serve amplificazione
Logged

Pages: 1 2 [3] 4   Go Up
Jump to: