{
  "id": "hls/fmp4.m3u8",
  "layer": 1,
  "files": [
    "fmp4.m3u8",
    "fmp4_000.m4s",
    "fmp4_001.m4s",
    "fmp4_002.m4s",
    "fmp4_init.mp4"
  ],
  "size_bytes": 5477083,
  "container": {
    "format": "hls",
    "duration_s": 6,
    "bit_rate": 353
  },
  "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.066,
      2.066,
      4.066
    ]
  },
  "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"
    }
  ],
  "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": {
    "fmp4.m3u8": "e2a89c926142ac3ade00d2ffb342485a4533bcfafc18ed6c7d5fa02fbf66ce90",
    "fmp4_000.m4s": "f64df050d95623a7e672d2fb4c8d3aacc66649abe8577172b30d313a8f06c023",
    "fmp4_001.m4s": "c9d0010a3a908dec1fab0e4bc60ae44456339d655060595296c03bb5ee9b59f5",
    "fmp4_002.m4s": "0a37d4966111cb7755b121594ce5a86ef3c7c159d169cb07e2444a9890118c44",
    "fmp4_init.mp4": "2b0cbbedc56a345de744e2ed5518dc8c2623e4a48c91143b25716be69472240b"
  },
  "verified_by": [
    "size",
    "fps",
    "pix_fmt",
    "frame count",
    "sample rate",
    "channels",
    "audio tracks",
    "duration",
    "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": {
      "segments": "fmp4"
    }
  }
}