H.264 vs MJPEG - Quality and Bandwidth Tested

Author: John Honovich, Published on Jul 28, 2010

Encoding video optimally is critical for IP video surveillance systems. Should you choose H.264 or MJPEG? While industry momentum certainly favors H.264, when and how to best use H.264 are important questions.

We believe the 3 key questions in considering H.264 vs MJPEG are:

  • How much bandwidth savings does H.264 provide over MJPEG?
  • What type of image quality differences can you expect between H.264 and MJPEG?
  • What differences in computing load will you experience between H.264 and MJPEG?

This report provides our results and recommendations on the first two questions - bandwidth and image quality.From our tests, we recommend the following 3 key criteria to understand H.26/MJPEG's impact on quality and bandwidth:

  • Determine the complexity of the scene being captured/recorded
  • Determine the streaming mode / control of the camera being used
  • Determine the ratio of total frames to I frames (for H.264)

The tests reveal no magic numbers - the answer is not 80% bandwidth savings or 10% less quality (or any other single value for X or Y). While H.264 generally reduces bandwidth consumption significantly, it depends on multiple factors (including complexity, streaming mode, frame rate and i frame rate). VBR vs CBR selection is especially important, having a especially large impact on use and performance. Finally, while H.264 can deliver the same visible image quality as MJPEG, depending on the settings you use (especially streaming mode), you can easily generate worse quality.

Inside our premium report, we examine and explain each of these elements in-depth with a series of sample videos and tutorial video screencasts. The video introduction below overviews the approach we took:

Premium members should allocate 1-3 hours to read the full report

******** ***** ********* ** ******** *** ** ***** ************ *******. Should *** ****** *.*** ** *****? ***** ******** ******** ********* favors *.***, **** *** *** ** **** *** *.*** *** important *********.

** ******* *** * *** ********* ** *********** *.*** ** MJPEG ***:

  • *** **** ********* ******* **** *.*** ******* **** *****?
  • **** **** ** ***** ******* *********** *** *** ****** ******* H.264 *** *****?
  • **** *********** ** ********* **** **** *** ********** ******* *.*** and *****?

**** ****** ******** *** ******* *** *************** ** *** ***** two ********* - ********* *** ***** *******.**** *** *****, ** recommend *** ********* * *** ******** ** ********** *.**/*****'* ****** on ******* *** *********:

  • ********* *** ********** ** *** ***** ***** ********/********
  • ********* *** ********* **** / ******* ** *** ****** ***** used
  • ********* *** ***** ** ***** ****** ** * ****** (*** H.264)

*** ***** ****** ** ***** ******* - *** ****** ** not **% ********* ******* ** **% **** ******* (** *** other ****** ***** *** * ** *). ***** *.*** ********* reduces ********* *********** *************, ** ******* ** ******** ******* (********* complexity, ********* ****, ***** **** *** * ***** ****). *** vs *** ********* ** ********** *********, ****** * ********** ***** impact ** *** *** ***********. *******, ***** *.*** *** ******* the **** ******* ***** ******* ** *****, ********* ** *** settings *** *** (********** ********* ****), *** *** ****** ******** worse *******.

****** *** ******* ******, ** ******* *** ******* **** ** these ******** **-***** **** * ****** ** ****** ****** *** tutorial ***** ***********. *** ***** ************ ***** ********* *** ******** we ****:

******* ******* ****** ******** *-* ***** ** **** *** **** report

[***************]

*******:

