Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Acquisizione video e lettura buffer di memoria in tempo reale

    Salve, avrei un quesito che non riesco a risolvere , spero possiate aiutarmi.
    Ho due telecamere collegate a due schede video montate su pc attraverso due porte firewire. Il mio obiettivo è quello di acquisire e codificare i due flussi video in formato YUV e allo stesso tempo riuscire ad accedere (con un qualsiasi linguaggio di programmazione ad alto livello) a tali byte per poterli elaborare in real time. Le domande sono: la codifica del video avviene direttamente in YUV oppure devo effettuare qualche passaggio intermedio? Come poter accedere alla memoria video per poter prelevare ed elaborare i byte in tempo reale? Spero di essermi spiegato e che ci sia una soluzione.
    Grazie per la disponibilità

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Moderazione

    Con quale linguaggio di programmazione intendi implementare questa soluzione?
    Hai letto il Regolamento?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Ciao, non ho specificato un particolare linguaggio perché potrei utilizzare Java cosiccome C++ o altro in base a ciò che più mi consigliate per le operazioni descritte. La natura del mio quesito abbraccia più campi tra cui "anche" la programmazione su cui vorrei, se possibile, qualche indicazione. Se ho sbagliato discussione in cui postare, spostami dove lo ritieni più opportuno. Grazie

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463
    Originariamente inviato da immensky
    non ho specificato un particolare linguaggio perché potrei utilizzare Java cosiccome C++ o altro
    Ok, però anche questa condizione (quella di prescindere dal linguaggio) va indicata, altrimenti non può essere considerata implicita (visto che molti se la dimenticano).


    Originariamente inviato da immensky
    La natura del mio quesito abbraccia più campi tra cui "anche" la programmazione su cui vorrei, se possibile, qualche indicazione.
    Ovviamente, qui si discute solo del "lato programmazione": il resto è off topic.


    Originariamente inviato da immensky
    Se ho sbagliato discussione in cui postare, spostami dove lo ritieni più opportuno. Grazie
    Diciamo che - secondo me - la discussione posta in questi termini è troppo vaga: le possibilità dipendono dal dispositivo in tuo possesso e dalle sue caratteristiche; inoltre, ogni modello di telecamera generalmente fornisce servizi diversi in termini di software a bordo, ampiamente documentati (di solito) nei siti di riferimento del produttore.

    Discutere in termini così generici di telecamere, accesso ai dati, linguaggi di programmazione è pressoché impossibile: occorre restringere il campo.

    Credo ti convenga dapprima fare delle ricerche in merito, ponendo eventualmente le domande relative ai singoli problemi nel luogo corretto, affrontando in ultimo la questione relativa alla programmazione che utilizza questi dispositivi (che può essere fatta con qualsiasi linguaggio) ponendo un problema specifico.

    In caso contrario, la discussione rischia semplicemente di "morire", oppure di spaziare su tutto lo scibile diventando un'accozzaglia disorganizzata di riferimenti.

    Comunque, per il momento, lasciamo correre e vediamo come si evolve la situazione.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469

    Re: Acquisizione video e lettura buffer di memoria in tempo reale

    Originariamente inviato da immensky
    Salve, avrei un quesito che non riesco a risolvere , spero possiate aiutarmi.
    Ho due telecamere collegate a due schede video montate su pc attraverso due porte firewire.
    OK, non hai quindi "schede video" nel computer, hai "porte firewire"
    Il mio obiettivo è quello di acquisire e codificare i due flussi video in formato YUV
    Dipende da cosa c'è "lato computer"
    e allo stesso tempo riuscire ad accedere (con un qualsiasi linguaggio di programmazione ad alto livello) a tali byte per poterli elaborare in real time.
    Così a occhio non ce la farai
    Le domande sono: la codifica del video avviene direttamente in YUV oppure devo effettuare qualche passaggio intermedio?
    Dipende dalle telecamere e/o dal software delle schede video
    Come poter accedere alla memoria video per poter prelevare ed elaborare i byte in tempo reale?
    A occhio non ce la farai, non è che c'è un framebuffer nel quale "magicamente" appare l'immagine, e tu "magicamente" la leggi (si faceva un millennio fa, con VESA)


    Comincerei, tanto per dire, a dare marca e modello delle telecamere, marca e modello delle schede video, software e versione dei programmi in dotazione

    Perchè tutto ruota attorno alla disponibilità del produttore di acquisire i dati (e non penso proprio), ma (ed ecco la possibilità concreta a mio parere) soprattutto avere un driver video windows, che essenzialmente ti consenta di acquisire da un TUO programma i frame RAW non compressi.

    In questo caso il discorso cambia, e di parecchio.
    Qui ad esempio vedi qualcosina
    http://www.datastead.com/products/tv.../overview.html

  6. #6
    Grazie per la risposta. Provvederò quanto prima fornirti le informazioni richieste. Ad intuito penso sia "fattibile" prelevare dati direttamente da buffer di memoria (soprattutto sotto Linux) perché è proprio quello che fanno i player usati per far funzionare ad esempio le webcam (vedi comunissime trasmissioni skype o msn). Da buon curioso-presuntuoso mi dico "chi mi impedisce di fare altrettanto?"
    Appena posso fornisco altre info.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    Originariamente inviato da immensky
    Grazie per la risposta. Provvederò quanto prima fornirti le informazioni richieste. Ad intuito penso sia "fattibile" prelevare dati direttamente da buffer di memoria (soprattutto sotto Linux) perché è proprio quello che fanno i player usati per far funzionare ad esempio le webcam (vedi comunissime trasmissioni skype o msn). Da buon curioso-presuntuoso mi dico "chi mi impedisce di fare altrettanto?"
    Appena posso fornisco altre info.
    mmmm...non concordo (come fai a dirlo?)

    Come fai da un processo a leggere "occultamente" la memoria di un altro processo?

    Semplice: non lo fai, tanto meno su linux

    Ti serve la shmget e in generale le funzioni sh..., o qualcosa del genere, ma questo significa "collaborazione".

    Almeno io non conosco strategie diverse (magari esistono)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.