MJPEG vs MPEG4 VS H.264
Selecting the proper imaging technology up front will be one of your most important decisions you will face designing and implementing your network video project. When considering compression options for network video solutions, the following video related issues should be reviewed and carefully considered.
- Image Resolution
- Compression Technology
- Image Quality
- Minimum and Maximum Frame Rates (FPS)
- Number of Cameras (Scalability)
- Storage Requirements
- Available Bandwidth
- Overall Latency (time difference between live and displayed video)
- Budget
Digital recording devices are becoming popular in the digital world and are increasingly becoming accessible to the home consumer. Some digital recording features can already be found in digital cameras while the more advanced recording features are prominent in HD digital camcorders. However, higher qualities and lengths of digital videos mean greater file sizes and when it comes to sharing videos online, therefore file sizes should be reduced to avoid long delays in sending and receiving the entire clip.
Video compression has come a long way, but the main objective still strives to have the smallest file size possible while still preserving good video and audio quality. MPEG4, H.264, and MJPEG are three NVR CODECs that aim to compress the videos for transferring purposes. Each of these formats have their own strengths and weaknesses.
First came MPEG-1 followed by MPEG-2 and now MPEG-4 comes into the picture. MPEG-4 is a massive upgrade to the MPEG-2 format that focuses more on compression. It is a standard that can effectively compress both audio and visual data for streaming purposes or to fit lengthy data on optical media.
Because it incorporates the existing technologies of MPEG-1 and MPEG-2, MPEG-4 is also good for video conversations and television broadcasts. It can shrink even the largest video files into small pieces for faster transfers through the internet or over a wireless network. Other data may be incorporated to the MPEG-4 as well like images or video. MPEG-4 also sports some interactive elements as long as they have the supported player to allow some layers of the video to be manipulated.
H.264 otherwise known as MPEG-4 Part 10 or AVC (Advanced Video Coding) takes the MPEG-4 format to another level and is advantageous over the older formats as it contains inter-picture prediction features allowing up to 32 picture references. It focuses on lossless methods and aims for flexibility on a variety of different systems. Their lossless methods can also reduce their file sizes even further than MPEG-4 formats making them ideal for HD video. Still many mobile devices use the more popular MPEG-4 format.
MJPEG is another format that may not be familiar by everyone. MJPEG basically comes from the JPEG format, which is highly standardized for compressing images. The MJPEG follows that same process and adds other stuff in streaming each image or frame together. The end result leads to lower CPU usages compared to the other formats, but higher file sizes leading to increased bandwidth needed for streaming.
Your choice of NVR compression depends on the specifications of your system and your intended use of distribution. This is why there is currently no format that rules over all. If you plan to distribute video clips for slower computers, MJPEG could be the choice. For better compatibility with mobile devices and standard computers, MPEG-4 could be a safe choice. If quality must be preserved while keeping the file size small (preferably on high definition videos), H.264 is the best choice. You can even try compressing the video in all 3 formats, compare them all, and see what looks best for you.