*** ************ ***** ** ********** / ******* (******* ** ** MJPEG, ****-*, *.***, ***.). *** **** ******** ** *** **** and **** **** ** ***********/******** ** *********.

*** **** ********** ******* *.*** *** ***** ** **** ***** only ********** ********** ****** ** ***** ***** *.*** ********** ****** frames. *** *****, **** ***** ** ***** ** ********** ** itself, **** ** ** *** **** *********** * ****** ** JPEG ****** ******** (**** ****** ****). *** *.***, **** ** the ****** *** ********** ** ****** (****** ** * ** initizaliation *****) ***** **** ** *** ****** **** ****** ******* from *** ******** ***** (****** * ** *********** ******). **** can **** * *********** ****** ** ********* ******** ** ***** which ******* **** ***** ****.

[****: **** *********** ***** ** *** ************ ******** ****. ** is ************** *** **** ******** ******** **** ****** ** *****'* IP ***** ************ *******.]

*********** ** ******* ** **********. *** ************ ******* ** *********** patterns *** ************ ***** ******** ** ******* *****/********. *** **** complex ** *** **** ********* ****** * ******* **, *** less ****** ** ** *** * ******* ** ** ********** (or *** ****** ** ** ** ********** ****). ***** *.*** can ******** '****' **** *****, **** ********* ** ** ** important ******* ** ************* ********* ** *********** *** ***** ********.

****** ********: ** **** ****, ** **** * **** ****** ******** from*********** ******* *** *.*** *******.******** *** ********* ********. ** *** ********** **** *****, ** ******* * **** video **** ******* ********** ** ********** *** ******* (******** ********* ******** **** ******).

Criteria *: ********* *** ********** ** *** ***** ***** ********/********

******* *** *** ***** ** *.***, ** ** ********* ** know *** ********** ** **** *****. *******, ** ** **** more ********* ** ********** **** **** ***** *.***. **** ** because ********* ** *** ***** *** *.*** *** **** *********** than ***** *** ***** (**** ****** ** ******** ***** *** our *****, *.*** ********* *********** *** ****** ***** ** *** complexity).By ***** **********, ** **** *** **** ******** ** ********* in *** ***** ** ***** **** *** *** *********. *** instance, * ****** ******* ** ***** ** * ***** **** is *** **** '*******' **** * ******* *******. ** *******, the **** *****, ******, *****, ******* *** ********* ** * scene, *** **** ******* **** ***** **** **.

*** **** ******* * ***** ** *** **** ********* **** be ****** ** ******** *** **** ******* *****. **** ** inherent ** *** ******.

******* *********, *** ********** ** * ***** *** ****** ********* on *** **** ** *** ** *** **** ** ****. For ********, * ***** ** ****** ******* ** * ***** room ** * *** **** ******* ***** **** **** **** lunchroom ** ******** **** *** ****** ** ******. ** ******** the **** *******, *** ****** **** ******* **** ********* *** the ****** **** * ***** ** ****** **** **** **** the ***** **** ** **********.

**** ******* ****** *** ***** *** **** ********* ****** ****** video ************ ** **** ******* ******** *** *********** ******** (** at ***** ********** ** ********).

** *** ***** ***** ** **** *** ********* *********** ******* for * ******* ** ****** ******:*** ****** ** ********** ** bandwidth ******* ************* ******* ***** *** *.***. ** *** *****, with *****, *** ********** ** ********* ****** *** *** ***** to **** ******* ****** **** ******** ** * ****** ** 3. *******, ** *** ***** **** *.***, *** ****** ** bandwidth ****** ****** ** ***** ** *****.

*** ***** ***** ********* *** ************ ******* ***** ********** *** bandwidth ******** *** ***** *** *.*** *** ****** ******:

*** *.*** ***** ******** ******* **** *********** ** *** ***** and *.*** ********** *****. *.***'* *** **** ******** *** ********* with **** ******* ****** ** ** ********* *.***'* ******* ** compress ****** ******. ** ********, ***** **** *** ******** ****** frames ** ** ***** **** **** **** ******* ******. *******, since ***** **** **** ** ******** ********** ****** *** ***** more ******* ****** ***** ******* **** *********, ***** ********* ******* does ******** *** **** ******** **** *.***.** ** * ******* that *****'* ********* ******* *** ******** ** **** *** ****** size **** *** **** **** **********. **** ************* *** ***** MJPEG ******* ** ***** ***** *****, ****** *** ********** **** MJPEG ** ********** *****. **** *** ****** ** **** ******* the ******** ** ********* **** *** ** ********** ** ********** limited *** *****. *******, **** **** ****** **** ****** ***** of ******* **** (** ********* ************).

**** ****** *.*** ****** *********** ********* ******* ****** *** *****, the ***** ***** ** ****** ******** *** ********* ***** ************ introduces * ****** ******* **** *** *** *********** **** *****.

Criteria *: ********* *** ********* **** / ******* ** *** ****** ***** ****

*** **** ********* ****** ** ********* **** ** ************* *** use ** ******** *** **** (***) **. ******** *** **** (VBR) *** *.***. ***** *** ***** **** **** ***** ***** size *** ** **** ****** ****** *** ***** ******* ******* or ********, **** ** ******** ** ***** *** *********** *** H.264.

**** ******** *** ****, *** ** ****** **** ******** *** same ********* ***** ********** ** *** *****'* **********. ** ********* is ************ ** ***** *** **********, ******* **** ** **********.

**** ******** *** ****, *** ** ****** **** **** ********* the ********* ***** ** **** *** ******* ****** **** *** scene's **********.

** *** ***** *****, ** **** *** *** *** **** changes ******* **** *** ***** ******* *** **** *** ** always **** *** ****: 

********** **** *** ****** *******. **** ** ******** ** ********** and ** ********* ********* ***** ** *** *** ** *** streaming. *** ***** ** ************ ** ********** *** **** *********** loses **** ** *** ******** **** (****** ***** ***********). ****'* key **** ** *** '*****' *** *********** **. **** ** controlled ** *** ************ ***** - *** ****** *** *****, the ******* *** *********** *** *** ***** ******* *** ***** will ******.

**** ***, ** *** ********* ** ************, *** ** ****** provider **** ****** *******. **** *** ** ************ ** *** ways - ****** ******* ******* ** * ***** ***** ** reduce *** ****** ** ****** ********. ************* **** ** **** options **** ******* *** **** *** ******* ****** **. ** the ***** *****, ** **** ******** ** ********* ************* ****** conventions, ******** *** ******* *** *** ******* ***********.

** * **** ****, **** ***, ** *** ********* ***** is '*** ****' *** *** * *** ********** *****, *** quantization ***** **** ** *******, ********* *** * **** ******** compression. *********** *** **** *** *** ****** *** *********** **** are, ** *** ********* ** **** ***** ******** ** ******* benefits *** *** ****/***********.

