1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
using System;
using System.Runtime.InteropServices;
namespace HandBrake.Interop
{
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct hb_subtitle_s
{
/// int
public int id;
/// int
public int track;
/// hb_subtitle_config_t->hb_subtitle_config_s
public hb_subtitle_config_s config;
/// hb_subtitle_s_subtype
public hb_subtitle_s_subtype format;
/// hb_subtitle_s_subsource
public hb_subtitle_s_subsource source;
/// char[1024]
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1024)]
public string lang;
/// char[4]
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
public string iso639_2;
/// uint8_t->unsigned char
public byte type;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.U4)]
public uint[] palette;
public int width;
public int height;
public IntPtr extradata;
public int extradata_size;
/// int
public int hits;
/// int
public int forced_hits;
/// hb_fifo_t*
public IntPtr fifo_in;
/// hb_fifo_t*
public IntPtr fifo_raw;
/// hb_fifo_t*
public IntPtr fifo_sync;
/// hb_fifo_t*
public IntPtr fifo_out;
/// hb_mux_data_t*
public IntPtr mux_data;
}
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct hb_subtitle_config_s
{
/// hb_subtitle_config_s_subdest
public hb_subtitle_config_s_subdest dest;
/// int
public int force;
/// int
public int default_track;
/// char[128]
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
public string src_filename;
/// char[40]
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string src_codeset;
/// int64_t->int
public long offset;
}
public enum hb_subtitle_config_s_subdest
{
RENDERSUB,
PASSTHRUSUB,
}
public enum hb_subtitle_s_subtype
{
PICTURESUB,
TEXTSUB,
}
public enum hb_subtitle_s_subsource
{
VOBSUB,
SRTSUB,
CC608SUB,
CC708SUB,
UTF8SUB,
TX3GSUB,
SSASUB
}
}
|