#endif
#include <vlc_common.h>
+#include <vlc_vout.h>
#include "control.h"
/* */
void vout_control_cmd_Clean(vout_control_cmd_t *cmd)
{
switch (cmd->type) {
- //case VOUT_CONTROL_OSD_MESSAGE:
- case VOUT_CONTROL_OSD_TITLE:
- free(cmd->u.message.string);
- break;
-#if 0
- case VOUT_CONTROL_OSD_TEXT:
- free(cmd->text.string);
- if (cmd->text.style)
- text_style_Delete(cmd->text.style);
+ case VOUT_CONTROL_SUBPICTURE:
+ if (cmd->u.subpicture)
+ subpicture_Delete(cmd->u.subpicture);
break;
- case VOUT_CONTROL_OSD_SUBPICTURE:
- if (cmd->subpicture)
- subpicture_Delete(cmd->subpicture);
+ case VOUT_CONTROL_OSD_TITLE:
+ case VOUT_CONTROL_CHANGE_FILTERS:
+ case VOUT_CONTROL_CHANGE_SUB_FILTERS:
+ free(cmd->u.string);
break;
-#endif
default:
break;
}
cmd.u.boolean = boolean;
vout_control_Push(ctrl, &cmd);
}
+void vout_control_PushInteger(vout_control_t *ctrl, int type, int integer)
+{
+ vout_control_cmd_t cmd;
+
+ vout_control_cmd_Init(&cmd, type);
+ cmd.u.integer = integer;
+ vout_control_Push(ctrl, &cmd);
+}
void vout_control_PushTime(vout_control_t *ctrl, int type, mtime_t time)
{
vout_control_cmd_t cmd;
cmd.u.pair.b = b;
vout_control_Push(ctrl, &cmd);
}
+void vout_control_PushString(vout_control_t *ctrl, int type, const char *string)
+{
+ vout_control_cmd_t cmd;
+
+ vout_control_cmd_Init(&cmd, type);
+ cmd.u.string = strdup(string);
+ vout_control_Push(ctrl, &cmd);
+}
int vout_control_Pop(vout_control_t *ctrl, vout_control_cmd_t *cmd,
mtime_t deadline, mtime_t timeout)