Webcam: Codec, Framerate & quality

652 views
Skip to first unread message

f.erfurth

unread,
Nov 9, 2011, 11:26:06 AM11/9/11
to bigbluebutton-dev
Hi,
we're using 0.71a. We did some webcam test yesterday. Unfortunatelly the result wasn't that what my colleagues expected.

Our project is to support hearing impaired peoples. Deaf peoples uses sign languages so constant framerate in webcam-sessions are important. We usually have 2-3 participiants per room. Seldom we have 4-5. Most of them don't use webcam.

We did test with 2 participiants only (and only one meeting, so there was no other running meeting since the new server is still not productive). There was no audio, desktop-sharing and presentation. I tried with following settings:

Test with smallest (320x240) resolution with Quality 70, the video was smooth enough but they cannot read the lips since peoples appears blurry (you can see rectangles in face).
Test with medium (640x480) resolution with Quality 70, the video was too laggy but the quality was slightly better. So sign language is not working well with that setting.
The best result I got with smallest resolution (320x240) with quality 90 - 95. Which is a compromise between quality and speed.

But I feel there are improvement possible. Here is the specs:
Client
My Laptop:
- Kubuntu 11.10
- i7 QM2820
- 16GB RAM (yess... its powerful :) )
- Connected by 100MBit-LAN
Internet: 100MBit/s Down and 6MBit/s Up

Server
Host:
Xeon E5620 - 8CPUsx2,4Ghz ("doubled" by Hyperthreading)
24GB RAM
BBB installed on VM (ESXi)
4 Cores
6GB RAM
Internet: 100MBit/s Up and Down (Data Center)

So I want to know where is the bottleneck? How can I improve it? Are other codecs possible? If so how can I change it (source or config.xml)?

My Colleague asked me, if webcam can handle with dynamic quality on the fly. If you have bad connection, so quality will reduce to keep speed. But if your connection is getting better so quality will be better.

I want to know how exactly is video-transfer working at bbb. I assume the video are compressed and decompressed on client-side, am I right? So BBB-Server doesn't anything for compression (codec) am I right?

cu Floh

Fred Dixon

unread,
Nov 9, 2011, 11:55:29 AM11/9/11
to bigblueb...@googlegroups.com
Hi there,

Is it an option for you to upgrade your 0.71a to BigBlueButton 0.8-beta-2? See

http://code.google.com/p/bigbluebutton/wiki/08InstallationUbuntu#Upgrading_a_BigBlueButton_0.71a_Server

If so, we've put a lot more parameters into the config.xml that you
can use to modify the bandwidth/framerate/quality of video. See

http://code.google.com/p/bigbluebutton/wiki/ClientConfiguration#Videoconf_Module


Regards,... Fred
--
http://code.google.com/p/bigbluebutton/wiki/FAQ#BigBlueButton_Committer

> --
> You received this message because you are subscribed to the Google Groups
> "BigBlueButton-dev" group.
> To post to this group, send email to bigblueb...@googlegroups.com.
> To unsubscribe from this group, send email to
> bigbluebutton-...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/bigbluebutton-dev?hl=en.
>

HostBBB.com

unread,
Nov 11, 2011, 8:49:39 AM11/11/11
to BigBlueButton-dev
Floh, try using http://demo.207me.com, its .8beta 2, i'm working
with a deaf school in UK, trying to do the same thing, and have
tweaked the video settings to get faster framerates.. The quality
is set lower, but frames move pretty fast..

Let me know how this works for you... i think they are trying to sign
to each other, not necessarily reading lips.

If it seems to work i can share settings with you,

regard,
Stephen
hostbbb.com

Fred Dixon

unread,
Nov 11, 2011, 9:35:09 AM11/11/11
to bigblueb...@googlegroups.com
Hi Stephen,

I was curious to see what settings you had 'tweaked'. Here are
default settings for the VideoconfModule in BigBlueButton 0.8-beta-2

<module name="VideoconfModule" url="VideoconfModule.swf?v=3807"
uri="rtmp://10.100.126.205/video"
dependsOn="ViewersModule"
videoQuality="70"
presenterShareOnly="false"
resolutions="320x240,640x480,1280x720"
autoStart="false"
showButton="true"
publishWindowVisible="true"
viewerWindowMaxed="false"
viewerWindowLocation="top"
camKeyFrameInterval="5"
camModeFps="15"
camQualityBandwidth="0"
camQualityPicture="100"
h264Level="4.1"
h264Profile="main"
/>

These settings are defined in

/var/www/bigbluebutton/client/conf/config.xml

Here are the settings on your server:

<module name="VideoconfModule" url="VideoconfModule.swf?v=3869"
uri="rtmp://demo.207me.com/video"
dependsOn="ViewersModule"
videoQuality="70"
presenterShareOnly="false"
resolutions="320x240,640x480,1280x720"
autoStart="false"
showButton="true"
publishWindowVisible="true"
viewerWindowMaxed="false"
viewerWindowLocation="top"
camKeyFrameInterval="5"
camModeFps="15"
camQualityBandwidth="0"
camQualityPicture="70"
h264Level="4.1"
h264Profile="main"
/>


Everything is the same except you've set camQualityPicture to 70
instead of 100. According to the Adobe documentation at

http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/media/Camera.html#quality

the higher the number for camera quality, the less compression is done
on each frame, requiring more bandwidth for each frame. This makes
sense.

In comparison, we've set camQualityPicture to 50 in the upcoming
0.8-beta-3, which you can try at

http://demo.bigbluebutton.org/

which is running a build of BigBlueButton 0.8-beta-3 (tunneling disabled).

HostBBB.com

unread,
Nov 12, 2011, 3:27:52 PM11/12/11
to BigBlueButton-dev
We had 2 or 3 configs testing messing with the FPS as well and did not
notice any real difference, is bbb already running h264? I thought i
had read somewhere that needs flash 11.
and some config options have no efect yet. I think we tried at 50
and noticed some square regions on video at 320x size.

I'll take a look, they were definitely able to sign language at that
setting.

stephen.
>    http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript...
>
> the higher the number for camera quality, the less compression is done
> on each frame, requiring more bandwidth for each frame.  This makes
> sense.
>
> In comparison, we've set camQualityPicture to 50 in the upcoming
> 0.8-beta-3, which you can try at
>
>      http://demo.bigbluebutton.org/
>
> which is running a build of BigBlueButton 0.8-beta-3 (tunneling disabled).
>
> Regards,... Fred
> --http://code.google.com/p/bigbluebutton/wiki/FAQ#BigBlueButton_Committer
>
>
>
> On Fri, Nov 11, 2011 at 8:49 AM, HostBBB.com <sd...@207me.com> wrote:
> > Floh,   try usinghttp://demo.207me.com, its .8beta 2,  i'm working

Raymond Jender

unread,
Nov 12, 2011, 3:33:40 PM11/12/11
to bigblueb...@googlegroups.com

Does anyone have a detailed procedure for installing and managing BBB on Amazon's EC2?

Thanks,

Ray

Fred Dixon

unread,
Nov 12, 2011, 3:35:16 PM11/12/11
to bigblueb...@googlegroups.com
Hi Stephen,

> is bbb already running h264?

No, the h.264 code requires Flash Player 11. We'll hold to Flash
Player 10.3 for this release to minimize our testing.


Regards,... Fred
--
BigBlueButton Developer
http://code.google.com/p/bigbluebutton/wiki/FAQ#BigBlueButton_Committer

Fred Dixon

unread,
Nov 12, 2011, 4:30:09 PM11/12/11
to bigblueb...@googlegroups.com

Raymond Jender

unread,
Nov 12, 2011, 4:37:50 PM11/12/11
to bigblueb...@googlegroups.com
Thanks Fred. I seen that but was looking for something a little more detailed as I
am not experienced yet with EC2.  I am considering Amazons free EC2 offering 
to experiment with.

Ray

--- On Sat, 11/12/11, Fred Dixon <ffd...@gmail.com> wrote:

Fred Dixon

unread,
Nov 12, 2011, 4:45:21 PM11/12/11
to bigblueb...@googlegroups.com
Hi Raymond,

Amazon's free offering of a t1.micro which is insufficient to run a BigBlueButton server.  For minimum memory and CPU requirements see

When running BigBlueButton on Amazon EC2, we recommend you use a c1.medium instance (Hi-CPU On-Demand Instances).  For more information on scalability, see


Regards,... Fred

Raymond Jender

unread,
Nov 12, 2011, 4:47:06 PM11/12/11
to bigblueb...@googlegroups.com
Thanks for that Fred.  I guess EC2 is out for me....

Pablo Sotomayor

