[MPlayer-dev-eng] [PATCH] Correctly support 32-bit raw MOV

Diego Biurrun diego at biurrun.de
Wed Jan 23 11:42:39 CET 2008


On Wed, Jan 23, 2008 at 06:28:40PM +0800, Timothy Lee wrote:
>
> Michael Niedermayer wrote:
>> On Tue, Jan 22, 2008 at 02:51:42PM +0800, Timothy Lee wrote:
>>   
>>> Carl Eugen Hoyos wrote:
>>>     
>>>> Timothy Lee<timothy.lee<at>  siriushk.com>  writes:
>>>>       
>>>>> The following patches fixes the support for 32-bit raw RGB video in
>>>>> MOV.  The colorspace of those video are IMGFMT_RGB32_1, which is not
>>>>> supported by libswscale (as mentioned in
>>>>> http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2007-     
>>>> Would it be possible to add a scaler to libswscale to support 
>>>> IMGFMT_RGB32_1? I
>>>> believe that solution would be preferred.
>>>>       
>>> I've tried down that path, but it appears to involve adding converter
>>> functions for every output format,
>>>     
>> no, it would be possible to add just the bswap code and a
>> rgb32_1 -> internal yuv converter
>> one could even add just the bswap32 filter and nothing else, that would be
>> ugly as many convertions would fail but it still is better than this hack
>>   id say the bswap32 filter is rejected. ive no comment about the rest
>>   
> I've re-implemented the support for RGB32x and BGR32x colorspace inside 
> libswscale as per Michael's suggestions.  This updated set of patches does 
> the following:
>
>    * libswscale-rgb32x.patch -- adds support for RGB32x -> BGR32 and
>      BGR32x -> RGB32 conversion using 32-bit byte-swapping.
>    * vd-rgb32x.patch --  modifies the filter chain construction process
>      to automatically insert another vf_scale when the vo does not
>      support RGB32x or BGR32x colorspace.
>    * mov-raw-32bit.patch -- fixes the colorspace of 32-bit raw RGB
>      video reported by MOV demuxer.
>
> Again, the code has not been tested on big-endian machines.

If you tell me exactly what to test, I can give this a go.

Diego



More information about the MPlayer-dev-eng mailing list