Skip to content

Codec Settings

Koushik Dutta edited this page Nov 25, 2022 · 18 revisions

These following codec settings are the optimal settings for streaming destinations within Scrypted. Streaming destinations include:

  • HomeKit
  • Google Home
  • Alexa
  • Chromecast
  • Web

Stream Settings

  • Configure all the available streams on your camera. Most cameras will have one 1 main stream and 1 substream. Some may only have 1 main stream. Cameras with 1 main stream and 2 sub streams are ideal. The streams subsection after this bulleted list.

1 Main Stream

  • Main Stream: 1920x1080, 2 Mbit variable bitrate (remote streaming may suffer due to lack of substreams)

1 Main Stream, 1 Sub Stream

  • Main Stream (Max Available Resolution):
    • 4K, 8 Mbit variable bitrate
    • 2K, 3.5 Mbit variable bitrate
    • 1080P, 2 Mbit variable bitrate
  • Sub Stream:
    • 1280x720 (or lower), 1 Mbit, variable bitrate

1 Main Stream, 2 Sub Streams

  • Main Stream (Max Available Resolution):
    • 4K, 8 Mbit variable bitrate
    • 2K, 3.5 Mbit variable bitrate
    • 1080P, 2 Mbit variable bitrate
  • Sub Stream 1 or 2:
    • 1280x720, 1 Mbit, variable bitrate
  • Sub Stream 1 or 2:
    • 640x480p, 500 Kbit variable bitrate

Codec Settings

  • These settings apply for all the above streams.
  • h264 video. Do NOT use H.264+, "Super" H.264, H.264B, or any other fancy variant. TURN IT OFF. Sometimes this unsupported variant setting is called "Smart Code(c)" and it should be set to "Close" or "Off".
  • 4 second keyframe interval
    • Keyframe Interval is the number of seconds between keyframes. Frame Interval is the number frames between keyframes.
    • Cameras are typically configured in Frame Interval rather than Keyframe Interval. The formula for Frame Interval value is: Frame Interval = 4 * FPS. So if FPS is 30 as specified, Frame Interval should be set to 120.
  • Audio codecs, in order of preference:
    • Opus (used for live streaming to HomeKit or web)
    • PCM-ulaw/G711u (raw format suitable for web)