mirror of
https://github.com/microsoft/DirectXTex.git
synced 2025-07-13 21:50:13 +02:00
Xbox One platform changes
This commit is contained in:
parent
7ba4a6504f
commit
501835a8b3
@ -300,10 +300,27 @@ static HRESULT _DecodeMetadata( _In_ DWORD flags,
|
|||||||
sRGB = true;
|
sRGB = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||||
|
else if ( memcmp( &containerFormat, &GUID_ContainerFormatJpeg, sizeof(GUID) ) == 0 )
|
||||||
|
{
|
||||||
|
if ( SUCCEEDED( metareader->GetMetadataByName( L"/app1/ifd/exif/{ushort=40961}", &value ) ) && value.vt == VT_UI2 && value.uiVal == 1 )
|
||||||
|
{
|
||||||
|
sRGB = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ( memcmp( &containerFormat, &GUID_ContainerFormatTiff, sizeof(GUID) ) == 0 )
|
||||||
|
{
|
||||||
|
if ( SUCCEEDED( metareader->GetMetadataByName( L"/ifd/exif/{ushort=40961}", &value ) ) && value.vt == VT_UI2 && value.uiVal == 1 )
|
||||||
|
{
|
||||||
|
sRGB = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
else if ( SUCCEEDED( metareader->GetMetadataByName( L"System.Image.ColorSpace", &value ) ) && value.vt == VT_UI2 && value.uiVal == 1 )
|
else if ( SUCCEEDED( metareader->GetMetadataByName( L"System.Image.ColorSpace", &value ) ) && value.vt == VT_UI2 && value.uiVal == 1 )
|
||||||
{
|
{
|
||||||
sRGB = true;
|
sRGB = true;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
PropVariantClear( &value );
|
PropVariantClear( &value );
|
||||||
|
|
||||||
@ -530,6 +547,34 @@ static HRESULT _EncodeMetadata( _In_ IWICBitmapFrameEncode* frame, _In_ const GU
|
|||||||
(void)metawriter->SetMetadataByName( L"/sRGB/RenderingIntent", &value );
|
(void)metawriter->SetMetadataByName( L"/sRGB/RenderingIntent", &value );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||||
|
else if ( memcmp( &containerFormat, &GUID_ContainerFormatJpeg, sizeof(GUID) ) == 0 )
|
||||||
|
{
|
||||||
|
// Set Software name
|
||||||
|
(void)metawriter->SetMetadataByName( L"/app1/ifd/{ushort=305}", &value );
|
||||||
|
|
||||||
|
if ( sRGB )
|
||||||
|
{
|
||||||
|
// Set EXIF Colorspace of sRGB
|
||||||
|
value.vt = VT_UI2;
|
||||||
|
value.uiVal = 1;
|
||||||
|
(void)metawriter->SetMetadataByName( L"/app1/ifd/exif/{ushort=40961}", &value );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ( memcmp( &containerFormat, &GUID_ContainerFormatTiff, sizeof(GUID) ) == 0 )
|
||||||
|
{
|
||||||
|
// Set Software name
|
||||||
|
(void)metawriter->SetMetadataByName( L"/ifd/{ushort=305}", &value );
|
||||||
|
|
||||||
|
if ( sRGB )
|
||||||
|
{
|
||||||
|
// Set EXIF Colorspace of sRGB
|
||||||
|
value.vt = VT_UI2;
|
||||||
|
value.uiVal = 1;
|
||||||
|
(void)metawriter->SetMetadataByName( L"/ifd/exif/{ushort=40961}", &value );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Set Software name
|
// Set Software name
|
||||||
@ -537,12 +582,13 @@ static HRESULT _EncodeMetadata( _In_ IWICBitmapFrameEncode* frame, _In_ const GU
|
|||||||
|
|
||||||
if ( sRGB )
|
if ( sRGB )
|
||||||
{
|
{
|
||||||
// Set JPEG EXIF Colorspace of sRGB
|
// Set EXIF Colorspace of sRGB
|
||||||
value.vt = VT_UI2;
|
value.vt = VT_UI2;
|
||||||
value.uiVal = 1;
|
value.uiVal = 1;
|
||||||
(void)metawriter->SetMetadataByName( L"System.Image.ColorSpace", &value );
|
(void)metawriter->SetMetadataByName( L"System.Image.ColorSpace", &value );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else if ( hr == WINCODEC_ERR_UNSUPPORTEDOPERATION )
|
else if ( hr == WINCODEC_ERR_UNSUPPORTEDOPERATION )
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user