Camera settings for web streaming
Factory settings are tuned for recording to an NVR, not for browsers. Ten minutes of changes decide whether the video plays smoothly or stutters, and whether it starts at once or on a black screen.
Where to find these settings
In the camera's web interface, under video or encoding. Names change with firmware, but these are good starting points:
- Hikvision: Configuration → Video/Audio → Video. See the Hikvision guide.
- Dahua: Setting → Camera → Video (Camera → Encode in the newer interface). See Dahua.
- Uniview: Setup → Video & Audio → Video. See Uniview.
- Axis: Video → Stream. See Axis.
If the camera is connected to a recorder, the same settings can be changed from the recorder's menu — see NVR and DVR. Keep in mind that if the recorder records the same stream, the change affects your recordings too.
Recommended values
| Setting | Recommendation | Why |
|---|---|---|
| Codec | H.264 | Every browser plays it. We convert H.265 on the server, but H.264 is simpler and faster |
| Profile | Main without B-frames (or Baseline) | B-frames make video stutter in browsers |
| Resolution | 1280×720 or 1920×1080 | A website player rarely needs more |
| Bitrate | 720p: 1–2 Mbit/s; 1080p: 3–4 Mbit/s | Good quality at a sensible upload cost |
| Bitrate type | CBR, or VBR with a maximum cap | The stream fits your upload |
| Frame rate | 15–25 fps | 25 is smooth; 15 is enough for a view |
| I-frame interval | 1–2 seconds (at 25 fps: 25–50) | New viewers start watching quickly |
| Smart codec | Off | H.264+/H.265+ is not designed for browsers |
Profile and B-frames
H.264 has several profiles. High and Main allow B-frames — frames that depend on a later frame. That saves disk space on a recorder, but in a browser, especially over WebRTC, it makes motion jerky. Choose Main and, if the camera has a separate B-frame setting, turn it off. If there is no such setting and the video still stutters, choose Baseline, which has no B-frames at all. This case is not fixed automatically, so it has to be corrected on the camera; if you cannot, call us.
CBR or VBR
CBR (constant bitrate) always sends the same amount, so your upload is predictable. VBR (variable) saves bandwidth on a still scene but climbs with motion: snow, rain, waves, trees in the wind and infrared noise at night all push it up sharply. That is exactly when the upload fills up and the video stalls. On a slope in Gudauri or a beach in Batumi, choose CBR — or VBR with a maximum bitrate capped to what your upload can carry.
Frame rate and I-frames
Mains power in Georgia is 50 Hz, so 25 fps does not flicker under artificial light, while 30 fps can. A scenic camera is fine at 15 fps and saves bitrate. The I-frame interval (Hikvision and Dahua: I Frame Interval; Axis: GOP length) is set in frames: 1–2 seconds means 25–50 at 25 fps, or 15–30 at 15 fps. A new viewer's video starts at the next I-frame, so a 4–10 second interval — common out of the box — means people stare at a black screen for that long.
Turn smart codecs off
H.264+ / H.265+ (Hikvision), Smart Codec (Dahua), U-Code (Uniview) and similar modes save disk space with very long, variable I-frame intervals. Good for a recorder, bad for a browser: video starts late, freezes or shows coloured artefacts. On Hikvision, also turn SVC off. Once these modes are off, set the I-frame interval by hand.
The sub-stream
Most cameras send two streams: the main one and a lighter second one. When adding a camera you can enter the sub-stream path as well, for example /Streaming/Channels/102 on Hikvision or subtype=1 on Dahua. Set it up by the same rules: H.264, no B-frames, 1–2 second I-frames, for example 640×360 or 704×576 at 512–1024 kbit/s. If your upload is tight, or most viewers watch on phones over mobile data, a 720p stream is often a better choice than 1080p.
Time and on-screen text (OSD)
- Turn on time sync (NTP), for example
pool.ntp.org, and set the time zone to UTC+4 (Georgia has no daylight saving). The correct time in the frame shows viewers that the video really is live. - OSD text is burned into the picture by the camera. Remove clutter such as “Camera 01” and place the date where it will not collide with your logo, which you add with our logo editor.
How much upload you need
Each camera sends one stream to our server, however many people watch. So the arithmetic is simple: add up your cameras' bitrates and add 25–30% headroom. For example, two 1080p cameras at 4 Mbit/s and one 720p camera at 2 Mbit/s make 10 Mbit/s; with headroom, about 13 Mbit/s of constant upload. Measure your upload speed from the same network, and remember it is shared with everything else: office computers, remote viewing in the manufacturer's app, cloud backups.
Once the camera is ready, see how to find the RTSP URL and how to open the port.
What bitrate should I use for a 1080p camera?
3–4 Mbit/s in H.264, using CBR or VBR capped at 4 Mbit/s. For 720p, 1–2 Mbit/s is enough.
The video freezes every few seconds. Why?
The usual causes are B-frames, a smart codec (H.264+/H.265+) left on, and a saturated upload. Set the Main or Baseline profile, turn the smart codec off and check your upload.
25 or 30 fps?
25 in Georgia: mains power is 50 Hz, and 25 fps does not flicker under artificial light. For a scenic camera, 15 fps is enough.
I have a 4K camera. Should I stream in 4K?
Rarely worth it for a website player: upload goes up several times, and most viewers watch on phones. Stream a 1080p or 720p stream instead.
Will changing these settings affect my recordings?
Yes, if the recorder records the same stream. In that case set up a separate stream for streaming and enter its path.