Josh
Unfortunately the OpenVideoChannel is called after the H.245 TCS stage so you cannot use it to negotiate a bandwidth limit for a call.
To set the Initial Bandwidth limit in the TCS there is a callback which is called when building. H323EndPoint::OnSetInitialBandwidth(H323VideoCodec * codec);
So you could do something like this in your code
void MyH323EndPoint::OnSetInitialBandwidth(H323VideoCodec * codec) { unsigned bitrate = <your rate in kbps> * 1000; if ((bitrate != 0) && (codec->GetMediaFormat().GetBandwidth() > bitrate)) { PTRACE(4,"My\tAdjusting maximum video bitrate to " << bitrate); codec->SetMaxBitRate(bitrate); } }
During a call the bitrate may change via FlowControl requests but will not exceed the value you set in this callback.
Simon
-----Original Message----- From: h323plus-bounces@lists.packetizer.com [mailto:h323plus-bounces@lists.packetizer.com] On Behalf Of J C Mercier Sent: 25 November 2011 05:08 To: h323plus@lists.packetizer.com Subject: [h323plus] Changing video codec transmit bit rate
Hi all,
How would one go about adjusting the video codec max transmission bit rate?
I understand thus can be done in OpenVideoChannel by calling codec.SetMaxBitRate but I I get no flow control supported when I attempted to do so.
I am using v 1.23 for H323plus downloaded from h323plus.org and pitlib v 2.8.5. I noticed that flow control is not supported in ptlib less than 2.9 but would there be another way of changing the bit rate?
Thanks!
Josh C.