** *** ** ****** ******** ***** *** ******* ** ****** the ******* ******* ** * ***** ***** **** **** ** done ******* ** ******** *** ************ *****

******* *** ************ ***** ** ** *** ***** ** *** H.264 ***** *** **** ***** **** ***** *****. ** *** video *****, ** **** *.*** *** ******* ** ******** *** rates. ***** * ****** ********, ** **** *** *** ************ level ****** *** *** **** ** ********** **** ******* ** visible ***** *******.

****** ********: ** *** ********** *****, ** **** * **** ****** analyzer *************** ******* *** *.*** *******.******** *** ********* *********** ********* ****** ** ********.

Should *** *** *** ** ***?

******** ** ******* ** *** *** ** *** *** *.*** is ******* *** **** ********* ******** ** ***** *.***. *** choice *** *********** ******* ** ********* *******, ****** ******* *** infrastructure ********.

** *** *** ***, *** ******** *** ******** ** **** infrastructure - ************ ** ******* ****** ** ****** *** ****** that **** ** ***** ***** ******** **** **** ********** ******* (e.g., ********, *******) *** **** **** ********* (*.*., ******* ******* VMS ********, ******* **********). **** ************** ***** *** * ****** multiplication ** ***** ******* ***** ****** ****.

*** *** ***** ********* ** ***** *** *** (*) ********* quality *********** ** (*) ************** ************. ** *** *** *** CBR **** *** *** *** **** *****'* **********, *** **** lose ****** ****** ** ******* ****** (** ********* *****). ** you *** *** *** **** *** ****, *** **** ***** storage *** ******* **** ********** ********* **** ****** *** **** video.

*** *** *** ******** ********* *** **********. **** ***, *** can ** ********* **** *** ******* ** **** ***** **** be **********. ****, *** ***** ****** ** ******* *** ********* will ** ********* ** *** *** **** **** **** *** fall ** ***** *** *****'* **********.

