// -------------------------------------------------------------------------------------------------------------------- // // This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. // // // Defines the hb_title_s type. // // Disable Stylecop Warnings for this file // -------------------------------------------------------------------------------------------------------------------- namespace HandBrake.Interop.HbLib { using System; using System.Runtime.InteropServices; [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public struct hb_title_s { /// Anonymous_990d28ea_6cf3_4fbc_8143_4df9513e9550 public hb_title_type_anon type; public uint reg_desc; /// char[1024] [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1024)] public string dvd; /// char[1024] [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1024)] public string name; /// int public int index; public int playlist; /// int public int vts; /// int public int ttn; /// int public int cell_start; /// int public int cell_end; /// int public ulong block_start; /// int public ulong block_end; /// int public ulong block_count; /// int public int angle_count; public IntPtr opaque_priv; /// int public int hours; /// int public int minutes; /// int public int seconds; /// uint64_t->unsigned int public ulong duration; /// double public double aspect; /// double public double container_aspect; public int has_resolution_change; /// int public int width; /// int public int height; /// int public int pixel_aspect_width; /// int public int pixel_aspect_height; /// int public int rate; /// int public int rate_base; /// int[4] [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I4)] public int[] crop; public hb_title_demuxer_anon demuxer; /// int public int detected_interlacing; public int pcr_pid; /// int public int video_id; /// int public int video_codec; public uint video_stream_type; /// int public int video_codec_param; /// char* [MarshalAs(UnmanagedType.LPStr)] public string video_codec_name; /// int public int video_bitrate; /// char* [MarshalAs(UnmanagedType.LPStr)] public string container_name; /// int public int data_rate; /// hb_metadata_t* public IntPtr metadata; /// hb_list_t* public IntPtr list_chapter; /// hb_list_t* public IntPtr list_audio; /// hb_list_t* public IntPtr list_subtitle; /// hb_list_t* public IntPtr list_attachment; /// hb_job_t* public IntPtr job; /// uint32_t->unsigned int public uint flags; } public enum hb_title_type_anon { HB_DVD_TYPE, HB_BD_TYPE, HB_STREAM_TYPE, HB_FF_STREAM_TYPE, } public enum hb_title_demuxer_anon { HB_DVD_DEMUXER = 0, HB_MPEG_DEMUXER, HB_NULL_DEMUXER, } }