fix and simplify enumeration
This commit is contained in:
102
src/main.cpp
102
src/main.cpp
@@ -11,84 +11,44 @@ PYBIND11_MODULE(NDIlib, m) {
|
||||
m.doc() = "NDI Plugin";
|
||||
|
||||
// Processing.NDI.structs
|
||||
enum FrameType {
|
||||
FRAME_TYPE_NONE = NDIlib_frame_type_none,
|
||||
FRAME_TYPE_VIDEO = NDIlib_frame_type_video,
|
||||
FRAME_TYPE_AUDIO = NDIlib_frame_type_audio,
|
||||
FRAME_TYPE_METADATA = NDIlib_frame_type_metadata,
|
||||
FRAME_TYPE_ERROR = NDIlib_frame_type_error,
|
||||
FRANE_TYPE_STATUS_CHANGE = NDIlib_frame_type_status_change,
|
||||
FRAME_TYPE_MAX = NDIlib_frame_type_max
|
||||
};
|
||||
|
||||
py::enum_<FrameType>(m, "FrameType", py::arithmetic())
|
||||
.value("FRAME_TYPE_NONE", FrameType::FRAME_TYPE_NONE)
|
||||
.value("FRAME_TYPE_VIDEO", FrameType::FRAME_TYPE_VIDEO)
|
||||
.value("FRAME_TYPE_AUDIO", FrameType::FRAME_TYPE_AUDIO)
|
||||
.value("FRAME_TYPE_METADATA", FrameType::FRAME_TYPE_METADATA)
|
||||
.value("FRAME_TYPE_ERROR", FrameType::FRAME_TYPE_ERROR)
|
||||
.value("FRANE_TYPE_STATUS_CHANGE", FrameType::FRANE_TYPE_STATUS_CHANGE)
|
||||
.value("FRAME_TYPE_MAX", FrameType::FRAME_TYPE_MAX)
|
||||
py::enum_<NDIlib_frame_type_e>(m, "FrameType", py::arithmetic())
|
||||
.value("FRAME_TYPE_NONE", NDIlib_frame_type_none)
|
||||
.value("FRAME_TYPE_VIDEO", NDIlib_frame_type_video)
|
||||
.value("FRAME_TYPE_AUDIO", NDIlib_frame_type_audio)
|
||||
.value("FRAME_TYPE_METADATA", NDIlib_frame_type_metadata)
|
||||
.value("FRAME_TYPE_ERROR", NDIlib_frame_type_error)
|
||||
.value("FRANE_TYPE_STATUS_CHANGE", NDIlib_frame_type_status_change)
|
||||
.value("FRAME_TYPE_MAX", NDIlib_frame_type_max)
|
||||
.export_values();
|
||||
|
||||
enum FourCCVideoType {
|
||||
FOURCC_VIDEO_TYPE_UYVY = NDIlib_FourCC_video_type_UYVY,
|
||||
FOURCC_VIDEO_TYPE_UYVA = NDIlib_FourCC_video_type_UYVA,
|
||||
FOURCC_VIDEO_TYPE_P216 = NDIlib_FourCC_video_type_P216,
|
||||
FOURCC_VIDEO_TYPE_PA16 = NDIlib_FourCC_video_type_PA16,
|
||||
FOURCC_VIDEO_TYPE_YV12 = NDIlib_FourCC_video_type_YV12,
|
||||
FOURCC_VIDEO_TYPE_I420 = NDIlib_FourCC_video_type_I420,
|
||||
FOURCC_VIDEO_TYPE_NV12 = NDIlib_FourCC_video_type_NV12,
|
||||
FOURCC_VIDEO_TYPE_BGRA = NDIlib_FourCC_video_type_BGRA,
|
||||
FOURCC_VIDEO_TYPE_BGRX = NDIlib_FourCC_video_type_BGRX,
|
||||
FOURCC_VIDEO_TYPE_RGBA = NDIlib_FourCC_video_type_RGBA,
|
||||
FOURCC_VIDEO_TYPE_RGBX = NDIlib_FourCC_video_type_RGBX,
|
||||
FOURCC_VIDEO_TYPE_MAX = NDIlib_FourCC_video_type_max,
|
||||
};
|
||||
|
||||
py::enum_<FourCCVideoType>(m, "FourCCVideoType", py::arithmetic())
|
||||
.value("FOURCC_VIDEO_TYPE_UYVY", FourCCVideoType::FOURCC_VIDEO_TYPE_UYVY)
|
||||
.value("FOURCC_VIDEO_TYPE_UYVA", FourCCVideoType::FOURCC_VIDEO_TYPE_UYVA)
|
||||
.value("FOURCC_VIDEO_TYPE_P216", FourCCVideoType::FOURCC_VIDEO_TYPE_P216)
|
||||
.value("FOURCC_VIDEO_TYPE_PA16", FourCCVideoType::FOURCC_VIDEO_TYPE_PA16)
|
||||
.value("FOURCC_VIDEO_TYPE_YV12", FourCCVideoType::FOURCC_VIDEO_TYPE_YV12)
|
||||
.value("FOURCC_VIDEO_TYPE_I420", FourCCVideoType::FOURCC_VIDEO_TYPE_I420)
|
||||
.value("FOURCC_VIDEO_TYPE_NV12", FourCCVideoType::FOURCC_VIDEO_TYPE_NV12)
|
||||
.value("FOURCC_VIDEO_TYPE_BGRA", FourCCVideoType::FOURCC_VIDEO_TYPE_BGRA)
|
||||
.value("FOURCC_VIDEO_TYPE_BGRX", FourCCVideoType::FOURCC_VIDEO_TYPE_BGRX)
|
||||
.value("FOURCC_VIDEO_TYPE_RGBA", FourCCVideoType::FOURCC_VIDEO_TYPE_RGBA)
|
||||
.value("FOURCC_VIDEO_TYPE_RGBX", FourCCVideoType::FOURCC_VIDEO_TYPE_RGBX)
|
||||
.value("FOURCC_VIDEO_TYPE_MAX", FourCCVideoType::FOURCC_VIDEO_TYPE_MAX)
|
||||
py::enum_<NDIlib_FourCC_video_type_e>(m, "FourCCVideoType", py::arithmetic())
|
||||
.value("FOURCC_VIDEO_TYPE_UYVY", NDIlib_FourCC_video_type_UYVY)
|
||||
.value("FOURCC_VIDEO_TYPE_UYVA", NDIlib_FourCC_video_type_UYVA)
|
||||
.value("FOURCC_VIDEO_TYPE_P216", NDIlib_FourCC_video_type_P216)
|
||||
.value("FOURCC_VIDEO_TYPE_PA16", NDIlib_FourCC_video_type_PA16)
|
||||
.value("FOURCC_VIDEO_TYPE_YV12", NDIlib_FourCC_video_type_YV12)
|
||||
.value("FOURCC_VIDEO_TYPE_I420", NDIlib_FourCC_video_type_I420)
|
||||
.value("FOURCC_VIDEO_TYPE_NV12", NDIlib_FourCC_video_type_NV12)
|
||||
.value("FOURCC_VIDEO_TYPE_BGRA", NDIlib_FourCC_video_type_BGRA)
|
||||
.value("FOURCC_VIDEO_TYPE_BGRX", NDIlib_FourCC_video_type_BGRX)
|
||||
.value("FOURCC_VIDEO_TYPE_RGBA", NDIlib_FourCC_video_type_RGBA)
|
||||
.value("FOURCC_VIDEO_TYPE_RGBX", NDIlib_FourCC_video_type_RGBX)
|
||||
.value("FOURCC_VIDEO_TYPE_MAX", NDIlib_FourCC_video_type_max)
|
||||
.export_values();
|
||||
|
||||
enum FourCCAudioType {
|
||||
FOURCC_AUDIO_TYPE_FLTP = NDIlib_FourCC_audio_type_FLTP,
|
||||
FOURCC_AUDIO_TYPE_MAX = NDIlib_FourCC_audio_type_max,
|
||||
};
|
||||
|
||||
py::enum_<FourCCAudioType>(m, "FourCCAudioType", py::arithmetic())
|
||||
.value("FOURCC_AUDIO_TYPE_FLTP", FourCCAudioType::FOURCC_AUDIO_TYPE_FLTP)
|
||||
.value("FOURCC_AUDIO_TYPE_MAX", FourCCAudioType::FOURCC_AUDIO_TYPE_MAX)
|
||||
py::enum_<NDIlib_FourCC_audio_type_e>(m, "FourCCAudioType", py::arithmetic())
|
||||
.value("FOURCC_AUDIO_TYPE_FLTP", NDIlib_FourCC_audio_type_FLTP)
|
||||
.value("FOURCC_AUDIO_TYPE_MAX", NDIlib_FourCC_audio_type_max)
|
||||
.export_values();
|
||||
|
||||
enum FrameFormatType {
|
||||
FRAME_FORMAT_TYPE_PROGRESSIVE = NDIlib_frame_format_type_progressive,
|
||||
FRAME_FORMAT_TYPE_INTERLEAVED = NDIlib_frame_format_type_interleaved,
|
||||
FRAME_FORMAT_TYPE_FIELD_0 = NDIlib_frame_format_type_field_0,
|
||||
FRAME_FORMAT_TYPE_FIELD_1 = NDIlib_frame_format_type_field_1,
|
||||
FRAME_FORMAT_TYPE_MAX = NDIlib_frame_format_type_max
|
||||
};
|
||||
|
||||
py::enum_<FrameFormatType>(m, "FrameFormatType", py::arithmetic())
|
||||
py::enum_<NDIlib_frame_format_type_e>(m, "FrameFormatType", py::arithmetic())
|
||||
.value("FRAME_FORMAT_TYPE_PROGRESSIVE",
|
||||
FrameFormatType::FRAME_FORMAT_TYPE_PROGRESSIVE)
|
||||
NDIlib_frame_format_type_progressive)
|
||||
.value("FRAME_FORMAT_TYPE_INTERLEAVED",
|
||||
FrameFormatType::FRAME_FORMAT_TYPE_INTERLEAVED)
|
||||
.value("FRAME_FORMAT_TYPE_FIELD_0",
|
||||
FrameFormatType::FRAME_FORMAT_TYPE_FIELD_0)
|
||||
.value("FRAME_FORMAT_TYPE_FIELD_1",
|
||||
FrameFormatType::FRAME_FORMAT_TYPE_FIELD_1)
|
||||
.value("FRAME_FORMAT_TYPE_MAX", FrameFormatType::FRAME_FORMAT_TYPE_MAX)
|
||||
NDIlib_frame_format_type_interleaved)
|
||||
.value("FRAME_FORMAT_TYPE_FIELD_0", NDIlib_frame_format_type_field_0)
|
||||
.value("FRAME_FORMAT_TYPE_FIELD_1", NDIlib_frame_format_type_field_1)
|
||||
.value("FRAME_FORMAT_TYPE_MAX", NDIlib_frame_format_type_max)
|
||||
.export_values();
|
||||
|
||||
m.attr("SEND_TIMECODE_SYNTHESIZE") = py::int_(INT64_MAX);
|
||||
@@ -661,7 +621,7 @@ PYBIND11_MODULE(NDIlib, m) {
|
||||
|
||||
m.def("framesync_capture_video", &NDIlib_framesync_capture_video,
|
||||
py::arg("instance"), py::arg("video_data"),
|
||||
py::arg("field_type") = FRAME_FORMAT_TYPE_PROGRESSIVE);
|
||||
py::arg("field_type") = NDIlib_frame_format_type_progressive);
|
||||
|
||||
m.def("framesync_free_video", &NDIlib_framesync_free_video,
|
||||
py::arg("instance"), py::arg("video_data"));
|
||||
|
||||
Reference in New Issue
Block a user