*** *** ******* *** *** ** **** ** ***** ************** planning **** *********. ******** **** ** ******** *** *********** ***** case ********* ** **** ******* ********.

***** *** *** *** *** *** *** **** ********** *** streaming *.***, ************* ************** *** ** ******** ** ******* *** two. ** *** *****, ** ***** * '******' ********** **** may ** ** ********:

  • ****'* ***, **** *** ** * *** **** *** *** for *** ********** ***** ****/**********, **** ******** '****-****' **** *** rate ******* *** ****** * *** **** **** *** ** significantly ******. *** ********** ** **** *** ******* ********** *** bit **** ** **** *** *** ** ******* ******** ***** to ********** *******. ***** **** ***** *****, ** *** ** an ********** ******** ** *** **** ******** **** ******* ** meet *** ********** *** ****.
  • ********* ****** * ********* ***** **** ******* *** ******* *** rates. ** ****, **** ** * *********** *** **** **** a ********** ***** ** *** *****. **** ******** **** *********** to ****** ****** ********** ******. *******, ** *** *****, **** feature *** *** ****** ** **** ** *********.

Criteria *: ********* *** ***** ** ***** ****** ** * ******

* *** **** ** *.***'* ***** ***** **** * ******. These *** *** ***** **** **** '********' *** ******** ** changes **** *** **** ******** ** * ******. ***** *** size ** * ****** *** **** (********* ** ***** **********/*******), usually * ****** *** *** ******* **** * ******. ** the ***** *****, ** **** *** **** ** * *** P ****** ** * ****** ********:

[****: ***** *** * ****** ** **** *** *** ************ majority ** ***** ************ *.*** *************** **** *** * ****** currently.]

