async checkDurationOfLegalTransitions(){
    if(this.children){
      /* get all the scenes */
      const ffsceneList = this.children.filter((ffscene) => ffscene.type === 'scene');

      /* Traverse to check whether the total transition time of each scene is legal */
      for(let i = 1; i <= ffsceneList.length; i++){

        /* The duration of the total transition for the current scene */
        let totalDurationOfTranslations = 0;
        if(i > 1){
          /* The duration of the transition between the previous scene and the current scene */
          totalDurationOfTranslations = ffsceneList[i - 2].transition.duration;
        }

        if(i < ffsceneList.length){
          /* Add the duration of the transition between the current scene and the next scene */
          totalDurationOfTranslations = (totalDurationOfTranslations * 1000000 + ffsceneList[i - 1].transition.duration * 1000000) / 1000000;
        }

        /* If the total transition time exceeds the limit */
        if(totalDurationOfTranslations > ffsceneList[i - 1].duration){
          throw new Error("The total transition time exceeds the limit");
        }
      }
    }
  }
Check if the duration of the transition is within the legal range.
The sum of the transition duration between the current scene and the previous scene and the transition duration between the current scene and the next scene is the total transition duration of the current scene.
The total transition duration of the current scene must be less than or equal to the duration of the current scene.
@private