blob: c12352e043c2feef60872a86979c4b13b42b9329 (
plain)
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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
using System;
using System.Runtime.InteropServices;
namespace HandBrake.Interop
{
[StructLayout(LayoutKind.Sequential)]
public struct hb_job_s
{
/// int
public int sequence_id;
/// hb_title_t*
public IntPtr title;
public int feature;
/// int
public int chapter_start;
/// int
public int chapter_end;
/// int
public int chapter_markers;
/// int[4]
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I4)]
public int[] crop;
/// int
public int deinterlace;
/// hb_list_t*
public IntPtr filters;
/// int
public int width;
/// int
public int height;
/// int
public int keep_ratio;
/// int
public int grayscale;
public hb_anamorphic_substruct anamorphic;
public int modulus;
/// int
public int maxWidth;
/// int
public int maxHeight;
/// int
public int vcodec;
/// float
public float vquality;
/// int
public int vbitrate;
public int pfr_vrate;
public int pfr_vrate_base;
/// int
public int vrate;
/// int
public int vrate_base;
/// int
public int cfr;
/// int
public int pass;
/// char*
//[MarshalAs(UnmanagedType.LPStr)]
//public string x264opts;
public IntPtr advanced_opts;
/// int
public int areBframes;
/// int
public int color_matrix;
/// hb_list_t*
public IntPtr list_audio;
/// hb_list_t*
public IntPtr list_subtitle;
/// int
public int mux;
/// char*
[MarshalAs(UnmanagedType.LPStr)]
public string file;
/// int
public int largeFileSize;
/// int
public int mp4_optimize;
/// int
public int ipod_atom;
/// int
public int indepth_scan;
/// hb_subtitle_config_t->hb_subtitle_config_s
public hb_subtitle_config_s select_subtitle_config;
/// int
public int angle;
public int frame_to_start;
public long pts_to_start;
/// int
public int frame_to_stop;
/// int64_t->int
public long pts_to_stop;
/// int
public int start_at_preview;
/// int
public int seek_points;
/// uint32_t->unsigned int
public uint frames_to_skip;
// Padding for the part of the struct we don't care about marshaling.
[MarshalAs(UnmanagedType.ByValArray, SizeConst = MarshalingConstants.JobPaddingBytes, ArraySubType = UnmanagedType.U1)]
public byte[] padding;
}
}
|