unread,
Nov 13, 2011, 8:15:20 AM11/13/11
to bigblueb...@googlegroups.com
There is way to enable h.264 video codec for bbb or there is no code written yet?

f.erfurth

unread,
Nov 14, 2011, 8:46:49 AM11/14/11
to bigblueb...@googlegroups.com
Hi Stephen,
thank you for your reply. I tried your server. But still my settings results better quality (lesser squares) than the one on your server.

@Fred: We don't want install beta on our productivy server. Sorry. But as soon as 0.8 is released I want update our productivy server.

I still have question. Are somewhere documentation about the following parameters:

       camKeyFrameInterval="5"
       camModeFps="15"
       camQualityBandwidth="0"
       camQualityPicture="70"
       h264Level="4.1"
       h264Profile="main"

I think h264Level and h264Profile are not supportet yet since Fred said bbb doesn't use h264 now.

I try to understand the remaining parameters.
camKeyFrameInterval="5" means, every fifth frame contains full image. The remaining 4 frames are just "diffs" to last image. Am I right? If so, then higher number means lower bandwith usage but slightly lesser quality. Right?

camModeFps="15" means 15 frames per seconds. Right?

I don't understand what camQualityBandwith="0" and camQualityPicture="70" means.

Which of those parameters are available for 0.71a? Or are all of them available from 0.8 onward only? Are there other codecs available/selectable?

Thank you very much!
cu Floh

Fred Dixon

unread,
Nov 14, 2011, 8:52:06 AM11/14/11
to bigblueb...@googlegroups.com
See

http://code.google.com/p/bigbluebutton/wiki/ClientConfiguration#Videoconf_Module

Most of these parameters are only available in 0.8.


> I don't understand what camQualityBandwith="0" and camQualityPicture="70"
> means.

See the above link for more information. In 0.8, reducing
camQualityPicture will increase your framerate (at the cost of picture
quality).

We added these parameters in 0.8 so folks could easily modify their
video settings and experiment with different values.

Regards,... Fred
--
BigBlueButton Developer

http://bigbluebutton.org/
http://code.google.com/p/bigbluebutton

Pablo Sotomayor

unread,
Nov 15, 2011, 7:20:14 AM11/15/11
to bigblueb...@googlegroups.com

Richard Alam

unread,
Nov 15, 2011, 9:25:10 AM11/15/11
to bigblueb...@googlegroups.com
Hi,

On Tue, Nov 15, 2011 at 7:20 AM, Pablo Sotomayor <pa...@sotomayor.com.br> wrote:
> Can i enable h.264 support in bbb 0.8 ?
>

No, since the client is built for 10.3 Flash Player version.

> http://www.realeyes.com/blog/2011/10/31/new-in-flash-player-11-encoding-live-video-to-h-264avc/

You can build the client following the instructions on your link by
modifying build.xml and uncommenting the H264
relevant code in VideoPoxy.as (I believe). There should be
instructions in the code.

Richard

--
---
BigBlueButton
http://www.bigbluebutton.org
http://code.google.com/p/bigbluebutton

Pablo Sotomayor

unread,
Nov 15, 2011, 9:42:36 AM11/15/11
to bigblueb...@googlegroups.com
OMG!
thank you very much Richard
i already have uncommented the VideoProxy.as h.264 related lines, but not the build.xml pointing to the flash player 11

BUILD SUCCESSFUL
Total time: 1 minute 58 seconds

Pablo

Stéphane

unread,
Nov 16, 2011, 2:37:59 AM11/16/11
to BigBlueButton-dev
Hi Pablo,

did you notice any changes to the video quality? What are the benefits
of using h.264?

Kind regards,
Stéphane

