libsmacker_sys/
bindings.rs

1/* automatically generated by rust-bindgen 0.58.1 */
2
3pub const SMK_DONE: i8 = 0;
4pub const SMK_MORE: i8 = 1;
5pub const SMK_LAST: i8 = 2;
6pub const SMK_ERROR: i8 = -1;
7pub const SMK_MODE_DISK: u8 = 0;
8pub const SMK_MODE_MEMORY: u8 = 1;
9pub const SMK_FLAG_Y_NONE: u8 = 0;
10pub const SMK_FLAG_Y_INTERLACE: u8 = 1;
11pub const SMK_FLAG_Y_DOUBLE: u8 = 2;
12pub const SMK_AUDIO_TRACK_0: u8 = 1;
13pub const SMK_AUDIO_TRACK_1: u8 = 2;
14pub const SMK_AUDIO_TRACK_2: u8 = 4;
15pub const SMK_AUDIO_TRACK_3: u8 = 8;
16pub const SMK_AUDIO_TRACK_4: u8 = 16;
17pub const SMK_AUDIO_TRACK_5: u8 = 32;
18pub const SMK_AUDIO_TRACK_6: u8 = 64;
19pub const SMK_VIDEO_TRACK: u8 = 128;
20#[repr(C)]
21#[derive(Debug, Copy, Clone)]
22pub struct smk_t {
23    _unused: [u8; 0],
24}
25#[doc = " forward-declaration for an struct"]
26pub type smk = *mut smk_t;
27extern "C" {
28    #[doc = " open an smk (from a file)"]
29    pub fn smk_open_file(
30        filename: *const ::std::os::raw::c_char,
31        mode: ::std::os::raw::c_uchar,
32    ) -> smk;
33}
34extern "C" {
35    #[doc = " read an smk (from a memory buffer)"]
36    pub fn smk_open_memory(
37        buffer: *const ::std::os::raw::c_uchar,
38        size: ::std::os::raw::c_ulong,
39    ) -> smk;
40}
41extern "C" {
42    #[doc = " close out an smk file and clean up memory"]
43    pub fn smk_close(object: smk);
44}
45extern "C" {
46    pub fn smk_info_all(
47        object: smk,
48        frame: *mut ::std::os::raw::c_ulong,
49        frame_count: *mut ::std::os::raw::c_ulong,
50        usf: *mut f64,
51    ) -> ::std::os::raw::c_char;
52}
53extern "C" {
54    pub fn smk_info_video(
55        object: smk,
56        w: *mut ::std::os::raw::c_ulong,
57        h: *mut ::std::os::raw::c_ulong,
58        y_scale_mode: *mut ::std::os::raw::c_uchar,
59    ) -> ::std::os::raw::c_char;
60}
61extern "C" {
62    pub fn smk_info_audio(
63        object: smk,
64        track_mask: *mut ::std::os::raw::c_uchar,
65        channels: *mut ::std::os::raw::c_uchar,
66        bitdepth: *mut ::std::os::raw::c_uchar,
67        audio_rate: *mut ::std::os::raw::c_ulong,
68    ) -> ::std::os::raw::c_char;
69}
70extern "C" {
71    pub fn smk_enable_all(object: smk, mask: ::std::os::raw::c_uchar) -> ::std::os::raw::c_char;
72}
73extern "C" {
74    pub fn smk_enable_video(object: smk, enable: ::std::os::raw::c_uchar)
75        -> ::std::os::raw::c_char;
76}
77extern "C" {
78    pub fn smk_enable_audio(
79        object: smk,
80        track: ::std::os::raw::c_uchar,
81        enable: ::std::os::raw::c_uchar,
82    ) -> ::std::os::raw::c_char;
83}
84extern "C" {
85    #[doc = " Retrieve palette"]
86    pub fn smk_get_palette(object: smk) -> *const ::std::os::raw::c_uchar;
87}
88extern "C" {
89    #[doc = " Retrieve video frame, as a buffer of size w*h"]
90    pub fn smk_get_video(object: smk) -> *const ::std::os::raw::c_uchar;
91}
92extern "C" {
93    #[doc = " Retrieve decoded audio chunk, track N"]
94    pub fn smk_get_audio(
95        object: smk,
96        track: ::std::os::raw::c_uchar,
97    ) -> *const ::std::os::raw::c_uchar;
98}
99extern "C" {
100    #[doc = " Get size of currently pointed decoded audio chunk, track N"]
101    pub fn smk_get_audio_size(
102        object: smk,
103        track: ::std::os::raw::c_uchar,
104    ) -> ::std::os::raw::c_ulong;
105}
106extern "C" {
107    #[doc = " rewind to first frame and unpack"]
108    pub fn smk_first(object: smk) -> ::std::os::raw::c_char;
109}
110extern "C" {
111    #[doc = " advance to next frame and unpack"]
112    pub fn smk_next(object: smk) -> ::std::os::raw::c_char;
113}
114extern "C" {
115    #[doc = " seek to first keyframe before/at N in an smk"]
116    pub fn smk_seek_keyframe(object: smk, frame: ::std::os::raw::c_ulong)
117        -> ::std::os::raw::c_char;
118}