*** **** * ****** ***** *** ** * ******, *** more ********* ******* **** *.*** ********. *** ********, * ***** with **** * * ***** *** ****** ******** *** **** bandwidth **** * ***** **** ** * ****** *** ****** (meaning ***** ***** ** ** * ***** *** ** * frames *** ********. *******, **** ******* ******* **** *****, ****** the *** * ***** ********* *** * **** ***** ********* reduction ******** ** *****. ** *** ***** *****, ** *********** these *********:

******* *** *** ***** ** ***** ****** ** * ****** can ** ********* *** ** ***** ******. ** ******* **** on **** *** ** ****** ************ ******** *** **** *** VMS ******* ** *********. ** *** **********, *** **** ****** I ***** **** ** * *** ****** (********** ** *** many ****** *** ****** ***** *** ********). *******, ************ ************ on * * ***** *** * ******* *** **** ****** Station ******** ** * * ***** *** ** * ****** (meaning **** ** *** ****** ** * ***, ** * frame **** **** ** ****/********* ***** ** *******).

*** ******* **** ** **** ******* * ***** ********* ** improve ***** ******** / *******. *** ****** *** * ***** interval, *** **** ****** ***** **** ** ****** ** ******** in ********** **** ** ******** *****. ***** * ****** **** 'describe' * **** ** *** *****, ** ** ********* *** possible ** ******* * **** ***** **-****** ***** ** * frame *******. **, *** ******* ** * ***** ** **** generated ***** ** *******, **** *** ****** ********* ********.

Sample *********** **** ********* ******* ************ ****

********* * ******** ****** ** **** ***** ** *.*** ******* or ********* ******** ** ***** ** *************. ** ******** ********* design ******** **** *** ************ ***** ***** ** ********** *** address.

** *** ***** ******* ** *** ******, ** ******* * setting ************ **** *********** ********* ********* ** *** *** ******* parameters ** ***** ******** ***********: (*) ***** **********, (*) * frame ****, (*) ***** **** *** (*) *** ** ***.

Scene ********** *********

Daytime ****** - H.264 bandwidth was 200 Kbps. By contrast, MJPEG bandwidth was 11.8Mbps, a 59x difference, and a 98% bandwidth savings. Image quality between both codecs were similar; we did not note any significant variances.

Daytime ****** **** ******** - H.264 bandwidth was 790 Kbps. MJPEG bandwidth was 13.71Mbps, a 17x difference, and a 94% bandwidth savings. No significant image quality differences observed. 

Daytime ******* - H.264 bandwidth was 2.63 Mbps. By contrast, MJPEG bandwidth was 39.23Mbps, a 15x difference, and a 93% bandwidth savings. No significant differences in image quality observed.

Night ****** (* ***) - H.264 bandwidth was 720 Kbps. By contrast, MJPEG bandwidth was 13.27Mbps, a 18x difference, with a 95% bandwidth savings. Although both images look similar in quality, the MJPEG scene has a little more visible noise, while the H.264 image is a little softer. 

Night ****** (***** *****) - H.264 bandwidth was 2.92 Mbps. By contrast, MJPEG bandwidth was 15.15 Mbps, a 5x difference, and 81% bandwidth savings. A totally black image in itself is not a complex scene, but the random camera noise on screen (which vary between vendors) raises the complexity significantly. Although it is not apparent on the exported clips or screencaps, we witnessed the MJPEG scene suffer from significantly more camera noise than the H.264 scene. 

Night ******* - H.264 bandwidth was 1.89Mbps. By contrast, MJPEG bandwidth was 17.57 Mbps, a 9x difference, with 89% bandwidth savings. No significant image quality differences observed.

I ***** **** *********

30fps, ** * ****** *** ****** ****** ******* - In this scenario, H.264 bandwidth was 3.48 Mbps. By contrast, MJPEG bandwidth was 11.8 Mbps, which shows a 3x difference. Although having a maximum I frame ratio, this scenario did not show any visible quality gain, but still having a bandwidth savings of 71% from the MJPEG scenario.

30fps, * * ***** *** ****** ****** ******* - In this scenario, H.264 bandwidth was 280 Kbps. By contrast, MJPEG bandwidth was 11.8 Mbps, which shows a 42x difference, and a 98% bandwidth savings. This being a default i frame configuration for many camera vendors, this scenario has no significant variances in MJPEG image quality.

Frame **** *********

1fps, * * ***** *** ****** ******* ******* - This scenario shows the H.264 bandwidth at 1.1Mbps. Contrasting this to a 1fps MJPEG scenario, with bandwidth consumption at 1.3 Mbps, a 1.2x difference, and 15% bandwidth savings. No obvious visual differences in quality. Contrast this to the example above for 30fps, 30 i frames. While the ratio of I frames to total frames is the same (1:1), the scene above is indoor daytime - delivering significantly enhanced bandwidth reduction because of the relatively simpler scene.

30fps, * * ***** *** ****** ******* ******* - H.264 bandwidth was 2.63 Mbps.  Contrasting this to a 1fps MJPEG scenario, with a bandwidth consumption of 39.23 Mbps, a 15x difference, and 93% bandwidth savings . Quality wise, no obvious visual differences, but h264 clip is running slightly less frames at 27.99fps.

CBR ** *** *********
CBR ***** ***** ******* ******* - In this scenario, H.264 bandwidth was 2.24 Mbps. By contrast, MJPEG bandwidth consumption was 16 Mbps, a 7x difference. H.264 bandwidth savings was 86%. However, H,.264 stream exhibited clear visual degradation compared to the MJPEG stream.
CBR ***** ***** ******* ******* - In this scenario, H.264 bandwidth was 3.1 Mbps. Contrasting it to the same 16Mbps MJPEG scenario, shows a 5x difference, 80% bandwidth savings. Comparing to the previous scenario of 2Mbps, video quality was significantly improved and matched the visible quality of MJPEG.
VBR ***** ******* ******* - In this scenario, H.264 bandwidth was 2.63 Mbps. By contrast, MJPEG bandwidth was 6X. H.264 bandwidth savings was 84%. H.264 stream quality exhibited no deficincies relative to MJPEG.
Login to read this IPVM report.
Why do I need to log in?
IPVM conducts unique testing and research funded by member's payments enabling us to offer the most independent, accurate and in-depth information.

Related Reports

IP Networking Course May 2017 on Apr 21, 2017
NOTE: Registration ends this Thursday. This is the only networking course designed specifically for video surveillance professionals plus it...
PureTech Video Analytics Examined on Apr 21, 2017
PureTech's analytics were chosen for a US border protection system (see related post), which the company claims no other analytics vendor was able...
Dell EMC Surveillance Division Profile on Apr 20, 2017
With revenue growth from traditional IT customers slowing, Dell has set a focus on the security industry as a market where the company can offer...
Axis Network Horn Tested on Apr 18, 2017
We bought and tested the Axis network horn C3003-E, examining setup and calibration, event audio, VMS integration, and sound pressure levels...
Aqueti 100MP Mantis Camera Profile on Apr 14, 2017
One of the original gigapixel camera startups, Aqueti, which we first covered in 2012, is back. This time, they have partnered with NVIDIA,...
Hanwha Lowest Cost WiseNet X Camera (XND-6010) Tested on Apr 13, 2017
IPVM bought and tested the lowest-cost WiseNet X model, the indoor 2MP fixed focal XND-6010 dome, continuing our testing of Hanwha's new WiseNet X...
Pelco Surevision 3 Tested on Apr 12, 2017
Pelco has released generation 3 of its Surevision cameras, claiming improved performance in both super low light and WDR performance. We bought...
VMS Vs NVR Usage Statistics on Apr 07, 2017
What is used more often? VMS software or NVR appliances? 160 integrators told us what they most commonly use and why. [premium_content] Key...
Panasonic Consolidates Video Insight on Apr 04, 2017
Panasonic has consolidated VideoInsight, the VMS provider it acquired in 2015. In this note, we examine Panasonic's goals and its potential...
Milestone / Lenel Resell Partnership on Apr 03, 2017
Lenel has never found success in video management. Nearly a decade ago Lenel OEMed an OEM of Milestone. Now, in an equally uncommon move,...

Most Recent Industry Reports

IP Networking Course May 2017 on Apr 21, 2017
NOTE: Registration ends this Thursday. This is the only networking course designed specifically for video surveillance professionals plus it...
PureTech Video Analytics Examined on Apr 21, 2017
PureTech's analytics were chosen for a US border protection system (see related post), which the company claims no other analytics vendor was able...
US Border RVSS / Video Analytics System Examined on Apr 21, 2017
US Customs and Border Protection has been rolling out a video analytics-based detection system along the US/Mexico border, with detection ranges...
Beware The "Hit List" Ranking on Apr 21, 2017
The hit list. Kirschenbaum's recent newsletter complained about a 'hit list', bemoaning how a company took aim at ADT. Alas, that's the Google...
Ring Floodlight Cam Tested on Apr 20, 2017
Ring has released their latest entry, the Floodlight Cam, calling it the "Evolution of Outdoor Security", touting motion activated floodlights,...
Lenel President Is Out on Apr 20, 2017
Lenel's challenges continue. Now, Lenel's President is out, suddenly. This follows increasing challenges for the company who has broadly upset...
Dell EMC Surveillance Division Profile on Apr 20, 2017
With revenue growth from traditional IT customers slowing, Dell has set a focus on the security industry as a market where the company can offer...
PatriotOne Deep Neural / Radar Weapon Detection Examined on Apr 19, 2017
The bodyscanner/weapons detection sector has seen several new products, some using advanced approaches like metamaterials (Evolv) or terahertz...
Failing at Marketing, "ALL HIKVISION PRODUCTS" On Sale on Apr 18, 2017
The ballerinas are out. The price cuts are back. Hikvision is struggling to build a premium brand (i.e., 'The Art of Video Surveillance') so...
Axis Network Horn Tested on Apr 18, 2017
We bought and tested the Axis network horn C3003-E, examining setup and calibration, event audio, VMS integration, and sound pressure levels...

The world's leading video surveillance information source, IPVM provides the best reporting, testing and training for 10,000+ members globally. Dedicated to independent and objective information, we uniquely refuse any and all advertisements, sponsorship and consulting from manufacturers.

About | FAQ | Contact