Auravision: Difference between revisions
m (→Hypothesis: better variables) |
m (colon) |
||
Line 1: | Line 1: | ||
* FourCCs: AURA, AUR2 | * FourCCs: AURA, AUR2 | ||
* Company Auravision | * Company: Auravision | ||
* Samples: | * Samples: | ||
** AURA: http://samples.mplayerhq.hu/V-codecs/AURA/ | ** AURA: http://samples.mplayerhq.hu/V-codecs/AURA/ |
Revision as of 01:02, 10 December 2008
- FourCCs: AURA, AUR2
- Company: Auravision
- Samples:
According to various codec lists, AURA is a YUV 4:1:1 codec while AUR2 is YUV 4:2:2. The payload of an AURA frame begins with the 6 ASCII bytes 'YUV411'.
Hypothesis
--Multimedia Mike 02:42, 10 December 2008 (EST)
Any given AURA sample contains frames of a constant size. For 160x120 files, the frames are each 14448 bytes. For 240x180 files, the frames are each 32448 bytes. In YUV 4:1:1 data, a 4x4 block consisting of 16 pixels assigns a Y sample to each pixel while all 16 pixels share a U and a V sample. If each sample is 1 byte, the size of a raw YUV 4:1:1 frame is (width * height * 18) / 16. This formula does not reconcile with AURA frames.
However, if each of the Y samples is only coded with 5 bits, the observed frame sizes come close, with 48 extra bytes. Indeed, the frames do appear to begin with a 48-byte header. So the size of the frame is calculated as
p = width * height 48 + (p * 5/8) + (p/16) * 2
Testing this hypothesis might require trying several different bit reading methods.