[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-common-dev
Subject:    RE: [Common-dev] FW: Giving priority to plugins
From:       "Eric Hyche" <ehyche () real ! com>
Date:       2009-02-18 16:04:02
Message-ID: 009901c991e2$84ff9ab0$8efed010$ () com
[Download RAW message or body]

I understand the motivation behind this change, but I am concerned that
we are adding additional legs to an already hacky plugin priority solution.

Currently, our plugin priority solution is that plugins with
"RealNetworks" in their "Description" string get higher priority than
plugins without "RealNetworks" in their description string. This
is, of course, a real hack. Sometimes you have to use hacks in the
short-term, but I think you want to avoid expanding and extending
hacks like this.

Doing a "real" plugin priority solution is not that difficult,
and I would rather see us do that than continue to modify/extend
the description-string hack.

All that we would have to do is:

1) In the plugin handler, look for a "PluginPriority" UINT32 plugin
   property and sort the plugins by that value, when returning 
   enumerated lists of plugins.

2) For the plugins that are currently using the description string
   hack (just a few), make sure they implement IHXPluginProperties and make
   sure they set the "PluginPriority" property.

3) Establish a scale and default values for priority. I would think
   that something like 0-1000 would be adequate with a default
   priority value of 500. Therefore, in the plugin handler,
   if the plugin did not have a "PluginPriority" property,
   then it would get assigned a priority of 500.

I don't think this is really that much work. If doing
this work right now is out of the question, then I'm Ok
with the current change. But we cannot continue to 
make these kind of changes.

Eric

=======================================
Eric Hyche (ehyche@real.com)
Principal Engineer
RealNetworks, Inc.


>-----Original Message-----
>From: common-dev-bounces@helixcommunity.org [mailto:common-dev-bounces@helixcommunity.org] On Behalf
>Of Jyotsana Rathore
>Sent: Tuesday, February 17, 2009 10:48 PM
>To: 'Jyotsana Rathore'; common-dev@helixcommunity.org
>Cc: atlas@real.com
>Subject: RE: [Common-dev] FW: Giving priority to plugins containing "Hardware"over others
>
>Rishi raised a good point offline regarding this fix that if there are multiple plugins present
>including "Hardware", "RealNetworks", "Helix DNA"
>etc then "Hardware" should be given first priority and the second priority should be given to
>"RealNetworks".
>
>My previous fix only ensured the former case i.e. "Hardware" is given the first priority because
>plugins which contained "Hardware" in their description were added to the head of the list and all
>other plugins to the tail. Thus all other plugins were treated equally with no priority scheme.
>
>The updated fix ensures that plugins containing "RealNetworks" in the description are given the second
>priority.
>The updated diff is attached.
>
>Thanks,
>Jyotsana
>
>-----Original Message-----
>From: common-dev-bounces@helixcommunity.org
>[mailto:common-dev-bounces@helixcommunity.org] On Behalf Of Jyotsana Rathore
>Sent: Monday, February 09, 2009 10:53 AM
>To: common-dev@helixcommunity.org
>Subject: [Common-dev] FW: Giving priority to plugins containing "Hardware"over others
>
>Forwarding the client/common changes to common-dev mailing list.
>
>Thanks,
>Jyotsana
>
>-----Original Message-----
>From: Jyotsana Rathore [mailto:jrathore@real.com]
>Sent: Friday, February 06, 2009 3:12 PM
>To: atlas@real.com
>Subject: CR:Giving priority to plugins containing "Hardware" over others
>
>Modified by: jrathore@real.com
>Date: 02/06/09
>Project: RealPlayer for MID/Netbook
>
>Synopsis: Giving priority to plugins containing "Hardware" over others
>
>Overview: At present the Plugins containing "RealNetworks" or "Helix DNA"
>are given priority over others. This is changed to give priority to plugins containing "Hardware".
>CPluginEnumerator::Add function is changed to add the plugins containing "Hardware" to the head of the
>plugin list and others are added to the tail.
>So essentially, hardware plugins are tried first and if they fail on video format init function, then
>software plugins are tried next.
>
>Also the Hardware plug-in renderers are changed to contain this string, "Hardware".
>
>Files Added: None
>
>Files Modified:
>plghand2.cpp 	(client/common/container/plghand2.cpp)
>ipp_hx_h264vd.cpp (plug-in/helix/src/ipp_hx_h264vd.cpp)
>ipp_hx_mp2vd.cpp	(plug-in/helix/src/ipp_hx_mp2vd.cpp)
>ipp_hx_mp4vd.cpp 	(plug-in/helix/src/ipp_hx_mp4vd.cpp)
>ipp_hx_vc1vd.cpp	(plug-in/helix/src/ipp_hx_vc1vd.cpp)
>
>Image Size and Heap Use impact (Client -Only): None
>
>Platforms and Profiles Affected:
>Platform: linux-2.2-libc6-gcc32-i586
>Profile: helix-client-moblin
>
>Platforms and Profiles Build and Functionality Verified:
>Platform: linux-2.2-libc6-gcc32-i586
>Profile: helix-client-moblin
>target(s): splay and player_all
>
>Branch: hxclient_3_1_0_atlas_restricted
>
>Copyright assignment: I am a RealNetworks employee.
>
>Files Attached: plghand2.diff and libipp_hx_hardware.diff
>
>-Jyotsana



_______________________________________________
Common-dev mailing list
Common-dev@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/common-dev
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic