Claims
- 1. An improved method for providing access to resources for use by a client, the method comprising:
storing a source set of resources; receiving an initial request from the client for information about resources available for access; determining possible media types appropriate for the client that may be derived from the source set of resources; based at least in part on said possible media types and said source set of resources, determining an extended set of resources for the client; communicating information about the extended set of resources to the client; and processing subsequent requests from the client for access to resources from said extended set of resources.
- 2. The method of claim 1, wherein the client is located remotely from the source set of resources.
- 3. The method of claim 1, wherein the resources are maintained by a server.
- 4. The method of claim 1, wherein said initial request from the client is received by a server with Internet connectivity.
- 5. The method of claim 4, wherein said server controls the source set of resources.
- 6. The method of claim 1, wherein said initial request from the client originates from a browser operating at the client.
- 7. The method of claim 1, wherein said initial request comprises an HTML request.
- 8. The method of claim 7, wherein said HTML request includes client identification information.
- 9. The method of claim 1, wherein said source set of resources includes bitmap resources.
- 10. The method of claim 1, wherein said source set of resources includes audio resources.
- 11. The method of claim 1, wherein said source set of resources includes text resources.
- 12. The method of claim 1, wherein said step of determining possible media types appropriate for the client includes:
consulting a device capabilities database for determining particular capabilities of the client.
- 13. The method of claim 12, wherein said device capabilities database is at a remote location from the client.
- 14. The method of claim 1, wherein said step of determining possible media types appropriate for the client includes:
using a model number of the client to look up device capability information for the client.
- 15. The method of claim 14, wherein said model number is transmitted as part of said initial request.
- 16. The method of claim 1, wherein said step of determining possible media types includes:
determining a virtual set of possible media types that are appropriate for the client.
- 17. The method of claim 1, wherein said virtual set comprises a superset of resources that includes media types that resources from the source set may be transformed into.
- 18. The method of claim 17, wherein said virtual set includes at least one image format that may be derived from an image format in the source set of resources.
- 19. The method of claim 18, wherein at least one image format is derived from an image format in the source set of resources using an image transformation.
- 20. The method of claim 19, wherein said image transformation includes transforming from a non-JPEG format to a JPEG-compatible format.
- 21. The method of claim 19, wherein said image transformation includes transforming from one bitmap format to another.
- 22. The method of claim 1, wherein said step of determining an extended set of resources includes:
determining an intersection between the source set of resources and said possible media types.
- 23. The method of claim 22, further comprising:
specifying preferred media types for the client; and constraining the extended set of resources to only include preferred media types for the client.
- 24. The method of claim 23, wherein preferred media types for the client are specified by the client when requesting access to resources.
- 25. The method of claim 23, wherein preferred media types for the client are specified by a device capabilities database.
- 26. The method of claim 23, wherein preferred media types for the client are specified by a server that receives requests from the client.
- 27. The method of claim 26, wherein preferred media types for the client are specified at the time the client requests access to a particular resource from the extended set of resources.
- 28. The method of claim 1, wherein the client includes a mobile device running application software.
- 29. The method of claim 1, wherein the client includes a precompiler that binds resources to an application.
- 30. The method of claim 1, further comprising:
upon receiving a request from the client for access to a resource from said extended set of resources, creating the resource by transforming one of the resources from the source set of resources into a resource having a media type appropriate for the client.
- 31. The method of claim 1, wherein said step of determining an extended set of resources further comprises:
applying convergence to the extended said of resources in instances where resources may be combined together into fewer resources.
- 32. The method of claim 1, wherein said step of communicating information about the extended set of resources to the client includes:
transmitting a directory of virtual resources to the client.
- 33. The method of claim 32, wherein said client is unaware that the resources indicated on the directory are derived from the source set of resources.
- 34. The method of claim 1, further comprising:
upon receipt of a request for access to a resource, determining whether the resource belongs to a related group of resources; and if the resource belongs to a related group of resources, enforcing a group-wide constraint on the resources.
- 35. The method of claim 34, wherein said group-wide constraint includes constraining resources belonging to the group to share a common palette.
- 36. The method of claim 1, wherein said step of determining possible media types appropriate for the client includes:
based at least in part on the request, determining a type for the client; and based at least in part on the determined type, determining capabilities of the client.
- 37. The method of claim 36, wherein said type comprises a device type.
- 38. The method of claim 36, wherein said type comprises a browser type.
- 39. A computer-readable medium having processor-executable instructions for performing the method of claim 1.
- 40. A downloadable set of processor-executable instructions for performing the method of claim 1.
- 41. A system providing a client with access to resources, the system comprising:
a repository storing an original set of resources; a server for:
receiving requests from clients for information about resources available for access; determining resources appropriate for clients that may be derived from the original set of resources; creating derived resources for accessed by clients; and providing clients with access to the derived resources.
- 42. The system of claim 41, wherein said repository comprises a central repository.
- 43. The system of claim 41, wherein said repository includes Internet connectivity.
- 44. A method for supplying media in a format suitable for a plurality of client devices having different capabilities, the method comprising:
storing source media for access by a plurality of client devices; in response to a request for media from a particular client device, determining capabilities of said particular client device; based at least in part on the determined capabilities of said particular client device and the source media, determining a set of media appropriate for delivery to said particular client device; and delivering the determined set of media to said particular client device.
- 45. The method of claim 44, further comprising
generating a set of media in a format appropriate for delivery to said particular client device.
- 46. The method of claim 45, wherein said step of generating a set of media includes transforming the source media into a format appropriate for delivery.
- 47. The method of claim 46, wherein said transformation step includes palette reducing the source media.
- 48. The method of claim 46, wherein said transformation step includes changing the size of the source media.
- 49. The method of claim 46, wherein said transformation step includes applying interdependent constraints to a set of media.
- 50. The method of claim 44, wherein said step of determining capabilities includes examining the request submitted by said particular client device.
- 51. The method of claim 44, wherein said step of determining capabilities includes determining capabilities from a database
- 52. The method of claim 51, wherein said step of determining capabilities from a database includes determining capabilities based at least in part upon a device class for said particular client device.
- 53. The method of claim 44, wherein said step of determining capabilities includes determining an appropriate resolution for rendering media at said particular client device.
- 54. The method of claim 44, wherein said step of determining capabilities includes determining an appropriate color format for rendering media at said particular client device.
- 55. The method of claim 44, wherein said delivering step includes the substeps of:
delivering a list of the determined set of media items available to said particular client device; and in response to a request for a particular media item in said list, delivering the media item to said particular client device.
- 56. The method of claim 55, further comprising:
receiving at least one format preference from said particular client device; and delivering the media item to said particular client device in the preferred format.
- 57. An improved method for wireless download of a gaming application to a target device, the method comprising:
separating program logic and media resources of a gaming application; in response to a request for a gaming application received from a target device, delivering the program logic of the gaming application to the target device; employing at least one on-line storage resource for the media resources of the gaming application; and based upon requests received from the program logic of the gaming application on the target device, dynamically delivering the media resources of the application to the target device, said media resources being formatted for delivery to the client device based upon the capabilities of the target device.
RELATED APPLICATIONS
[0001] The present application is related to the following commonly-owned application(s): application Ser. No. 10/273,670 (Docket No. LS/0033.01), filed Oct. 18, 2002, entitled “Imaging System Providing Dynamic Viewport Layering”. The disclosure of the foregoing application is hereby incorporated by reference in its entirety, including any appendices or attachments thereof, for all purposes.