On 02/28/2016 11:31 AM, Reimar Döffinger wrote:
On 28.02.2016, at 11:19, Mats Peterson <matsp888-at-yahoo....@ffmpeg.org> wrote:
From libavutil/pixfmt.h:
* @note
* AV_PIX_FMT_RGB32 is handled in an endian-specific manner. An RGBA
* color is put together as:
* (A << 24) | (R << 16) | (G << 8) | B
* This is stored as BGRA on little-endian CPU architectures and ARGB on
* big-endian CPUs.
This is not quite true, and you said yourself that the palette isn't stored in
a host-specific order, Michael, since one has to use AV_RL32() to get the
palette entries correctly on a big-endian machine. Itt is stored BGRA, in that
order, in memory, as far as I understand.
1) pixfmt.h applies to AVFrame not AVPacket really, it can be a bit confusing
for raw formats that way though
Ah, OK. In any case I have noticed that you have to use AV_RL32() on a
big-endian machine to get the palette entries from the *packets* (sided
data or appended) in the right order.
Mats
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel