19 视频控件-物联型

什么是视频控件?

Video01

我司视频AV控件有两种功能,分别为播放视频文件以及AV输入。视频控件播放视频功能常用于开机创意效果,或者播放产品的操作指南、公共场合的广告示意等

本章节主要介绍以下3点

  1. 播放屏内的视频
  2. 播放U盘/SD卡的视频
  3. LUA API介绍

适用范围:物联型

视频格式:

  • MP4文件
  • H264编码
  • 音频流为MP3或AAC格式
  • 视频最大分辨率<1280*768
  • 最大帧数<30ps
  • 最大码率<1400

相关例程下载链接:

视频的转换操作流程可参考此教程:视频文件转换说明

19.1 视频控件属性介绍

视频控件属性介绍,如下图所示

Video02

用途

播放视频以及AV输入,AV输入需要应用的硬件型号支持

视频文件

加载到控件的视频命名为字母(a-z)、数字(0-9)和下划线(_)组合,不支持其他字符

音频流

启用和禁止,禁止后播放视频没有声音

自动播放

“是”或“否”,当选择是,切换到该页面就自动播放视频文件

播放结束时

视频播放结束时,执行的动作。可以选择”不处理“、“发送通知”以及“切换到下一页”

Video03

重复次数

重复播放的次数,0表示不断重复

19.2 播放屏内视频文件

【播放屏内视频文件】画面,介绍相关播放指令

画面配置

在【播放屏内视频文件】画面的“背景图片”导入相应的美工图片画面中添加1个视频控件(控件ID:1)和3个按钮控件用于设置视频播放状态,如下所示

Video04

属性配置

视频AV控件

设置视频控件用途为“播放视频”,添加视频文件,“音频流”为启用,“自动播放”为是,“播放结束时”为发送通知,“重复次数”为0,如下所示

Video02

按钮控件ID2-播放

添加按钮控件ID2“按下时的图片”,并且勾选裁剪;由于切换到该画面就自动播放视频,所以设置按钮控件ID2的初始状态为“按下”;按钮操作风格为“置位”,如下所示

Video10

设置“播放按钮”、“暂停/恢复按钮”以及“停止按钮”为互斥,操作如下所示

在指令助手界面,左侧导航栏选择【视频AV控件】,设置画面ID0中的控件ID2播放循环视频,填写在对应按钮的指令助手中,如下所示

Video5

如上所示:指令格式为EE B1 70 00 00 00 01 00 FF FC FF FF。该指令主要用于控制视频播放控件的播放,可以设置相应的视频播放循环次数,让视频按照相应的设置进行播放。(注:视频播放控件必须先设置视频路径,如控件已加载视频文件,只需要发送播放视频指令。反正,需要先发送设置播放视频的路径,在发送播放指令)

帧头 组态指令 功能码-视频播放 画面ID 控件ID 播放次数 帧尾
EE B1 70 00 00 00 01 00 FF FC FF FF
按钮控件ID3-暂停/恢复

按钮控件ID3的属性配置和按钮控件ID2配置类似,设置按钮控件ID3的初始状态为“弹起”,填写在对应按钮的指令助手中,如下所示

Video07

如上所示:指令格式为EE B1 72 00 00 00 01 FF FC FF FF。该指令主要用于控制视频“暂停/恢复”。指令含义如下所示

帧头 组态指令 功能码-视频暂停/恢复 画面ID 控件ID 帧尾
EE B1 72 00 00 00 01 FF FC FF FF
按钮控件ID4-停止

按钮控件ID4的属性配置和按钮控件ID2配置类似,设置按钮控件ID4的初始状态为“弹起”,填写在对应按钮的指令助手中,如下所示

Video6

如上所示:指令格式为EE B1 71 00 00 00 01 FF FC FF FF。该指令主要用于控制视频“停止”。指令含义如下所示

帧头 组态指令 功能码-视频停止 画面ID 控件ID 帧尾
EE B1 71 00 00 00 01 FF FC FF FF

