⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vid_ilm.c

📁 最新MTK手机软件源码
💻 C
📖 第 1 页 / 共 4 页
字号:
    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_CLOSE_FILE_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_open_req
 * DESCRIPTION
 *  This function is to send video open request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 *  data            [?]         
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_open_req(module_type src_mod_id, void *data)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_open_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;
    vid_open_struct *open = (vid_open_struct*) data;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_open_req_struct*) construct_local_para(sizeof(media_vid_open_req_struct), TD_CTRL);

    msg_p->media_mode = open->media_mode;
    msg_p->media_type = open->media_type;
    msg_p->data = open->data;
    msg_p->data_size = open->data_size;
    msg_p->seq_num = open->seq_num;
    msg_p->max_width = open->max_width;
    msg_p->max_height = open->max_height;
    msg_p->blocking = open->blocking;
    msg_p->play_audio = open->play_audio;

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_OPEN_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_close_req
 * DESCRIPTION
 *  This function is to send video close request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_close_req(module_type src_mod_id)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_close_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_close_req_struct*) construct_local_para(sizeof(media_vid_close_req_struct), TD_CTRL);

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_CLOSE_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_play_req
 * DESCRIPTION
 *  This function is to send video play request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 *  data            [?]         
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_play_req(module_type src_mod_id, void *data)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_play_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_play_req_struct*) construct_local_para(sizeof(media_vid_play_req_struct), TD_CTRL);

    kal_mem_cpy(
        ((kal_uint8*) msg_p) + sizeof(local_para_struct),
        ((kal_uint8*) data) + sizeof(local_para_struct),
        sizeof(media_vid_play_req_struct) - sizeof(local_para_struct));

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_PLAY_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_seek_req
 * DESCRIPTION
 *  This function is to send video seek request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 *  data            [?]         
 *  kal_uint32 position(?)
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_seek_req(module_type src_mod_id, void *data)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_seek_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;
    vid_seek_struct *seek = (vid_seek_struct*) data;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_seek_req_struct*) construct_local_para(sizeof(media_vid_seek_req_struct), TD_CTRL);

    msg_p->get_frame = seek->get_frame;
    msg_p->frame_num = seek->frame_num;
    msg_p->time = seek->time;
    msg_p->display_width = seek->display_width;
    msg_p->display_height = seek->display_height;
    msg_p->display_offset_x = seek->display_offset_x;
    msg_p->display_offset_y = seek->display_offset_y;
    msg_p->image_buffer_p = seek->image_buffer_p;
    msg_p->image_buffer_size = seek->image_buffer_size;
    msg_p->blocking = seek->blocking;
    msg_p->seq_num = seek->seq_num;
#if MT6228_SERIES
    msg_p->image_pitch_mode = seek->image_pitch_mode;
    msg_p->image_data_format = seek->image_data_format;
    msg_p->image_pitch_bytes = seek->image_pitch_bytes;
    /* TV Setting */
    msg_p->tv_output = seek->tv_output;
    msg_p->tv_output_buffer1_address = seek->tv_output_buffer1_address;
    msg_p->tv_output_buffer2_address = seek->tv_output_buffer2_address;
    msg_p->tv_output_buffer_size = seek->tv_output_buffer_size;
#endif /* MT6228_SERIES */ 

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_SEEK_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_pause_req
 * DESCRIPTION
 *  This function is to send video pause request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_pause_req(module_type src_mod_id)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_pause_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_pause_req_struct*) construct_local_para(sizeof(media_vid_pause_req_struct), TD_CTRL);

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_PAUSE_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_resume_req
 * DESCRIPTION
 *  This function is to send video resume request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_resume_req(module_type src_mod_id)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_resume_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_resume_req_struct*) construct_local_para(sizeof(media_vid_resume_req_struct), TD_CTRL);

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_RESUME_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_snapshot_req
 * DESCRIPTION
 *  This function is to send video snapshot request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 *  data            [?]         
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_snapshot_req(module_type src_mod_id, void *data)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_snapshot_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;
    vid_snapshot_struct *snapshot = (vid_snapshot_struct*) data;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_snapshot_req_struct*) construct_local_para(sizeof(media_vid_snapshot_req_struct), TD_CTRL);

    msg_p->image_buffer_p = snapshot->image_buffer_p;
    msg_p->image_buffer_size = snapshot->image_buffer_size;

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_SNAPSHOT_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_get_iframe_req
 * DESCRIPTION
 *  This function is to send video get i-frame request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 *  data            [?]         
 * RETURNS
 *  void
 *****************************************************************************/
void vid_send_get_iframe_req(module_type src_mod_id, void *data)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    media_vid_get_iframe_req_struct *msg_p = NULL;
    ilm_struct *ilm_ptr = NULL;
    vid_get_iframe_struct *iframe = (vid_get_iframe_struct*) data;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    msg_p = (media_vid_get_iframe_req_struct*) construct_local_para(sizeof(media_vid_get_iframe_req_struct), TD_CTRL);

    msg_p->media_mode = iframe->media_mode;
    msg_p->media_type = iframe->media_type;
    msg_p->data = iframe->data;

    msg_p->display_width = iframe->display_width;
    msg_p->display_height = iframe->display_height;
    msg_p->image_buffer_p = iframe->image_buffer_p;
    msg_p->image_buffer_size = iframe->image_buffer_size;

    msg_p->frame_num = iframe->frame_num;
    msg_p->seq_num = iframe->seq_num;
    msg_p->blocking = iframe->blocking;

    ilm_ptr = allocate_ilm(src_mod_id);
    ilm_ptr->src_mod_id = src_mod_id;
    ilm_ptr->dest_mod_id = MOD_MED;
    ilm_ptr->sap_id = MED_SAP;

    ilm_ptr->msg_id = (msg_type) MSG_ID_MEDIA_VID_GET_IFRAME_REQ;
    ilm_ptr->local_para_ptr = (local_para_struct*) msg_p;
    ilm_ptr->peer_buff_ptr = NULL;

    msg_send_ext_queue(ilm_ptr);

}


/*****************************************************************************
 * FUNCTION
 *  vid_send_set_display_req
 * DESCRIPTION
 *  This function is to send video set display request to media task
 * PARAMETERS
 *  src_mod_id      [IN]        
 *  device          [IN]        
 * RETURNS
 *  void

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -