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

ONVIF Profile G Video Storage Test on Aug 26, 2016
A standard to retrieve video stored on 3rd party devices. This is the aim of ONVIF Profile G. The proprietary nature of accessing recorded video...
Viakoo Health Monitoring Examined on Aug 26, 2016
Viakoo, the company of ex-Intransa leaders, says they have created a monitoring tool for security networks that is easy to deploy and offers...
Axxon Next VMS 4.0 Tested on Aug 24, 2016
AxxonSoft is one of the biggest VMS vendors (reporting 263,000 channels sold in 2015), especially strong in their home market of Russia, but not...
Milestone Declares End-To-End Is A Dead-End on Aug 24, 2016
While Axis celebrates their end to end system win at top 50 global retailer H&M, their Canon sister company Milestone is proclaiming that...
HD Analog DVRs With Exacq, Milestone and Genetec VMSes Tested on Aug 23, 2016
HD analog offerings have proven to deliver HD video at radically lower prices. However, the main limitation for professional applications is their...
Axis Wins ~$20 Billion Retailer With End to End Solution on Aug 22, 2016
Sorry, Axis partners, you are not needed here. Axis 3.0 is ramping up with the Avigilon approach. Based on internal Axis documents, IPVM explains...
FLIR Expands Enterprise Distribution Through ADI on Aug 22, 2016
FLIR and Hikvision have been the two top-stocked video brands at ADI, according IPVM analysis and ADI Awarded FLIR "Vendor Of The Year" in January...
Axis Lists Itself First Among VMSes on Aug 19, 2016
When you think of VMSes, who do you think of first? Well, Axis, the camera manufacturer, thinks of itself. Axis declared: There are a variety...
Camera Course September 2016 on Aug 18, 2016
This is the only independent surveillance camera course, based on in-depth product and technology testing. Lots of manufacturer training exists...
Directory Of 92 Video Management Software (VMS) Suppliers on Aug 15, 2016
This directory provides a list of Video Management Software providers to help you see and research what options are available. Listing Format The...

Most Recent Industry Reports

US Embassy Requires Hikvision Cameras on Aug 29, 2016
The US Embassy in Kabul Afghanistan has required only Hikvision cameras in a new US federal government bid. However: Hikvision...
Axis Hosted Video Decade of Failure on Aug 29, 2016
Do you want to 'head up' Axis hosted video offerings? Axis almost never publicly promotes senior positions, but for such an unattractive job they...
Hikvision Chinese Government Origin on Aug 29, 2016
Hikvision originated from a Chinese government research institute. This is uncommon in the West but frequent in China. Hikvision was founded...
Viakoo Health Monitoring Examined on Aug 26, 2016
Viakoo, the company of ex-Intransa leaders, says they have created a monitoring tool for security networks that is easy to deploy and offers...
Genetec Access Control Security Center 5.5 Release on Aug 26, 2016
Inside, we examine Genetec's new Access Control features in Security Center 5.5. Enhanced Active Directory and 'Universal Groups' New, Single...
Tailgating - Access Control Tutorial on Aug 25, 2016
Despite costing thousands of dollars per door, electronic access control systems are vulnerable to an easy exploit called 'tailgating'. Unless this...
Manufacturer Trade Show Costs Analyzed - Spending Millions on Aug 25, 2016
Ten million dollars plus is spent by manufacturers at every major trade show (e.g., ISC West, ASIS, IFSEC, Essen, etc.) And the bigger booths...
Axxon Next VMS 4.0 Tested on Aug 24, 2016
AxxonSoft is one of the biggest VMS vendors (reporting 263,000 channels sold in 2015), especially strong in their home market of Russia, but not...
Milestone Declares End-To-End Is A Dead-End on Aug 24, 2016
While Axis celebrates their end to end system win at top 50 global retailer H&M, their Canon sister company Milestone is proclaiming that...

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