Ya'oops when a decendent is not a descendent. :(  I have checked in a fix to h323plus CVS so the correct H323PluginVideoCodec::SetMaxBitRate() is called.
 
Thanks again
Simon
-----Original Message-----
From: h323plus-bounces@lists.packetizer.com [mailto:h323plus-bounces@lists.packetizer.com]On Behalf Of JF NP
Sent: Tuesday, February 12, 2008 5:48 PM
To: H323plus
Subject: Re: [h323plus] MyPhone 0.4 Released

Hi,

Simon, I've traced down using the VS 2003 debugger, and the function which is being called is H323VideoCodec::SetmaxBitRate(), because the function OpenVideoChannel() receives a reference to H323VideoCodec, not to H323PluginVideoCodec. You can see this easily setting a breakpoint in this line codec.SetMaxBitRate(videoBitRate * 1024);, stepping into it and seeing the call stack. Here it is:

>    MyPhone.exe!H323VideoCodec::SetMaxBitRate(unsigned int bitRate=52428800)  Line 737    C++
     MyPhone.exe!CMyPhoneEndPoint::OpenVideoChannel(H323Connection & connection={...}, int isEncoding=1, H323VideoCodec & codec={...})  Line 522 + 0x1d    C++
     MyPhone.exe!H323Connection::OpenVideoChannel(int isEncoding=1, H323VideoCodec & codec={...})  Line 4361    C++
     MyPhone.exe!H323VideoCodec::Open(H323Connection & connection={...})  Line 587    C++
     MyPhone.exe!H323_RTPChannel::Open()  Line 1171 + 0x18    C++
     MyPhone.exe!H245NegLogicalChannel::OpenWhileLocked(const H323Capability & capability={...}, unsigned int sessionID=2, unsigned int replacementFor=0, unsigned int roleLabel=0)  Line 843 + 0x19    C++
     MyPhone.exe!H245NegLogicalChannel::Open(const H323Capability & capability={...}, unsigned int sessionID=2, unsigned int replacementFor=0, unsigned int roleLabel=0)  Line 754 + 0x1b    C++
     MyPhone.exe!H245NegLogicalChannels::Open(const H323Capability & capability={...}, unsigned int sessionID=2, H323ChannelNumber & channelnumber={...}, unsigned int replacementFor=0, unsigned int roleLabel=0)  Line 1285    C++
     MyPhone.exe!H245NegLogicalChannels::Open(const H323Capability & capability={...}, unsigned int sessionID=2, unsigned int replacementFor=0)  Line 1262 + 0x1d    C++
     MyPhone.exe!H323Connection::OpenLogicalChannel(const H323Capability & capability={...}, unsigned int sessionID=2, H323Channel::Directions dir=IsTransmitter)  Line 4026 + 0x21    C++
     MyPhone.exe!H323Connection::SelectDefaultLogicalChannel(unsigned int sessionID=2)  Line 3978 + 0x18    C++
     MyPhone.exe!H323Connection::OnSelectLogicalChannels()  Line 3923    C++
     MyPhone.exe!H323Connection::InternalEstablishedConnectionCheck()  Line 3887    C++
     MyPhone.exe!H323Connection::HandleControlData(PPER_Stream & strm={...})  Line 3040    C++
     MyPhone.exe!H323Connection::HandleReceivedControlPDU(int readStatus=1, PPER_Stream & strm={...})  Line 2968 + 0x12    C++
     MyPhone.exe!H323Connection::HandleControlChannel()  Line 2950 + 0x13    C++
     MyPhone.exe!H245TransportThread::Main()  Line 694    C++
     MyPhone.exe!PThread::MainFunction(void * threadPtr=0x0160fa48)  Line 1268    C++
     msvcr71d.dll!_threadstartex(void * ptd=0x0160ff48)  Line 241 + 0xd    C
     kernel32.dll!7c80b683()    


Best regards,

----- Mensaje original ----
De: Simon Horne <s.horne@packetizer.com>
Para: JF NP <jfnp090274@yahoo.es>
CC: H323plus <h323plus@lists.packetizer.com>
Enviado: martes, 12 de febrero, 2008 2:09:55
Asunto: RE: [h323plus] MyPhone 0.4 Released



H323PluginVideoCodec::SetMaxBitRate() sends a messages "Max Bit Rate" to the
plugin codec to set the maximum bitrate. This function also overrides
H323VideoCodec::SetMaxBitRate() since H323PluginVideoCodec is a descendent
of H323VideoCodec so the problem most likely is in the plugin codec not
setting the max bit rate. I suggest you look at the H.263 plugin codec
perhaps there is something missing.

Simon

> -----Original Message-----
> From: h323plus-bounces@lists.packetizer.com
> [mailto:h323plus-bounces@lists.packetizer.com]On Behalf Of JF NP
> Sent: Tuesday, February 12, 2008 2:50 AM
> To: H323plus
> Subject: Re: [h323plus] MyPhone 0.4 Released
>
>
> Hi,
>
> I've downloaded the latest version of the plugin
> codecs from the CVS, and I've seen that the frames are
> being grabbed at 10 fps.
> Additional testing has showed me that the problem
> seems to be with the following line of code, in
> CMyPhoneEndPoint::OpenVideoChannel:
> codec.SetMaxBitRate(videoBitRate * 1024);
>
> I think that the problem is that codec is an instance
> of H323VideoCodec, and the implementation of
> H323VideoCodec::SetMaxBitRate does nothing but an
> assignment. I think that what it should be called is
> H323PluginVideoCodec::SetMaxBitRate, which is in fact
> a descendant of H323VideoCodec. I've tried to do a
> cast from H323VideoCodec to H323PluginVideoCodec, but
> I get compilation erros due to the undefined class
> H323PluginVideoCodec, because in fact it is defined in
> a *.cxx file, not a *.h.
>
> Am I correct? Or am I missing something?
>
> Best regards,
>
> --- Simon Horne <s.horne@packetizer.com> escribió:
>
> > This is strange. The bitrate is sent to the plugin
> > codec. What codec are you using? what version of
> > h323plus and how old is your video plugin? I updated
> > the H.263 plugin about a month or so ago, prior to
> > that it just ignored these settings so that might be
> > the problem.
> >
> > From the tracefile make sure the video frames are
> > being grabbed at the right fps (for 10 fps every
> > 100ms)
> >
> > Simon
> >  -----Original Message-----
> >  From: h323plus-bounces@lists.packetizer.com
> > [mailto:h323plus-bounces@lists.packetizer.com]On
> > Behalf Of JF NP
> >  Sent: Friday, February 08, 2008 8:57 PM
> >  To: H323plus
> >  Subject: Re: [h323plus] MyPhone 0.4 Released
> >
> >
> >  Hi, Simon:
> >
> >  I've downloaded the latest CVS code with the
> > support for bitrate, fps and Adaptive packet delay.
> > But it seems that MyPhone2 is not using the
> > settings. Let me explain this:
> >  1. I've configured the following vlues for video:
> > fps = 10, Maxbitrate =50 kbit/s. and quality = 15.
> > Size = QCIF.
> >  2. If I capture the video packets with Wireskark,
> > I can see that the bitrate is about 300kbit/s.
> >
> >  Where is the problem? Am I missing any additional
> > setup?
> >
> >  Best regards,
> >
> >
> >  ----- Mensaje original ----
> >  De: Simon Horne <s.horne@packetizer.com>
> >  Para: JF NP <jfnp090274@yahoo.es>; H323plus
> > <h323plus@lists.packetizer.com>
> >  Enviado: viernes, 8 de febrero, 2008 3:53:05
> >  Asunto: RE: [h323plus] MyPhone 0.4 Released
> >
> >  
> >  looks like you are right.
> >  I have added support for bitrate, fps and also
> > adaptive packet delay to the CVS.
> >
> >  Simon
> >    -----Original Message-----
> >    From: h323plus-bounces@lists.packetizer.com
> > [mailto:h323plus-bounces@lists.packetizer.com]On
> > Behalf Of JF NP
> >    Sent: Thursday, February 07, 2008 8:44 PM
> >    To: H323plus
> >    Subject: Re: [h323plus] MyPhone 0.4 Released
> >
> >
> >    Hi,
> >
> >    I'v been looking at MyPhone2 0.4 source code,
> > and I was wondering how is the videobitrate, fps,
> > etc... managed, because I've seen that all of this
> > parameters are read from the configuration, but they
> > are never used.
> >
> >    Best regards,
> >
> >
> >    ----- Mensaje original ----
> >    De: Simon Horne <s.horne@packetizer.com>
> >    Para: H323plus <h323plus@lists.packetizer.com>
> >    Enviado: viernes, 1 de febrero, 2008 21:57:15
> >    Asunto: [h323plus] MyPhone 0.4 Released
> >
> >
> >    Guys
> >
> >    I have uploaded MyPhone 0.4 installer to the
> > h323plus website to garnish
> >    some feedback on the upcoming 1.20 release on
> > h323plus.
> >    Download here
> >
> >
> http://www.h323plus.org/source/download/MyPhoneSetup04.exe
> > (2.12Mb)
> >
> >    Important Features
> >    Native NAT traversal with GnuGk : This uses the
> > new GnuGk NAT module now in
> >    H323plus. You can send and receive calls behind
> > a NAT when registered to
> >    GnuGk on the public internet. The only
> > requirement is that you enable
> >    SupportNatedEndpoints in GnuGk. Note this is the
> > GnuGk NAT Method
> >    http://www.gnugk.org/nat-traversal.html. It is
> > not the standard H.460.18/19.
> >
> >    Built off the latest h323plus CVS. (hopefully
> > the baseline for v1.20)
> >
> >    Notes:
> >    To run in debug mode start myphone with
> > commandline switches -ttttt (number
> >    of t indicate tracelevel)
> >    After Install adjust the audio and video codecs
> > to your preferred order.
> >    G.711 & H.261 are the default.
> >
> >    The installer contains the full myphone2 source
> > code. The exe was built with
> >    vs2003. If you wish to build it with a later
> > version of visual studio,
> >    although not tested, you will need the $ version
> > as the express version does
> >    not seem to support MFC.
> >
> >    Hopefully next week if there are not too many
> > problems we will do the
> >    snapshot and release v1.20.
> >
> >    Simon
> >
> >
> >
> >
> >
> >
> >
> >
> ------------------------------------------------------------------
> ----------
> >
> >    ¿Con Mascota por primera vez? - Sé un mejor
> > Amigo
> >    Entra en Yahoo! Respuestas.
> >
> >
> >
> >
> >
> >
> ------------------------------------------------------------------
> ------------
> >
> >  ¿Con Mascota por primera vez? - Sé un mejor
> > Amigo
> >  Entra en Yahoo! Respuestas.
> >
>
>
>
>
> ______________________________________________
> ¿Con Mascota por primera vez? Sé un mejor Amigo. Entra en Yahoo!
> Respuestas http://es.answers.yahoo.com/info/welcome





¿Con Mascota por primera vez? - Sé un mejor Amigo
Entra en Yahoo! Respuestas.