Sto convertendo le immagini in un file MOV e mi è successo qualcosa di interessante. Ho registrato i miei bit per componente di colore, bit per pixel e byte per riga. Qui è il mio codice:Perché i byte della mia immagine per riga sono più lunghi dei byte per pixel per larghezza?
NSLog(@"Image width: %d, Height: %d", CGImageGetWidth(image), CGImageGetHeight(image));
NSLog(@"BPC: %d \ BPP: %d \ ByPR: %d", CGImageGetBitsPerComponent(image), CGImageGetBitsPerPixel(image), CGImageGetBytesPerRow(image));
Ecco la mia uscita:
immagine Larghezza: 300, Altezza: 300 (come previsto del tutto) BPC: 8 (8 bit per colore ... finora tutto bene) BPP: 32 (32 = 4 componenti ARGB * 8 bit per colore ... capito) ByPR: 1216 (300 px per riga * 4 byte per pixel = 1200 byte per riga)
Perché ho registrato 1216 byte per riga e non 1200? A proposito, questo non è solo un colpo di fortuna. Quando creo un video basato su quei numeri per le dimensioni del buffer, funziona. Quando lo creo con 1200 byte per riga, ottengo un effetto di aliasing incasinato.
Pensieri ?!
In realtà ho bisogno di fare la stessa cosa. Puoi darmi il codice che converte le immagini in mov? Va bene se non puoi. La mia email è [email protected] Sarebbe molto grato. – anivader
Ho esigenze leggermente diverse: nuovo rene e denaro. Qualsiasi importo. Sarebbe bello poterlo condividere. Tha-a-anks! –