libmpv
Posted: Thu Dec 07, 2023 12:53 am
Hi all,
i'm new to purebasic and i would use libmpv. i'm currently using libmpv in another language (very similar to vb). I saw there is a wrapper for libvlc. libmpv is a similar c library but much more simple to wrap.
Can someone of you trasnlate this vb libmpv include to purebasic?
i'm new to purebasic and i would use libmpv. i'm currently using libmpv in another language (very similar to vb). I saw there is a wrapper for libvlc. libmpv is a similar c library but much more simple to wrap.
Can someone of you trasnlate this vb libmpv include to purebasic?
Code: Select all
Global Enum MPV_ERROR_SUCCESS= 0, MPV_ERROR_EVENT_QUEUE_FULL= -1, _
MPV_ERROR_NOMEM = -2, MPV_ERROR_UNINITIALIZED= -3, MPV_ERROR_INVALID_PARAMETER = -4, _
MPV_ERROR_OPTION_NOT_FOUND = -5, MPV_ERROR_OPTION_FORMAT= -6, _
MPV_ERROR_OPTION_ERROR = -7, MPV_ERROR_PROPERTY_NOT_FOUND = -8, _
MPV_ERROR_PROPERTY_FORMAT = -9, MPV_ERROR_PROPERTY_UNAVAILABLE = -10, _
MPV_ERROR_PROPERTY_ERROR = -11, MPV_ERROR_COMMAND = -12, _
MPV_ERROR_LOADING_FAILED = -13, MPV_ERROR_AO_INIT_FAILED = -14, _
MPV_ERROR_VO_INIT_FAILED = -15, MPV_ERROR_NOTHING_TO_PLAY = -16, _
MPV_ERROR_UNKNOWN_FORMAT = -17, MPV_ERROR_UNSUPPORTED = -18, _
MPV_ERROR_NOT_IMPLEMENTED = -19, MPV_ERROR_GENERIC = -20
Global Enum MPV_FORMAT_NONE = 0, MPV_FORMAT_STRING, MPV_FORMAT_OSD_STRING, _
MPV_FORMAT_FLAG, MPV_FORMAT_INT64, MPV_FORMAT_DOUBLE, MPV_FORMAT_NODE, _
MPV_FORMAT_NODE_ARRAY, MPV_FORMAT_NODE_MAP, MPV_FORMAT_BYTE_ARRAY
Global Enum MPV_EVENT_NONE= 0, MPV_EVENT_SHUTDOWN, MPV_EVENT_LOG_MESSAGE, _
MPV_EVENT_GET_PROPERTY_REPLY, MPV_EVENT_SET_PROPERTY_REPLY, _
MPV_EVENT_COMMAND_REPLY, MPV_EVENT_START_FILE, MPV_EVENT_END_FILE, _
MPV_EVENT_FILE_LOADED, MPV_EVENT_IDLE = 11, MPV_EVENT_TICK= 14, _
MPV_EVENT_CLIENT_MESSAGE = 16, MPV_EVENT_VIDEO_RECONFIG, _
MPV_EVENT_AUDIO_RECONFIG, MPV_EVENT_SEEK = 20, MPV_EVENT_PLAYBACK_RESTART, _
MPV_EVENT_PROPERTY_CHANGE, MPV_EVENT_QUEUE_OVERFLOW = 24, _
MPV_EVENT_HOOK
Global Enum MPV_LOG_LEVEL_NONE = 0, _
MPV_LOG_LEVEL_FATAL = 10, ' /// "fatal" - critical/aborting errors _
MPV_LOG_LEVEL_ERROR = 20, ' /// "error" - simple errors _
MPV_LOG_LEVEL_WARN = 30, ' /// "warn" - possible problems _
MPV_LOG_LEVEL_INFO = 40, ' /// "info" - informational message _
MPV_LOG_LEVEL_V = 50, ' /// "v" - noisy informational message _
MPV_LOG_LEVEL_DEBUG = 60, ' /// "debug" - very noisy technical information _
MPV_LOG_LEVEL_TRACE = 70 ', /// "trace" - extremely noisy
Global Enum MPV_END_FILE_REASON_EOF = 0, MPV_END_FILE_REASON_STOP = 2, MPV_END_FILE_REASON_QUIT = 3, _
MPV_END_FILE_REASON_ERROR = 4, MPV_END_FILE_REASON_REDIRECT = 5
Type mpv_event_end_file
reason As Long
errore As Int
playlist_entry_id As Large
playlist_insert_id As Large
playlist_insert_num_entries As Int
EndType
Type mpv_event_log_message
prefix As Long
level As Long
txt As Long
log_level As Long
EndType
Type mpv_event
event_id As Int
errore As Int
reply_userdata As Large
dati As Long
EndType
Type mpv_event_property
nome As Long
mpv_format As Int
dati As Long
EndType
Declare LIB "libmpv-2.dll"
Declare Function mpv_client_api_version CDecl () As Int
Declare Function mpv_error_string CDecl (ByVal myerror As Int) As String
Declare Sub mpv_free CDecl (ByVal p_instance As Int)
Declare Function mpv_client_name CDecl (ByVal mpv_handle As Int) As String
Declare Function mpv_client_id CDecl (ByVal mpv_handle As Int) As Large
Declare Function mpv_create CDecl () As Int
Declare Function mpv_initialize CDecl (ByVal mpv_handle As Int) As Int
Declare Sub mpv_destroy CDecl (ByVal mpv_handle As Int)
Declare Sub mpv_terminate_destroy CDecl (ByVal mpv_handle As Int)
Declare Function mpv_create_client CDecl (ByVal mpv_handle As Int, ByVal cname As String) As Int
Declare Function mpv_set_option_string CDecl (ByVal mpv_handle As Int, ByVal name As String, ByVal mpv_data As String) As Int
Declare Function mpv_set_property CDecl (ByVal mpv_handle As Int, ByVal name As String, ByVal mpv_format As Int, ByVal mpv_data As Int) As Int
Declare Function mpv_set_property_string CDecl (ByVal mpv_handle As Int, ByVal name As String, ByVal mpv_data As String) As Int
Declare Function mpv_get_property CDecl (ByVal mpv_handle As Int, ByVal name As String, ByVal mpv_format As Int, ByVal mpv_data As Int) As Int
Declare Function mpv_get_property_string CDecl (ByVal mpv_handle As Int, ByVal name As String, ByVal mpv_data As String) As String
Declare Function mpv_command CDecl (ByVal mpv_handle As Int, ByVal args As Int) As Int
Declare Sub mpv_set_wakeup_callback CDecl (ByVal mpv_handle As Int, ByVal cb As Int, ByVal data As Int)
Declare Function mpv_wait_event CDecl (ByVal mpv_handle As Int, ByVal timeout As Double) As Int
Declare Function mpv_event_name CDecl (ByVal mpv_event_id As Int) As String
Declare Function mpv_observe_property CDecl (ByVal mpv_handle As Int, ByVal reply_userdata As Large, ByVal name As String, ByVal mpv_format As Int) As Int
Declare Function mpv_unobserve_property CDecl (ByVal mpv_handle As Int, ByVal registered_reply_userdata As Large) As Int
Declare Function mpv_request_log_messages CDecl (ByVal mpv_handle As Int, ByVal min_level As String) As Int