Why do we only support H.264 but not also H.265?
Even though H.265 codec was introduced back in 2013 it still struggles to become the main codec and in most applications where there is a need to work with multiple simultaneous streams like in video surveillance the H.264 is still the golden standard. One of the main reasons for this is the dramatic increase in the CPU requirements to process H.265 vs H.264 streams and very limited if any actual bandwidth savings in the real-world application with lots of motion and complex scenes.
Since 3dEYE is a pure cloud platform and to access video portal users do not need to install anything on their devices we have to rely on the built-in technologies that all browsers have and to this day browsers do not support H.265 video streams natively. This means that to view videos that are encoded in H.265 user has to install a plugin or addon or other special software to "teach" their device to playback H.265.
Additionally, due to the increased processing power requirements of H.265, not all devices are even capable to decode H.265 unlike with H.264 which is highly optimized and can be decoded natively virtually on any device which is capable to run Chrome or equivalent browser thus significantly increasing the compatibility of the platform and lifting any hardware requirements which would have to be implemented in case of H.265.
Difference between H.265 and H.264
H.265 cameras have a significant increase in decoder CPU load as it requires higher processing power and has higher bitrate during the night (is this from some article?) than H.264 which increases the average bitrate of the camera. Whereas H.264 smart codec provides the same bandwidth reduction as is backward compatible meaning the user does not have to change the camera and only requires a firmware upgrade to use the H.264 smart codec. .264 smart code also provides dynamic I frame interval with significant bandwidth reduction which the regular H.265 lacks.
Is this section from some articles? It does not make much sense to me.
Bullet points that I was thinking about are:
- higher CPU requirements for H.265
- Not much difference in bandwidth requirements in real-world applications
- H.264 being the most widespread standard and as such is supported by virtually all devices
How does our system work with H.264 streams?
For most of the cameras, the system will convert the stream automatically to H.264 but for some cameras, the User has to change the stream to H.264 from H.265 from the camera web UI. When the user selects the profile of the camera stream in the Quality Tab of the camera setting, the 3dEYE platform will attempt to automatically convert the stream to H.264 coming from the camera.
If the User is not able to see any video feed in the Video Portal or if the camera setting window shows the HTTP is connected in Green color just under the camera name and if the Video Offline in Red Color then it might mean but not necessary that the system is not able to change the codec to H.264 and the user have to do this manually from the camera WebUI which can be accessed using the camera Troubleshooting Tab.
For more information on the Video offline visit this page