{
  "display": {
    "fullscreen": true,
    "window_title": "Hologram Player - Cat",
    "rotation": 0,
    "flip_horizontal": true,
    "flip_vertical": true,
    "offset_x": 0,
    "offset_y": 0,
    "prevent_screen_lock": true,
    "render_width": 1280,
    "render_height": 800,
    "output_width": null,
    "output_height": null,
    "scale_mode": "stretch",
    "allow_upscale": true,
    "perspective_correction": {
      "enabled": false,
      "points": [
        [0, 0],
        [1280, 0],
        [1280, 800],
        [0, 800]
      ]
    },
    "chroma_key": {
      "enabled": false,
      "hsv_min": [
        0,
        0,
        200
      ],
      "hsv_max": [
        180,
        30,
        255
      ],
      "invert": false,
      "feather": 3
    },
    "brightness_adjust": {
      "enabled": true,
      "subject_boost": 1.5,
      "background_suppress": 0.3,
      "threshold": 30
    }
  },
  "playlist": [
    {
      "id": "anim_0",
      "path": "../../宠物嵌入式开发视频3/1.动画0.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_1",
      "path": "../../宠物嵌入式开发视频3/2.趴着休息/动画1.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_2",
      "path": "../../宠物嵌入式开发视频3/2.趴着休息/动画2.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_3",
      "path": "../../宠物嵌入式开发视频3/2.趴着休息/动画3.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_4",
      "path": "../../宠物嵌入式开发视频3/3.犯困眯眼/动画4.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_5",
      "path": "../../宠物嵌入式开发视频3/3.犯困眯眼/动画5.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_6",
      "path": "../../宠物嵌入式开发视频3/3.犯困眯眼/动画6.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_7",
      "path": "../../宠物嵌入式开发视频3/4.趴下睡觉/动画7.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_8",
      "path": "../../宠物嵌入式开发视频3/4.趴下睡觉/动画8.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_9",
      "path": "../../宠物嵌入式开发视频3/4.趴下睡觉/动画9.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_10",
      "path": "../../宠物嵌入式开发视频3/5.猫舔爪子 动画10.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_11",
      "path": "../../宠物嵌入式开发视频3/6.口渴动画/动画11.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_12",
      "path": "../../宠物嵌入式开发视频3/6.口渴动画/动画12.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_13",
      "path": "../../宠物嵌入式开发视频3/6.口渴动画/动画13.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_14",
      "path": "../../宠物嵌入式开发视频3/7.被叫名字1/动画14.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_15",
      "path": "../../宠物嵌入式开发视频3/7.被叫名字1/动画15.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_16",
      "path": "../../宠物嵌入式开发视频3/7.被叫名字1/动画16.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_17",
      "path": "../../宠物嵌入式开发视频3/8.握手/动画17.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_18",
      "path": "../../宠物嵌入式开发视频3/9.喂食动画/动画18.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_19",
      "path": "../../宠物嵌入式开发视频3/10.玩逗猫棒/动画19.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    },
    {
      "id": "anim_20",
      "path": "../../宠物嵌入式开发视频3/11.摸猫头/动画22.mp4",
      "duration": null,
      "loop_count": 1,
      "random_loop_range": null
    }
  ],
  "transition": {
    "enabled": true,
    "type": "fade",
    "duration": 0.5
  },
  "playback": {
    "loop_playlist": true,
    "auto_start": true
  },
  "scenes": {
    "rest": [],
    "active": [],
    "sleep": [],
    "interact": [],
    "state_machine": {
      "initial_state": "default",
      "states": {
        "rest_lying": {
          "name": "趴着休息",
          "mode": "free_mode",
          "sequence": [
            {
              "video_id": "anim_1",
              "loop_count": 1,
              "random_loop_range": null
            },
            {
              "video_id": "anim_2",
              "loop_count": null,
              "random_loop_range": [
                2,
                15
              ]
            },
            {
              "video_id": "anim_3",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [
            {
              "trigger": {
                "voice": {
                  "keyword": "name"
                }
              },
              "target_state": "called_name",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button1"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "握手"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button2"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "吃饭"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button3"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "逗猫棒"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "sensor": {
                  "name": "touch"
                }
              },
              "target_state": "pet_head",
              "priority": 10
            }
          ],
          "weight": 1,
          "defer_triggers": true,
          "ignore_triggers": false
        },
        "pet_head": {
          "name": "摸猫头",
          "mode": "interactive_mode",
          "sequence": [
            {
              "video_id": "anim_20",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [],
          "weight": 1,
          "defer_triggers": false,
          "ignore_triggers": true
        },
        "shake_hand": {
          "name": "握手",
          "mode": "interactive_mode",
          "sequence": [
            {
              "video_id": "anim_17",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [],
          "weight": 1,
          "defer_triggers": false,
          "ignore_triggers": true
        },
        "stand_active": {
          "name": "犯困眯眼",
          "mode": "free_mode",
          "sequence": [
            {
              "video_id": "anim_4",
              "loop_count": 1,
              "random_loop_range": null
            },
            {
              "video_id": "anim_5",
              "loop_count": null,
              "random_loop_range": [
                2,
                10
              ]
            },
            {
              "video_id": "anim_6",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [
            {
              "trigger": {
                "voice": {
                  "keyword": "name"
                }
              },
              "target_state": "called_name",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button1"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "握手"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button2"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "吃饭"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button3"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "逗猫棒"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "sensor": {
                  "name": "touch"
                }
              },
              "target_state": "pet_head",
              "priority": 10
            }
          ],
          "weight": 1,
          "defer_triggers": true,
          "ignore_triggers": false
        },
        "default": {
          "name": "默认状态",
          "mode": "free_mode",
          "sequence": [
            {
              "video_id": "anim_0",
              "loop_count": null,
              "random_loop_range": [
                2,
                15
              ]
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [
            {
              "trigger": {
                "voice": {
                  "keyword": "name"
                }
              },
              "target_state": "called_name",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button1"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "握手"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button2"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "吃饭"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button3"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "逗猫棒"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "sensor": {
                  "name": "touch"
                }
              },
              "target_state": "pet_head",
              "priority": 10
            }
          ],
          "weight": 1,
          "defer_triggers": true,
          "ignore_triggers": false
        },
        "feeding": {
          "name": "喂食",
          "mode": "interactive_mode",
          "sequence": [
            {
              "video_id": "anim_18",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [],
          "weight": 1,
          "defer_triggers": false,
          "ignore_triggers": true
        },
        "thirsty": {
          "name": "蹲姿",
          "mode": "free_mode",
          "sequence": [
            {
              "video_id": "anim_11",
              "loop_count": 1,
              "random_loop_range": null
            },
            {
              "video_id": "anim_12",
              "loop_count": null,
              "random_loop_range": [
                2,
                30
              ]
            },
            {
              "video_id": "anim_13",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            }
          ],
          "transitions": [
            {
              "trigger": {
                "voice": {
                  "keyword": "name"
                }
              },
              "target_state": "called_name",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button1"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "握手"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button2"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "吃饭"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button3"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "逗猫棒"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "sensor": {
                  "name": "touch"
                }
              },
              "target_state": "pet_head",
              "priority": 10
            }
          ],
          "weight": 1,
          "defer_triggers": true,
          "ignore_triggers": false
        },
        "drinking": {
          "name": "逗猫棒",
          "mode": "interactive_mode",
          "sequence": [
            {
              "video_id": "anim_19",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [],
          "weight": 1,
          "defer_triggers": false,
          "ignore_triggers": true
        },
        "sleep": {
          "name": "趴下睡觉",
          "mode": "free_mode",
          "sequence": [
            {
              "video_id": "anim_7",
              "loop_count": 1,
              "random_loop_range": null
            },
            {
              "video_id": "anim_8",
              "loop_count": null,
              "random_loop_range": [
                50,
                300
              ]
            },
            {
              "video_id": "anim_9",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 0.5
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [
            {
              "trigger": {
                "voice": {
                  "keyword": "name"
                }
              },
              "target_state": "called_name",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button1"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "握手"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button2"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "吃饭"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button3"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "逗猫棒"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "sensor": {
                  "name": "touch"
                }
              },
              "target_state": "pet_head",
              "priority": 10
            }
          ],
          "weight": 1,
          "defer_triggers": true,
          "ignore_triggers": false
        },
        "called_name": {
          "name": "被叫名字",
          "mode": "interactive_mode",
          "sequence": [
            {
              "video_id": "anim_14",
              "loop_count": 1,
              "random_loop_range": null
            },
            {
              "video_id": "anim_15",
              "loop_count": 1,
              "random_loop_range": null
            },
            {
              "video_id": "anim_16",
              "loop_count": 1,
              "random_loop_range": null
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "lick_paw",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [],
          "weight": 1,
          "defer_triggers": false,
          "ignore_triggers": true
        },
        "lick_paw": {
          "name": "猫舔爪子",
          "mode": "free_mode",
          "sequence": [
            {
              "video_id": "anim_10",
              "loop_count": null,
              "random_loop_range": [2, 10]
            }
          ],
          "next_state": null,
          "next_states": [
            {
              "state": "default",
              "weight": 1
            },
            {
              "state": "rest_lying",
              "weight": 1
            },
            {
              "state": "stand_active",
              "weight": 1
            },
            {
              "state": "sleep",
              "weight": 1
            },
            {
              "state": "thirsty",
              "weight": 1
            }
          ],
          "transitions": [
            {
              "trigger": {
                "voice": {
                  "keyword": "name"
                }
              },
              "target_state": "called_name",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button1"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "握手"
                }
              },
              "target_state": "shake_hand",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button2"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "吃饭"
                }
              },
              "target_state": "feeding",
              "priority": 10
            },
            {
              "trigger": {
                "button": {
                  "name": "button3"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "voice": {
                  "keyword": "逗猫棒"
                }
              },
              "target_state": "drinking",
              "priority": 10
            },
            {
              "trigger": {
                "sensor": {
                  "name": "touch"
                }
              },
              "target_state": "pet_head",
              "priority": 10
            }
          ],
          "weight": 1,
          "defer_triggers": true,
          "ignore_triggers": false
        }
      }
    }
  },
  "remote_control": {
    "enabled": true,
    "host": "0.0.0.0",
    "port": 5000
  }
}