non ho mai lavorato con le cam IP ma la teoria è uguale per tutte!

di solito le cam inviano un flusso di byte che, in base alla profondità di colore vengono tradotti con dei valori esadecimali ( o da 0 a 254) che rappresentano argb (a = alpha *trasparenza, r = red *rosso, g = green *verde, b = blu * blu) o rgb (senza alpha) e calcolando la risoluzione si posizionano questi colori nella superfice di visualizzazione disposti in sequenza.

ad esempio se l'immagine e di 50 x 50 e una profondità di colore a 24 bit nel flusso del fotogramma avrai i primi tre valori che rappresentano il colore con cui accendere il primo pixel i successivi tre per il secondo e cosi' via fino ad arrivare a 50, dopo sarà il primo della seconda fila e via riga dopo riga si costruisce l'immagine, immagine dopo immagine si costruisce il "video" (in base alla velocità del frame che in genere per un video fluido sono 25 al secondo).

per catturare il flusso occore sapere come viene trasmesso, e questo lo devi sapere tu (o meglio la cam!).

con un algoritmo di cicli annidati te la caveresti abbastanza bene.