vlc | branch: master | Steve Lhomme <[email protected]> | Thu Mar 30 11:20:01 2017 +0200| [3094a145158d96df0640d7cb1381dc76c92f83f8] | committer: Hugo Beauzée-Luyssen
contrib: d3d11: add dxgi1.5 to support HDR10 metadata Signed-off-by: Hugo Beauzée-Luyssen <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3094a145158d96df0640d7cb1381dc76c92f83f8 --- contrib/src/d3d11/dxgi1_5.idl | 51 +++++++++++++++++++++++++++++++++++++++++++ contrib/src/d3d11/rules.mak | 10 ++++++++- 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/contrib/src/d3d11/dxgi1_5.idl b/contrib/src/d3d11/dxgi1_5.idl new file mode 100644 index 0000000..67a0868 --- /dev/null +++ b/contrib/src/d3d11/dxgi1_5.idl @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Steve Lhomme + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +import "dxgi1_4.idl"; + +typedef enum DXGI_HDR_METADATA_TYPE +{ + DXGI_HDR_METADATA_TYPE_NONE = 0x00, + DXGI_HDR_METADATA_TYPE_HDR10 = 0x01, +} DXGI_HDR_METADATA_TYPE; + +typedef struct DXGI_HDR_METADATA_HDR10 +{ + UINT16 RedPrimary[2]; + UINT16 GreenPrimary[2]; + UINT16 BluePrimary[2]; + UINT16 WhitePoint[2]; + UINT MaxMasteringLuminance; + UINT MinMasteringLuminance; + UINT16 MaxContentLightLevel; + UINT16 MaxFrameAverageLightLevel; +} DXGI_HDR_METADATA_HDR10; + +[ + object, + local, + uuid(3d585d5a-bd4a-489e-b1f4-3dbcb6452ffb) +] +interface IDXGISwapChain4 : IDXGISwapChain3 +{ + HRESULT SetHDRMetaData( + [in] DXGI_HDR_METADATA_TYPE Type, + [in] UINT Size, + [in] void* pMetaData + ); +}; diff --git a/contrib/src/d3d11/rules.mak b/contrib/src/d3d11/rules.mak index f27bbbe..fffc59f 100644 --- a/contrib/src/d3d11/rules.mak +++ b/contrib/src/d3d11/rules.mak @@ -19,6 +19,7 @@ DST_DXGITYPE_H = $(PREFIX)/include/dxgitype.h DST_DXGI12_H = $(PREFIX)/include/dxgi1_2.h DST_DXGI13_H = $(PREFIX)/include/dxgi1_3.h DST_DXGI14_H = $(PREFIX)/include/dxgi1_4.h +DST_DXGI15_H = $(PREFIX)/include/dxgi1_5.h ifdef HAVE_WIN32 @@ -71,6 +72,10 @@ $(DST_DXGI14_H): $(SRC)/d3d11/dxgi1_4.idl $(DST_DXGI13_H) mkdir -p -- "$(PREFIX)/include/" $(WIDL) -DBOOL=WINBOOL -Idxgi12 -I$(IDL_INC_PATH) -h -o $@ $< +$(DST_DXGI15_H): $(SRC)/d3d11/dxgi1_5.idl $(DST_DXGI14_H) + mkdir -p -- "$(PREFIX)/include/" + $(WIDL) -DBOOL=WINBOOL -Idxgi12 -I$(IDL_INC_PATH) -h -o $@ $< + .dxgitype: $(DST_DXGITYPE_H) touch $@ @@ -83,5 +88,8 @@ $(DST_DXGI14_H): $(SRC)/d3d11/dxgi1_4.idl $(DST_DXGI13_H) .dxgi14: .dxgi13 $(DST_DXGI14_H) touch $@ -.d3d11: $(DST_D3D11_H) $(DST_DXGIDEBUG_H) .dxgi14 +.dxgi15: .dxgi14 $(DST_DXGI15_H) + touch $@ + +.d3d11: $(DST_D3D11_H) $(DST_DXGIDEBUG_H) .dxgi15 touch $@ _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
