Avplayer Tizen controller”翻译成中文是“Tizen控制器”,以下给出Tizen平台上使用Avplayer的控制代码示例:
#include
#include
#include
#include
#include
#include
// 初始化和卸载控制器
int init_avplayer_controller(void)
{
int error_code = AVC_ERROR_NONE;
error_code = avsys_controller_initialize();
if (error_code != AVC_ERROR_NONE) {
dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] failed to initialize avsys_controller. error code(%d) error message(%s)",
__func__, __LINE__, error_code, avsys_controller_make_error_message(error_code));
}
return error_code;
}
int unload_avplayer_controller(void)
{
int error_code = AVC_ERROR_NONE;
error_code = avsys_controller_deinitialize();
if (error_code != AVC_ERROR_NONE) {
dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] failed to deinitialize avsys_controller. error code(%d) error message(%s)",
__func__, __LINE__, error_code, avsys_controller_make_error_message(error_code));
}
return error_code;
}
//控制器事件回调函数
static void _avps_play_state_changed_cb(avsys_controller_h controller, avsys_controller_event_type_e event_type, avsys_controller_play_state_e play_state, void *user_data)
{
switch (play_state) {
case AVSYS_CONTROLLER_PLAY_STATE_STOPPED:
dlog_print(DLOG_INFO, LOG_TAG, "Playback stopped");
break;
case AVSYS_CONTROLLER_PLAY_STATE_PLAYING:
dlog_print(DLOG_INFO, LOG_TAG, "Playback started");
break;
case AVSYS_CONTROLLER_PLAY_STATE_PAUSED:
dlog_print(DLOG_INFO, LOG_TAG, "Playback paused");
break;
default:
dlog_print(DLOG_INFO, LOG_TAG, "Unknown playback state: %d", play_state);
break;
}
}
//