On Nov 15, 3:42 pm, Pablo Sotomayor <pa...@sotomayor.com.br> wrote:
> OMG!
> thank you very much Richard
> i already have uncommented the VideoProxy.as h.264 related lines, but not the build.xml pointing to the flash player 11
>
> BUILD SUCCESSFUL
> Total time: 1 minute 58 seconds
>
> Pablo
>
> On 15/11/2011, at 12:25, Richard Alam wrote:
>
>
>
>
>
>
>
> > Hi,
>
> > On Tue, Nov 15, 2011 at 7:20 AM, Pablo Sotomayor <pa...@sotomayor.com.br> wrote:
> >> Can i enable h.264 support in bbb 0.8 ?
>
> > No, since the client is built for 10.3 Flash Player version.
>
> >>http://www.realeyes.com/blog/2011/10/31/new-in-flash-player-11-encodi...
>
> > You can build the client following the instructions on your link by
> > modifying build.xml and uncommenting the H264
> > relevant code in VideoPoxy.as (I believe). There should be
> > instructions in the code.
>
> > Richard
>
> >> Pablo Sotomayor
> >> pa...@sotomayor.com.br
>
> >> On 14/11/2011, at 11:52, Fred Dixon <ffdi...@gmail.com> wrote:
>
> >>> See
>
> >>>  http://code.google.com/p/bigbluebutton/wiki/ClientConfiguration#Video...
>
> >>> Most of these parameters are only available in 0.8.
>
> >>>> I don't understand what camQualityBandwith="0" and camQualityPicture="70"
> >>>> means.
>
> >>> See the above link for more information.  In 0.8, reducing
> >>> camQualityPicture will increase your framerate (at the cost of picture
> >>> quality).
>
> >>> We added these parameters in 0.8 so folks could easily modify their
> >>> video settings and experiment with different values.
>
> >>> Regards,... Fred
> >>> --
> >>> BigBlueButton Developer
> >>>http://bigbluebutton.org/
> >>>http://code.google.com/p/bigbluebutton
>
> >>>>> Floh,   try usinghttp://demo.207me.com, its .8beta 2,  i'm working
> >>>>> with a deaf school in UK, trying to do the same thing, and have
> >>>>> tweaked the video settings to get faster framerates..    The quality
> >>>>> is set lower,  but frames move pretty fast..
>
> >>>>> Let me know how this works for you... i think they are trying to sign
> >>>>> to each other, not necessarily reading lips.
>
> >>>>> If it seems to work i can share settings with you,
>
> >>>>> regard,
> >>>>> Stephen
> >>>>> hostbbb.com
>
> >>>> --
> >>>> You received this message because you are subscribed to the Google Groups
> >>>> "BigBlueButton-dev" group.
> >>>> To post to this group, send email to bigblueb...@googlegroups.com.
> >>>> To unsubscribe from this group, send email to
> >>>> bigbluebutton-...@googlegroups.com.
> >>>> For more options, visit this group at
> >>>>http://groups.google.com/group/bigbluebutton-dev?hl=en.
>
> >>> --
> >>> You received this message because you are subscribed to the Google Groups "BigBlueButton-dev" group.
> >>> To post to this group, send email to bigblueb...@googlegroups.com.
> >>> To unsubscribe from this group, send email to bigbluebutton-...@googlegroups.com.
> >>> For more options, visit this group athttp://groups.google.com/group/bigbluebutton-dev?hl=en.
>
> >> --
> >> You received this message because you are subscribed to the Google Groups "BigBlueButton-dev" group.
> >> To post to this group, send email to bigblueb...@googlegroups.com.
> >> To unsubscribe from this group, send email to bigbluebutton-...@googlegroups.com.
> >> For more options, visit this group athttp://groups.google.com/group/bigbluebutton-dev?hl=en.

Pablo Sotomayor

unread,
Nov 16, 2011, 5:55:59 AM11/16/11
to bigblueb...@googlegroups.com
I didn see any changes in video quality at the moment, using 320x240 webcam video.

In theory, h.264 deliver a better video quality using less bandwith. The Flash player 11 also uses graphics card acceleration to decode video, descreasing cpu usage too.

I will do some tests by night and report to the list.

Regards,

Pablo

Pablo Sotomayor

unread,
Mar 25, 2012, 6:22:09 AM3/25/12
to bigblueb...@googlegroups.com
Hi Fred,

I think there is a wrong info on the FAQ


Where says:

Can I install BigBlueButton on EC2?

Yes. Canonical provides official Ubuntu EC2 images for Ubuntu 10.04 32-bit and 64-bit. To install BigBlueButton on EC2, do the following:

  1. Modify the default security group in EC2(or create a new security group) so you have port 80, 9123, and 9135 open (see FAQ).

the ports are 80, 1935 and 9123

Fred Dixon

unread,
Mar 25, 2012, 10:09:22 AM3/25/12
to bigblueb...@googlegroups.com
Fixed -- thanks!

Regards,... Fred
BigBlueButton on twitter: @bigbluebutton
Reply all
Reply to author
Forward
0 new messages