[Helix-server-dev] CR: MDP preroll
Go Hori ghori at real.comWe should create static functions to get these values with stream header passed in to prevent duplication of code. On Wed, 1 Dec 2004, Jamie Gordon wrote: > We are obviously referring to two different things as "MDP". :) > We should be able to safely add a new stream header using this > logic to CHeaderHandler::StreamHeaderReady and just look for that > single header in both streamgroupmanager and packetstream if the > PacketStream won't be needed for PPM delivery. If we need this > value for PPM delivery it will have to have the same logic or > call a common function somewhere in PPM code path. > > Jamie > > Vijay Shetty wrote: > > > I think this requires a change in MDP too. MDP currently uses the > > "PreRoll" field from Stream header. We have a few options to resolve this, > > > > - add the same logic in MDP (not good for maintenance, any change in the > > logic will require changing code at multiple places) > > - extend the InputSource interface to provide this calculated value. ( > > this would require a little extra work in MDP to get to the right value) > > - add an extra field to the stream header which has this value (this > > will require a trivial change in MDP) > > > > thanks > > > > Vijay > > > > > > > > At 11:22 AM 12/1/2004, Jamie Gordon wrote: > > > >> I am not able to fully test that logic, but it changes the preroll > >> used to calculate the upshift threshhold to use the ActualPreroll. > >> > >> The other affected uses of this preroll value are > >> X-InitPreDecBufPeriod calculation (for advertising to client) and > >> Predata calculation. The predata is used only for checking > >> predecbufsize in the stream selector, which should be updated to > >> instead use x-predecbufsize when available. > >> > >> Jamie > >> > >> Go Hori wrote: > >> > >>> Jamie, > >>> Can you speak to the implication of this change to our rate manager > >>> logic > >>> when playing RM contents to microcore client? > >>> On Mon, 29 Nov 2004, Jamie Gordon wrote: > >>> > >>>> Synopsis > >>>> ======== > >>>> MDP preroll fixup. > >>>> > >>>> Branches: SERVER_CURRENT (HEAD), SERVER_11_0_STABLE > >>>> Suggested Reviewer: ghori > >>>> > >>>> > >>>> Description > >>>> =========== > >>>> Updates MDP preroll calculation to use, in order of preference as > >>>> defined in the client side spec > >>>> https://client.dev.prognet.com/wiki.cgi/PrerollHandling > >>>> > >>>> 1. ActualPreroll > >>>> 2. X-InitPreDecBufPeriod + X-InitPostDecBufPeriod > >>>> 3. Preroll > >>>> 4. Default (1 sec) > >>>> > >>>> > >>>> Files Affected > >>>> ============== > >>>> server/engine/inputsource/streamgroupmgr.cpp > >>>> > >>>> > >>>> Testing Performed > >>>> ================= > >>>> Unit Tests: > >>>> - Verified (in debugger and X-InitPreDecBufPeriod in SDP) > >>>> that the appropriate values are chosen depending on which values > >>>> are present. > >>>> > >>>> Integration Tests: > >>>> None > >>>> > >>>> Leak Tests: > >>>> None > >>>> > >>>> Performance Tests: > >>>> None > >>>> > >>>> Platforms Tested: win32-i386-vc7 > >>>> Build verified: linux-2.4-glibc6-i686, win32-i386-vc7, > >>>> sunos-5.8-sparc-server > >>>> > >>>> > >>>> QA Hints > >>>> =============== > >>>> - Can be tested by checking the calculated a=X-InitPreDecBufPeriod in > >>>> the SDP. > >>>> > > > -- Go Hori ghori at real.com