19.3 播放U盘/SD卡中的视频

播放外部U盘/SD卡的视频步骤和播放屏内部视频步骤基本相同,不同的是播放外部U盘/SD中视频需要先发送指令设置视频路径,操作过程如下:

  1. 工程画面添加视频播放控件(参照19.2章节)
  2. 对内指令设置视频路径
  3. 发送指令控制视频播放、暂停/恢复、停止(参照19.2章节)

对内指令设置视频路径

设置SD卡路径

设置播放SD卡视频格式,如播放SD卡的0001.mp4文件,其中SD的盘符为SD:/,路径即是‘SD:/0001.mp4’

Video11

如下所示:EE B1 74 00 00 00 01 73 64 3A 2F 30 30 30 31 2E 6D 70 34 FF FC FF FF 。该指令主要用于控制视频“停止”。指令含义如下所示

帧头 组态指令 功能码-设置视频播放路径 画面ID 控件ID 路径(SD:/0001.mp4) 帧尾
EE B1 74 00 00 00 01 73 64 3A 2F 30 30 30 31 2E 6D 70 34 FF FC FF FF
设置U盘路径

设置播放U盘视频格式,如播放U盘的0001.mp4文件,其中U盘的盘符为U:/,路径即是‘U:/0001.mp4’

Video12

如下所示:EE B1 74 00 00 00 01 75 73 62 3A 2F 74 65 73 74 2E 6D 70 34 FF FC FF FF 。该指令主要用于控制视频“停止”。指令含义如下所示

帧头 组态指令 功能码-设置视频播放路径 画面ID 控件ID 路径(SD:/0001.mp4) 帧尾
EE B1 74 00 00 00 01 75 73 62 3A 2F 74 65 73 74 2E 6D 70 34 FF FC FF FF

19.4 LUA API介绍

play_video(pathname,repeat)

播放视频当前页面的视频控件,适用于物联型

  • pathname为视频路径
  • repeat为重复次数,0为无限制次,
播放屏内视频

如播放屏内Videos目录下的”1.mp4”视频,屏内盘符为“a:/“,如下所示

--用户通过触摸修改控件后,执行此回调函数
--点击按钮控件,修改文本控件、修改滑动条都会触发此事件
function on_control_notify(screen,control,value)
    if screen == sc_main2
    then
        if control == 7 and value == 0
        then
            play_ video(‘a:/Videos/1.mp4’,0)
        end
    end
end
播放U盘/SD卡视频

如播放U盘/SD根目录下的”test.mp4”视频,建议创建全局变量,在U盘/SD卡触发回调中获取盘符,如下所示

local sd_dir  = ''
local usb_dir = ''
--用户通过触摸修改控件后,执行此回调函数
--点击按钮控件,修改文本控件、修改滑动条都会触发此事件
function on_control_notify(screen,control,value)
    if screen == sc_main2
    then
        -- 假设视频控件ID为1,视频控件开启通知后,播放完毕会触发控件回调函数
        if control == 1 and value == 0   
        then
              --do user logic 

        elseif control == 2 and value == 0      -- 按钮按下播发SD卡视频
        then
            play_video(sd_dir..'/'..'test.mp4', 0, 0, 480, 272)
        elseif control == 3 and value == 0  -- 按钮按下播发U盘视频
        then
             play_video(usb_dir..'/'..'test.mp4', 0, 0, 480, 272)
        end
    end
end
-- 系统回调函数,插入SD卡自动回调
function on_sd_inserted(dir)
    sd_dir = dir 
end

-- 系统回调函数,插入SD卡自动回调
function on_sd_inserted(dir)
    usb_dir = dir 
end

更多关于LUA脚本的文件的遍历、视频控制、循环播放等,可参考《播放SD卡视频文件》(点击跳转)

stop_video()

停止视频播放

Copyright ©Dacai all right reserved,powered by Gitbook该文件修订时间: 2023-03-30 10:34:07

results matching ""

    No results matching ""