[datatype-dev] MDF Video Renderer - Part 1,2,3

[datatype-dev] MDF Video Renderer - Part 1,2,3

Eric Hyche ehyche at real.com
Tue Oct 4 07:32:10 PDT 2005


These changes look good to me. They are OK for
checkin to CVS.

Remember, since you are creating a new top-level
directory (mdf) in the /cvsroot/datatype repository, then
you can use "cvs import" rather than "cvs add" to
get those files in. However, I would caution that if
you have any binary files to check in, I would not
use "cvs import" to get those in, but rather add
them afterwards with "cvs add -kb".

Eric

> -----Original Message-----
> From: john.wei at nokia.com [mailto:john.wei at nokia.com] 
> Sent: Tuesday, October 04, 2005 9:39 AM
> To: ehyche at real.com; clientapps-dev at helixcommunity.org; 
> datatype-dev at helixcommunity.org; Ribosome-dev at helixcommunity.org
> Cc: john.wei at nokia.com
> Subject: RE: [datatype-dev] MDF Video Renderer - Part 1,2,3
> 
> 
> Hi,
> 
> I have incoporated all comments and enclosed here a copy of 
> all changed files.
> Please review and comment. If no comments submitted, I am 
> ready to check into CVS after 24 hours.
> Thank you for all of your time and efforts.
> 
> List of the changes:
> 
> changes related to CR part 1:
> 
> 1) helix.bif
>     <module id="datatype_mdf" name="datatype/mdf" group="core">
>    changes to:
>     <module id="datatype_mdf" name="datatype/mdf" 
> group="core" type="name_only">
> 
> 2) datatype/group/video/Umakefil:
> 
>    if "HELIX_FEATURE_SYMBIAN_MDF" in project.defines:
>    changes to:
>    if project.IsDefined("HELIX_FEATURE_SYMBIAN_MDF"):
> 
> 3) datatype/mp4/payload/Umakefil:
> 
>    if "HELIX_FEATURE_SYMBIAN_MDF" in project.defines:
>    changes to:
>    if project.IsDefined("HELIX_FEATURE_SYMBIAN_MDF"):
> 
> 4) helix-client-s60-basic.pf
> 
>    Add
>    project.AddDefines('HELIX_FEATURE_SYMBIAN_MDF')
> 
> changes related to CR part 2:
> 
> 1) In mdfvidrend.h, mdfvidren.cpp:
> 
>    HELIX_FEATURE_VIDREND_MDF_VELOCITY
>    changes tO;
>    HELIX_FEATURE_PLAYBACK_VELOCITY
> 
> 2) mdfvidrend.cpp and all other files
>    malloc/free/realloc
>    changes to
>    new/delete, realloc is removed
> 
> 3) mdfvidrend.cpp and all other files
>         HX_RELEASE( xxxx );
>         xxxx= NULL;
>    change to:
>         HX_RELEASE( xxxx );
> 
> 
> 4) all files
>    !SUCCEEDED( retVal )
>    changes to:
>    FAILED(retVal)
> 
> 5) For safety's sake, you may want to check that objects
>    are non-NULL before you use them. For example in OnPreSeek() you
>    use m_pMdfPayloadFormat without first checking that it's non-NULL.
>    Although it would be unlikely that anything past OnHeader() would
>    be called if OnHeader() failed, it's good practice to either check
>    or assert, and it's best practice to check AND assert.
> 
> DONE for all files as much possible. In some cases, no changes made
> when this NULL check is obviously unnecessaily
> 
> 6) mdfpayloadfomrat.h .cpp
> 
> introduce a new function
>     static void EndianChange( TInt8* aLocation, TInt aLength );
> 
> 
> 7) mdfvidrend.cpp
>     ulFlags = HX_DISPLAY_WINDOW |
>         HX_DISPLAY_SUPPORTS_RESIZE |
>         HX_DISPLAY_SUPPORTS_FULLSCREEN |
>         HX_DISPLAY_SUPPORTS_VIDCONTROLS;
> 
> changes to:
>     ulFlags = HX_DISPLAY_WINDOW |
>         HX_DISPLAY_SUPPORTS_RESIZE;
> 
> 8) permanent UIDs are used
> 
> 
> changes related to CR part 3:
> None
> 
> 
> br,
> 
> --john
> 
> -----Original Message-----
> From: ext Eric Hyche [mailto:ehyche at real.com]
> Sent: Friday, September 30, 2005 3:04 PM
> To: Wei John (Nokia-ES-MSW/Dallas); clientapps-dev at helixcommunity.org;
> datatype-dev at helixcommunity.org; Ribosome-dev at helixcommunity.org
> Subject: RE: [datatype-dev] MDF Video Renderer - Part2: MDF Video
> Renderer
> 
> 
>  
> John,
> 
> One comment below...
> 
> > -----Original Message-----
> > From: john.wei at nokia.com [mailto:john.wei at nokia.com] 
> > Sent: Friday, September 30, 2005 3:55 PM
> > To: ehyche at real.com; clientapps-dev at helixcommunity.org; 
> > datatype-dev at helixcommunity.org; Ribosome-dev at helixcommunity.org
> > Subject: RE: [datatype-dev] MDF Video Renderer - Part2: MDF 
> > Video Renderer
> > 
> > 
> > Hi, Eric,
> > 
> > Thank you for the comments. Please see below for my replies. 
> > I will travel to India next week. So there might be some 
> > delay in responding to the review.
> 
> <snip>
> 
> > 2) In CMdfVideoRenderer you are using
> >    malloc and free to allocate/free zm_pStreamMimeTypes.
> >    Why malloc/free versus new/delete?
> > 
> > ====================
> > JW: In mdfpluginmanager.cpp, I use realloc to form the 
> > pMimeType. Everytime CMdfPluginManager finds a set of 
> > decoder, pp and depacktizer that support a mimetype, 
> > pMimeType will be realloc to include this mimetype. 
> > new/delete does not have correponding method to "realloc". 
> > pMimeType is passed out of CMdfPluginManager by method:
> > 
> > zm_pStreamMimeTypes = m_pPluginManager->GetSupportedMimeType();
> > 
> > Since pMimeType is using malloc/free/realloc, I use 
> > malloc/free to deal with zm_pStreamMimeTypes, though 
> > new/delete is also OK in the case of zm_pStreamMimeTypes.
> > 
> > I have no opinion on this. Please tell me what you like. I 
> > could use whatever you feel comfatable.
> > ====================
> 
> Let's stick with new/delete if possible.
> 
> Eric
> 
> ==============================================
> Eric Hyche (ehyche at real.com)
> Embedded Player and Technologies
> RealNetworks, Inc. 
> 
> 
> 




More information about the Datatype-dev mailing list
 

Site Map   |   Terms of Use   |   Privacy Policy   |   Contact Us

Copyright © 1995-2007 RealNetworks, Inc. All rights reserved. RealNetworks and Helix are trademarks of RealNetworks.
All other trademarks or registered trademarks are the property of their respective holders.