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

ADT Launches Canopy - Professional Monitoring For DIY Devices on Jan 19, 2017
The intrusion industry has criticized DIY security systems for years, claiming systems like Canary or Scout cannot match professionally installed...
Geovision Launches Direct Cloud Offering on Jan 18, 2017
Add cloud, subtract integrator. Geovision has launched myGVcloud, an offering that allows consumers to buy cameras and cloud services directly...
Canon 250MP Prototype Targeted At Surveillance on Jan 17, 2017
At one point Axis declared the megapixel race was over, but now parent company Canon is showing an imager that would be a rocket ship in a...
Genetec Favorability Results on Jan 16, 2017
In the race to the bottom and flight to 'solutions', Genetec has taken a contrary path. The company remains independent, focusing up market,...
Free VMS Software Directory on Jan 13, 2017
Many Video Management Software (VMS) providers offer free versions, either open source, for a limited number of cameras or for a limited amount of...
Milestone Essential Subscription Removed on Jan 12, 2017
Subscriptions may be the future for Milestone and VMSes but not right now. Responding to negative feedback, Milestone has removed subscriptions...
IP Networking Course January 2017 on Jan 12, 2017
This is the only networking course designed specifically for video surveillance professionals plus it includes live training, personal help and...
ONVIF Favorability Results on Jan 11, 2017
ONVIF has been one of the most debated aspects of the video surveillance industry. On the one hand, its aim to increase interoperability has been...
HD Analog Usage Rising But Barriers Growing on Jan 09, 2017
The good news for HD analog is that its usage is rising, fairly significantly since our 2015 HD analog usage statistics. The bad news for HD...
How Axis Can Beat Hikvision on Jan 09, 2017
Hikvision has rocked the industry globally, bullying former video surveillance revenue leader Axis even in the Western world. What can Axis...

Most Recent Industry Reports

Vivotek Favorability Results on Jan 20, 2017
Financially, Vivotek is doing relatively well. The company did ~$130 million in 2015 revenue and 2016 revenue (through Q3 reported) was up more...
PR Firm Pleads Don't Scrap PR Spending on Jan 20, 2017
PR is not dying, warns pleads PR firm. Take 40+ year old industry PR firm LRG, who recently lamented the 'misconceptions' that: Traditional PR...
Getting Started With Your IPVM Membership on Jan 20, 2017
Here's how to get started and get the most out of your IPVM membership. Books for Members All members can download the 3 member-only books below...
Jim Cramer Sucks Up To Knightscope on Jan 19, 2017
Credit must be given to Knightscope. They are raising money right now and despite their $80 million pre-money valuation against a lowly sub $1...
ADT Launches Canopy - Professional Monitoring For DIY Devices on Jan 19, 2017
The intrusion industry has criticized DIY security systems for years, claiming systems like Canary or Scout cannot match professionally installed...
Dahua UnFavorability Results on Jan 19, 2017
Dahua, the mega-Chinese surveillance manufacturer not primarily owned by the Chinese government has been trying to break out of the shadow of...
Paxton Hosted Access - Disruptive Low Dealer Pricing on Jan 19, 2017
Paxton is entering the hosted access game, with BLU, at a cost that is a fraction of key competitors. The different approach could be very...
Geovision Launches Direct Cloud Offering on Jan 18, 2017
Add cloud, subtract integrator. Geovision has launched myGVcloud, an offering that allows consumers to buy cameras and cloud services directly...
Anixter / Bosch Sells Direct to Amazon on Jan 18, 2017
Anixter regularly says they do not sell direct to end users or that they do not do it anymore. However, over the past year, Anixter has sold Bosch...
Smart Power Tools For Security Installs on Jan 18, 2017
Installing a smart camera? Perhaps you should use a 'smart' drill. The intelligent appliance / IoT trend has hit power tools. In this note, we...

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