Skip to content

Commit 4419f91

Browse files
committed
Utils: код описания MEDIASUBTYPE выведен в MediaTypes.h.
1 parent b1de61b commit 4419f91

File tree

3 files changed

+48
-40
lines changed

3 files changed

+48
-40
lines changed

Source/Helper.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
#include <dxva2api.h>
2424
#include <mfobjects.h>
2525
#include "Utils/Util.h"
26+
#include "Utils/MediaTypes.h"
2627
#include "Utils/StringUtil.h"
2728
#include "csputils.h"
2829
#include "../Include/IMediaSideData.h"

Source/Utils/MediaTypes.h

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
//
2+
// Copyright (c) 2025 v0lt, Aleksoid
3+
//
4+
// SPDX-License-Identifier: MIT
5+
//
6+
7+
#pragma once
8+
9+
#ifndef FCC
10+
#define FCC(ch4) ((((DWORD)(ch4) & 0xFF) << 24) | \
11+
(((DWORD)(ch4) & 0xFF00) << 8) | \
12+
(((DWORD)(ch4) & 0xFF0000) >> 8) | \
13+
(((DWORD)(ch4) & 0xFF000000) >> 24))
14+
#endif
15+
16+
#ifndef DEFINE_MEDIATYPE_GUID
17+
#define DEFINE_MEDIATYPE_GUID(name, format) \
18+
DEFINE_GUID(name, \
19+
format, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
20+
#endif
21+
22+
// Media subtypes
23+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y8, 0x20203859);
24+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y800, 0x30303859);
25+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y16, 0x10003159); // Y1[0][16]
26+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_YV16, 0x36315659);
27+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_YV24, 0x34325659);
28+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_I420, 0x30323449); // from "wmcodecdsp.h"
29+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y42B, 0x42323459);
30+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_444P, 0x50343434);
31+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y210, 0x30313259);
32+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y216, 0x36313259);
33+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_v210, 0x30313276);
34+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y410, 0x30313459);
35+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y416, 0x36313459);
36+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_YUV444P16, 0x10003359); // Y3[0][16]
37+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_RGB48, 0x30424752); // RGB[48] (RGB0)
38+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_BGR48, 0x30524742); // BGR[48] (BGR0)
39+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_BGRA64, 0x40415242); // BRA[64] (BRA@)
40+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_b48r, 0x72383462);
41+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_b64a, 0x61343662);
42+
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_r210, 0x30313272);
43+
DEFINE_GUID(MEDIASUBTYPE_LAV_RAWVIDEO, 0xd80fa03c, 0x35c1, 0x4fa1, 0x8c, 0x8e, 0x37, 0x5c, 0x86, 0x67, 0x16, 0x6e);
44+
45+
// non-standard values for Transfer Matrix
46+
#define VIDEOTRANSFERMATRIX_FCC 6
47+
#define VIDEOTRANSFERMATRIX_YCgCo 7

Source/Utils/Util.h

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,6 @@
66

77
#pragma once
88

9-
#ifndef FCC
10-
#define FCC(ch4) ((((DWORD)(ch4) & 0xFF) << 24) | \
11-
(((DWORD)(ch4) & 0xFF00) << 8) | \
12-
(((DWORD)(ch4) & 0xFF0000) >> 8) | \
13-
(((DWORD)(ch4) & 0xFF000000) >> 24))
14-
#endif
15-
16-
#ifndef DEFINE_MEDIATYPE_GUID
17-
#define DEFINE_MEDIATYPE_GUID(name, format) \
18-
DEFINE_GUID(name, \
19-
format, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
20-
#endif
21-
229
template <typename... Args>
2310
inline void DebugLogFmt(std::wstring_view format, Args&& ...args)
2411
{
@@ -43,33 +30,6 @@ inline void DebugLogFmt(std::wstring_view format, Args&& ...args)
4330
#define ALIGN(x, a) __ALIGN_MASK(x,(decltype(x))(a)-1)
4431
#define __ALIGN_MASK(x, mask) (((x)+(mask))&~(mask))
4532

46-
// Media subtypes
47-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y8, 0x20203859);
48-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y800, 0x30303859);
49-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y16, 0x10003159); // Y1[0][16]
50-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_YV16, 0x36315659);
51-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_YV24, 0x34325659);
52-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_I420, 0x30323449); // from "wmcodecdsp.h"
53-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y42B, 0x42323459);
54-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_444P, 0x50343434);
55-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y210, 0x30313259);
56-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y216, 0x36313259);
57-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_v210, 0x30313276);
58-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y410, 0x30313459);
59-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_Y416, 0x36313459);
60-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_YUV444P16, 0x10003359); // Y3[0][16]
61-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_RGB48, 0x30424752); // RGB[48] (RGB0)
62-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_BGR48, 0x30524742); // BGR[48] (BGR0)
63-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_BGRA64, 0x40415242); // BRA[64] (BRA@)
64-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_b48r, 0x72383462);
65-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_b64a, 0x61343662);
66-
DEFINE_MEDIATYPE_GUID(MEDIASUBTYPE_r210, 0x30313272);
67-
DEFINE_GUID(MEDIASUBTYPE_LAV_RAWVIDEO, 0xd80fa03c, 0x35c1, 0x4fa1, 0x8c, 0x8e, 0x37, 0x5c, 0x86, 0x67, 0x16, 0x6e);
68-
69-
// non-standard values for Transfer Matrix
70-
#define VIDEOTRANSFERMATRIX_FCC 6
71-
#define VIDEOTRANSFERMATRIX_YCgCo 7
72-
7333
template <typename T>
7434
// If the specified value is out of range, set to default values.
7535
inline T discard(T const& val, T const& def, T const& lo, T const& hi)

0 commit comments

Comments
 (0)