{
  "id": "subs/mov-text.mp4",
  "layer": 1,
  "files": [
    "mov-text.mp4"
  ],
  "size_bytes": 5485074,
  "container": {
    "format": "mov,mp4,m4a,3gp,3g2,mj2",
    "duration_s": 6,
    "bit_rate": 7313432,
    "top_level_boxes": [
      "ftyp",
      "moov",
      "free",
      "mdat"
    ],
    "moov_before_mdat": true
  },
  "video": {
    "codec": "h264",
    "profile": "High",
    "pix_fmt": "yuv420p",
    "width": 1920,
    "height": 1080,
    "sample_aspect_ratio": "1:1",
    "display_aspect_ratio": "16:9",
    "fps": "30",
    "frames": 180,
    "field_order": "progressive",
    "color": {
      "range": "tv",
      "space": "bt709",
      "transfer": "bt709",
      "primaries": "bt709"
    },
    "keyframes_s": [
      0,
      2,
      4
    ]
  },
  "content": {
    "frame_code": "layout v1: patch row + 2 code rows in the bottom 3/18 of the picture",
    "frame_number": "burned in, top left",
    "timecode": "burned in, under the frame number",
    "flash": "white square, top right, first 3 frames of every second",
    "beep": "carrier with a 4x beep for 40 ms at the start of every second"
  },
  "audio": [
    {
      "codec": "aac",
      "profile": "LC",
      "sample_rate": 48000,
      "channels": 2,
      "channel_layout": "stereo",
      "language": "und"
    }
  ],
  "subtitles": {
    "codec": "mov_text",
    "cues": [
      {
        "start_s": 0,
        "end_s": 0.8,
        "text": "Subtitle 0"
      },
      {
        "start_s": 1,
        "end_s": 1.8,
        "text": "Subtitle 1"
      },
      {
        "start_s": 2,
        "end_s": 2.8,
        "text": "Subtitle 2"
      },
      {
        "start_s": 3,
        "end_s": 3.8,
        "text": "Subtitle 3"
      },
      {
        "start_s": 4,
        "end_s": 4.8,
        "text": "Subtitle 4"
      },
      {
        "start_s": 5,
        "end_s": 5.8,
        "text": "Subtitle 5"
      }
    ]
  },
  "expect": {
    "outcome": "must-play",
    "duration_s": 6,
    "duration_tol_s": 0.15,
    "frames": 180,
    "first_code": 0,
    "fps": 30,
    "display_aspect": "16:9",
    "orientation": "none",
    "colour": {
      "matrix": "bt709",
      "range": "limited",
      "tol": 8
    },
    "max_log_errors": 0,
    "exact_seek": false,
    "beep_every_frames": 30,
    "av_offset_ms": 0,
    "av_tol_ms": 20
  },
  "sha256": {
    "mov-text.mp4": "6f081cd1277b5d1e4cb42f2945465ae856d5ed7727d1176b86091445e64f9444"
  },
  "verified_by": [
    "size",
    "fps",
    "pix_fmt",
    "frame count",
    "sample rate",
    "channels",
    "audio tracks",
    "duration",
    "layout",
    "ffmpeg decode",
    "gstreamer decode",
    "check run",
    "check log",
    "check duration",
    "check frames",
    "check orientation",
    "check aspect",
    "check timestamps",
    "check colour",
    "check a/v sync"
  ],
  "recipe": {
    "duration_s": 6,
    "video": {
      "codec": "h264",
      "width": 1920,
      "height": 1080,
      "fps": "30",
      "pix_fmt": "yuv420p",
      "matrix": "bt709",
      "primaries": "bt709",
      "transfer": "bt709",
      "range": "limited",
      "gop_s": 2
    },
    "audio": {
      "codec": "aac",
      "channels": 2,
      "rate": 48000
    },
    "container": {},
    "subtitles": {
      "codec": "mov_text"
    }
  }
}