|
|
|
Synchronization of diverse media |
Methods, systems, and processes for the design and creation of rich-media applications via the internet7000180
Abstract
Rich-media applications are designed and created via the Internet. A host computer system, containing processes for creating rich-media applications, is accessed from a remote user computer system via an Internet connection. User account information and rich-media component specifications are uploaded via the established Internet connection for a specific user account. Rich-media applications are created, deleted, or modified in a user account via the established Internet connection. Rich-media components are added to, modified in, or deleted from scenes of a rich-media application based on information contained in user requests. After creation, the rich-media application is viewed or saved on the host computer system, or downloaded to the user computer system via the established Internet connection. In addition, the host process monitors the available computer and network resources and determines the particular component, scene, and application versions, if multiple versions exist, that most closely match the available resources.
Claims
I claim:
1. A method for users to create and maintain a rich-media application on said host website via the Internet comprising:
creating a user account; accessing a user account; and viewing available options for creating rich-media applications,
wherein said accessing a user account comprises one or more of the following: accessing account information; creating a new rich-media application; modifying an existing rich-media application; and accessing statistics from an existing rich-media application;
wherein accessing a user account comprises modifying an existing rich-media application and wherein said modifying an existing rich-media application comprises one or more of the following: accessing account information; accessing rich-media application information; accessing rich-media application specification information; saving said rich-media application; closing said rich-media application; deleting said rich-media application; publishing said rich-media application; previewing said rich-media application; accessing components used in the construction of said rich-media application; accessing component-editing graphical user interfaces; and accessing a scene of said rich-media application; and
wherein said modifying an existing rich-media application comprises publishing said rich-media application and wherein said publishing said rich-media application comprises downloading said rich-media application from said host computer to the user's remote computer system.
2. method for users to create and maintain a rich-media application on said host website via the Internet comprising:
creating a user account; accessing a user account; and viewing available options for creating rich-media applications,
wherein said accessing a user account comprises one or more of the following: accessing account information; creating a new rich-media application; modifying an existing rich-media application; and accessing statistics from an existing rich-media application;
wherein accessing a user account comprises modifying an existing rich-media application and wherein said modifying an existing rich-media application comprises one or more of the following: accessing account information; accessing rich-media application information; accessing rich-media application specification information; saving said rich-media application; closing said rich-media application; deleting said rich-media application; publishing said rich-media application; previewing said rich-media application; accessing components used in the construction of said rich-media application; accessing component-editing graphical user interfaces; and accessing a scene of said rich-media application; and
wherein said modifying an existing rich-media application comprises accessing said scene of said rich-media application and wherein said accessing said scene of said rich-media application comprises one or more of modifying said scene of said rich-media application; inserting a new scene into said rich-media application; editing scene information for said scene of said rich-media application; deleting said scene from said rich-media application; reordering said scene in said rich-media application; and selecting said scene from said rich-media application.
3. The method of claim 2, wherein said accessing said scene of said rich-media application comprises modifying said scene of said rich-media application and wherein said modifying said scene of said rich-media application comprises one or more of the following: editing a selected rich-media component; deleting a selected rich-media component; undoing the previous modification to a selected rich-media component; and saving said scene of said rich-media application.
4. The computer process of claim 3, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises; selecting said selected rich-media component from a hierarchical list of folders and rich-media components; closing graphical user interfaces used to edit non-selected rich-media components; opening a graphical user interface used to edit said selected rich-media component; and editing said selected rich-media component by means of said graphical user interface.
5. The method of claim 3, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises editing one or more of the following: the display of said rich-media component; the volume of said selected rich-media component; the link between said selected rich-media component and an associated menu entry; the text field of said selected rich-media component; the layout of said selected rich-media component; the size of said selected rich-media component; the transparency of said selected rich-media component; the timing of said selected rich-media component; the rotation of said selected rich-media component; the color of said selected rich-media component; the level of said selected rich-media component; and the position of said selected rich-media component.
6. The method of claim 5, wherein said editing a selected rich-media component comprises editing said display of said selected rich-media component and wherein said editing said display of said selected rich-media component comprises one or more of the following: selecting an introduction animation; selecting a loop animation; and selecting an exit animation.
7. The method of claim 6, wherein said editing said display of said selected rich-media component comprises selecting a loop animation and wherein said selecting a loop animation comprises one or more of the following: playing said loop animation a selected number of times; playing said loop animation no times; and playing said loop animation continuously.
8. The method of claim 7, wherein said editing said level of said selected rich-media component comprises modifying the level of said selected rich-media component by means of an ordered list representing the relative level of all components in the current scene and wherein said ordered list representing the relative level of all components in the current scene comprises one or more of the following: a list of all components in said current scene ordered by the depth of the components; a means of toggling the visibility of each component; and a means of toggling the ability to modify the depth of each component.
9. The method of claim 5, wherein said editing a selected rich-media component comprises editing said volume of said selected rich-media component and wherein said editing said volume of said selected rich-media component comprises modifying the volume of said selected rich-media component by means of one or more of the group consisting of: a slider bar; a textual input field; an up-volume button; and a down-volume button.
10. The method of claim 5, wherein said editing a selected rich-media component comprises editing said link between said selected rich-media component and said associated menu entry and wherein said editing said link between said selected rich-media component and said associated menu entry comprises one or more of the following: selecting the style of said associated menu entry; creating said link between said selected rich-media component and said associated menu entry; and selecting the uniform resource locator of said associated menu entry.
11. The method of claim 5, wherein said editing a selected rich-media component comprises editing said layout of said selected rich-media component and wherein said editing said layout of said selected rich-media component comprises; selecting a component type; and selecting from all preset and uploaded components matching said selected rich-media component's component type.
12. The method of claim 5, wherein said editing a selected rich-media component comprises editing said text field of said selected rich-media component and wherein said editing said text field of said selected rich-media component comprises one or more from the group consisting of: selecting a layout for said text field; selecting a font for the selected text; selecting a font size for the selected text; selecting a font color for the selected text; and selecting an alignment for said text field.
13. The method of claim 5, wherein said editing a selected rich-media component comprises editing said size of said selected rich-media component and wherein said editing said size of said selected rich-media component comprises: modifying the size of said selected rich-media component by means of a slider bar; modifying the size of said selected rich-media component by means of a textual input field; modifying the size of said selected rich-media component by means of corner handles; modifying the size of said selected rich-media component by means of side handles; and viewing a display of the current size of said selected rich-media component.
14. The method of claim 5, wherein said editing a selected rich-media component comprises editing said transparency of said selected rich-media component and wherein said editing said transparency of said selected rich-media component comprises: modifying the transparency of said selected rich-media component by means of a slider bar; modifying the transparency of said selected rich-media component by means of a textual input field; and viewing a display of the current transparency of said selected rich-media component.
15. The method of claim 5, wherein said editing a selected rich-media component comprises editing said timing of said selected rich-media component and wherein said editing said timing of said selected rich-media component comprises: modifying the timing of said selected rich-media component by means of a textual input field; modifying the timing of said selected rich-media component by means of a component start marker; modifying the timing of said selected rich-media component by means of a component end marker; modifying the timing of said selected rich-media component by means of a life bar; and viewing a display of the current duration of said selected rich-media component.
16. The method of claim 5, wherein said editing a selected rich-media component comprises editing said rotation of said selected rich-media component and wherein said editing said rotation of said selected rich-media component comprises: modifying the rotation of said selected rich-media component by means of a slider bar; modifying the rotation of said selected rich-media component by means of a textual input field; and viewing a display of the current rotation of said selected rich-media component.
17. The method of claim 5, wherein said editing a selected rich-media component comprises editing said color of said selected rich-media component and wherein said editing said color of said selected rich-media component comprises: modifying the color of said selected rich-media component by means of a slider bar; modifying the color of said selected rich-media component by means of a textual input field; and viewing a display of the current color of said selected rich-media component.
18. The method of claim 5, wherein said editing a selected rich-media component comprises editing said level of said selected rich-media component and wherein said editing said level of said selected rich-media component comprises: modifying the level of said selected rich-media component by means of a slider bar; modifying the level of said selected rich-media component by means of an ordered list representing the relative level of all components in the current scene; modifying the level of said selected rich-media component by means of a textual input field; and viewing a display of the current level of said selected rich-media component.
19. The method of claim 5, wherein said editing a selected rich-media component comprises editing said position of said selected rich-media component and wherein said editing said position of said selected rich-media component comprises: modifying the vertical position of said selected rich-media component by means of a textual input field; modifying the horizontal position of said selected rich-media component by means of a textual input field; modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component; and modifying the position of said selected rich-media component by means of a graphical input field.
20. The method of claim 19, wherein said editing said position of said selected rich-media component comprises modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component and wherein said modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component comprises: moving said selected rich-media component by means of said hit area associated with said selected rich-media component; placing said selected rich-media component by releasing said hit area associated with said selected rich-media component; and centering said selected rich-media component on the nearest grid point.
21. The method of claim 19, wherein said editing said position of said selected rich-media component comprises modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component and wherein said modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component comprises: moving said selected rich-media component by means of said hit area associated with said selected rich-media component; placing said selected rich-media component by releasing said hit area associated with said selected rich-media component; and aligning said selected rich-media component to the nearest guide line.
22. A method for users to create and maintain a rich-media application on said host website via the Internet comprising:
creating a user account; accessing a user account; and viewing available options for creating rich-media applications;
wherein said accessing a user account comprises one or more of the following: accessing account information; creating a new rich-media application; modifying an existing rich-media application; and accessing statistics from an existing rich-media application;
wherein said creating a new rich-media application comprises one or more of the following: accessing account information; accessing rich-media application information; accessing rich-media application specification information; saving said rich-media application; closing said rich-media application; deleting said rich-media application; publishing said rich-media application; previewing said rich-media application; accessing components used in the construction of said rich-media application; accessing component-editing graphical user interfaces; and accessing a scene of said rich-media application; and
wherein said creating a new rich-media application comprises publishing said rich-media application and wherein said publishing said rich-media application comprises downloading said rich-media application to the user's remote computer system from said host computer.
23. A method for users to create and maintain a rich-media application on said host website via the Internet comprising:
creating a user account; accessing a user account; and viewing available options for creating rich-media applications,
wherein said accessing a user account comprises one or more of the following: accessing account information; creating a new rich-media application; modifying an existing rich-media application; and accessing statistics from an existing rich-media application;
wherein said creating a new rich-media application comprises one or more of the following: accessing account information; accessing rich-media application information; accessing rich-media application specification information; saving said rich-media application; closing said rich-media application; deleting said rich-media application; publishing said rich-media application; previewing said rich-media application; accessing components used in the construction of said rich-media application; accessing component-editing graphical user interfaces; and accessing a scene of said rich-media application; and
wherein said creating a new rich-media application comprises accessing said scene of a rich-media application and wherein said accessing said scene of a rich-media application comprises one or more of modifying said scene of said rich-media application; inserting a new scene into said rich-media application; editing scene information for said scene of said rich-media application; deleting said scene from said rich-media application; reordering said scene in said rich-media application; and selecting said scene from said rich-media application.
24. The method of claim 23, wherein said accessing said scene of a rich-media application comprises modifying said scene of said rich-media application and wherein said modifying said scene of said rich-media application comprises one or more of the following: editing a selected rich-media component; deleting a selected rich-media component; undoing the previous modification to a selected rich-media component; and saving said rich-media application scene.
25. The method of claim 24, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises: selecting said selected rich-media component from a hierarchical list of folders and rich-media components; closing graphical user interfaces used to edit non-selected rich-media components; opening a graphical user interface used to edit said selected rich-media component; and editing said selected rich-media component by means of said graphical user interface.
26. The method of claim 24, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises editing one or more of the following: the display of said selected rich-media component; the volume of said selected rich-media component; the link between said selected rich-media component and said associated menu entry; the text field of said selected rich-media component; the layout of said selected rich-media component; the size of said selected rich-media component; the transparency of said selected rich-media component; the timing of said selected rich-media component; the rotation of said selected rich-media component; the color of said selected rich-media component; the level of said selected rich-media component; and the position of said selected rich-media component.
27. The method of claim 26, wherein said editing a selected rich-media component comprises editing said display of said selected rich-media component and wherein said editing said display of said selected rich-media component comprises one or more of the following: selecting an introduction animation; selecting a loop animation; and selecting an exit animation.
28. The method of claim 27, wherein said editing said display of said selected rich-media component comprises selecting a loop animation and wherein said selecting a loop animation comprises one or more of the following: playing said loop animation a selected number of times; playing said loop animation no times; and playing said loop animation continuously.
29. The method of claim 26, wherein said editing a selected rich-media component comprises editing said volume of said selected rich-media component and wherein said editing said volume of said selected rich-media component comprises modifying the volume of said selected rich-media component by means of one or more of the group consisting of: a slider bar; a textual input field; an up-volume button; and a down-volume button.
30. The method of claim 26, wherein said editing a selected rich-media component comprises editing said link between said selected rich-media component and said associated menu entry and wherein said editing said link between said selected rich-media component and said associated menu entry comprises one or more of the following: selecting the style of said associated menu entry; creating said link between said rich-media component and said associated menu entry; and selecting the uniform resource locator of said associated menu entry.
31. The method of claim 26, wherein said editing a selected rich-media component comprises editing said text field of said selected rich-media component and wherein said editing said text field of said selected rich-media component comprises one or more from the group consisting of: selecting a layout for said text field; selecting a font for the selected text; selecting a font size for the selected text; selecting a font color for the selected text; and selecting an alignment for said text field.
32. The method of claim 26, wherein said editing a selected rich-media component comprises editing said layout of said selected rich-media component and wherein said editing said layout of said selected rich-media component comprises: selecting a component type; and selecting from all preset and uploaded components matching said selected rich-media component's component type.
33. The method of claim 26, wherein said editing a selected rich-media component comprises editing said size of said selected rich-media component and wherein said editing said size of said selected rich-media component comprises: modifying the size of said selected rich-media component by means of a slider bar; modifying the size of said selected rich-media component by means of a textual input field; modifying the size of said selected rich-media component by means of corner handles; modifying the size of said selected rich-media component by means of side handles; and viewing a display of the current size of said selected rich-media component.
34. The method of claim 26, wherein said editing a selected rich-media component comprises editing said transparency of said selected rich-media component and wherein said editing said transparency of said selected rich-media component comprises: modifying the transparency of said selected rich-media component by means of a slider bar; modifying the transparency of said selected rich-media component by means of a textual input field; and viewing a display of the current transparency of said selected rich-media component.
35. The method of claim 26, wherein said editing a selected rich-media component comprises editing said timing of said selected rich-media component and wherein said editing said timing of said selected rich-media component comprises: modifying the timing of said selected rich-media component by means of one or more textual input fields; modifying the timing of said selected rich-media component by means of a component start marker; modifying the timing of said selected rich-media component by means of a component end marker; modifying the timing of said selected rich-media component by means of a life bar; and viewing a display of the current timing of said selected rich-media component.
36. The method of claim 26, wherein said editing a selected rich-media component comprises editing said rotation of said selected rich-media component and wherein said editing said rotation of said selected rich-media component comprises: modifying the rotation of said selected rich-media component by means of a slider bar; modifying the rotation of said selected rich-media component by means of a textual input field; and viewing a display of the current rotation of said selected rich-media component.
37. The method of claim 26, wherein said editing a selected rich-media component comprises editing said color of said selected rich-media component and wherein said editing said color of said selected rich-media component comprises: modifying the color of said selected rich-media component by means of a slider bar; modifying the color of said selected rich-media component by means of a textual input field; and viewing a display of the current color of said selected rich-media component.
38. The method of claim 26, wherein said editing a selected rich-media component comprises editing said level of said selected rich-media component and wherein said editing said level of said selected rich-media component comprises: modifying the level of said selected rich-media component by means of a slider bar; modifying the level of said selected rich-media component by means of an ordered list representing the relative level of all components in the current scene; modifying the level of said selected rich-media component by means of a textual input field; and viewing a display of the current level of said selected rich-media component.
39. The method of claim 38, wherein said editing said level of said selected rich-media component comprises modifying the level of said selected rich-media component by means of an ordered list representing the relative level of all components in the current scene and wherein said ordered list representing the relative level of all components in the current scene comprises one or more of the following: a list of all components in said current scene ordered by the depth of the components; a means of toggling the visibility of each component; and a means of toggling the ability to modify the depth of each component.
40. The method of claim 26, wherein said editing a selected rich-media component comprises editing said position of said selected rich-media component and wherein said editing said position of said selected rich-media component comprises: modifying the vertical position of said selected rich-media component by means of a textual input field; modifying the horizontal position of said selected rich-media component by means of a textual input field; modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component; and modifying the position of said selected rich-media component by means of a graphical input field.
41. The method of claim 40, wherein said editing said position of said selected rich-media component comprises modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component and wherein said modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component comprises: moving said selected rich-media component by means of said hit area associated with said selected rich-media component; placing said selected rich-media component by releasing said hit area associated with said selected rich-media component; and centering said selected rich-media component on the nearest grid point.
42. The method of claim 40, wherein said editing said position of said selected rich-media component comprises modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component and wherein said modifying the position of said selected rich-media component by means of a hit area associated with said selected rich-media component comprises: moving said selected rich-media component by means of said hit area associated with said selected rich-media component; placing said selected rich-media component by releasing said hit area associated with said selected rich-media component; and aligning said selected rich-media component to the nearest guide line.
43. A computer process allowing a user to interactively create and maintain a rich-media application on a host website via the Internet comprising:
allowing the creation of a user account; allowing access to a user account; and displaying available options for creating rich-media applications,
wherein said allowing access to a user account comprises one or more of displaying user account information; allowing said user to create a new rich-media application; allowing said user to modify an existing rich-media application; and displaying statistics from an existing rich-media application;
wherein said allowing access to a user account comprises displaying statistics from an existing rich-media application and
wherein said displaying statistics from an existing rich-media application comprises one or more of the following: displaying a weekly session log, displaying a server activity log; displaying a record of user accesses for a published rich-media application; analyzing said weekly session log; analyzing said server activity log; and analyzing said record of user accesses for said published rich-media application.
44. A computer process allowing a user to interactively create and maintain a rich-media application on a host website via the Internet comprising:
allowing the creation of a user account; allowing access to a user account; and displaying available options for creating rich-media applications,
wherein said allowing access to a user account comprises one or more of displaying user account information; allowing said user to create a new rich-media application; allowing said user to modify an existing rich-media application; and displaying statistics from an existing rich-media application; and
wherein said allowing access to a user account comprises allowing said user to modify an existing rich-media application and wherein said allowing said user to modify an existing rich-media application comprises one or more of the following: providing account information; providing rich-media application information; providing rich-media application specification information; allowing said user to save said rich-media application; allowing said user to close said rich-media application; allowing said user to delete said rich-media application; allowing said user to publish said rich-media application; allowing said user to preview said rich-media application; providing access to components used in the construction of said rich-media application; providing component-editing graphical user interfaces; and allowing said user to access a scene of said rich-media application.
45. The computer process of claim 44, wherein said allowing said user to modify an existing rich-media application comprises allowing said user to publish said rich-media application and wherein said allowing said user to publish said rich-media application comprises: downloading said rich-media application from said host computer to said user's remote computer system.
46. The computer process of claim 44, wherein said allowing said user to modify an existing rich-media application comprises allowing said user to access a scene of said rich-media application and wherein said allowing said user to access a scene of said rich-media application comprises one or more of the following: modifying said scene of said rich-media application; inserting a new scene of said rich-media application; editing scene information of said rich-media application; deleting said scene of said rich-media application; reordering said scene in said rich-media application; and selecting said scene of said rich-media application.
47. The computer process of claim 46, wherein said allowing said user to access a scene of said rich-media application comprises modifying said scene of said rich-media application and wherein said modifying said scene of said rich-media application comprises one or more of the following: editing a selected rich-media component; deleting a selected rich-media component; undoing the previous modification to a selected rich-media component; and saving said scene of said rich-media application.
48. The computer process of claim 47, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises: selecting said selected rich-media component from a hierarchical list of folders and rich-media components; closing graphical user interfaces used to edit non-selected rich-media components; opening a graphical user interface used to edit said selected rich-media component; and editing said selected rich-media component by means of said graphical user interface.
49. The computer process of claim 47, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises one or more of the group consisting of: an editor configured to edit the display of said selected rich-media component; an editor configured to edit the volume of said selected rich-media component; an editor configured to edit the link between said selected rich-media component and an associated menu entry; an editor configured to edit the text field of said selected rich-media component; an editor configured to edit the layout of said selected rich-media component; an editor configured to edit the size of said selected rich-media component; an editor configured to edit the transparency of said selected rich-media component; an editor configured to edit the timing of said selected rich-media component; an editor configured to edit the rotation of said selected rich-media component; an editor configured to edit the color of said selected rich-media component; an editor configured to edit the level of said selected rich-media component; and an editor configured to edit the position of said selected rich-media component.
50. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the display of said selected rich-media component and wherein said editor configured to edit said display of said selected rich-media component comprises one or more of the following: a displayer configured to display an introduction animation; a displayer configured to display a loop animation; and a displayer configured to display an exit animation.
51. The computer process of claim 50, wherein said editor configured to edit said display of said selected rich-media component comprises a displayer configured to display a loop animation and wherein said displayer configured to display a loop animation comprising one or more of the following: a player configured to play said loop animation a selected number of times; a player configured to play said loop animation no times; and a player configured to play said loop animation continuously.
52. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the volume of said selected rich-media component and wherein said editor configured to edit the volume of said selected rich-media component comprises the group consisting of one or more of the following methods for modifying the volume; a slider bar; a textual input field; an up-volume button; and a down-volume button.
53. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the link between said rich-media component and an associated menu entry and wherein said editor configured to edit the link between said rich-media component and said associated menu entry comprises one or more of the group consisting of: an obtainer that obtains the style of said associated menu entry; a developer that develops said link between said rich-media component and said associated menu entry; and an obtainer that obtains the uniform resource locator of said associated menu entry.
54. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the text field of said selected rich-media component and wherein said editor configured to edit the text field of said selected rich-media component comprises one or more of the group consisting of: a menu for selecting a layout for said text field; a menu for selecting a font for the selected text; a menu for selecting a font size for the selected text; a menu for selecting a font color for the selected text; and a menu for selecting an alignment for said text field.
55. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the layout of said selected rich-media component and wherein said editor configured to edit the layout of said selected rich-media component comprises: a menu for selecting a component type; and a graphical display of all preset and uploaded components matching said selected rich-media component's component type.
56. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the size of said selected rich-media component and wherein said editor configured to edit the size of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said size of said selected rich-media component; a textual input field for modifying said size of said selected rich-media component; corner handles for modifying the size of said selected rich-media component; side handles for modifying the size of said selected rich-media component; and a display of the current size of said selected rich-media component.
57. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the transparency of said selected rich-media component and wherein said editor configured to edit the transparency of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said transparency of said selected rich-media component; a textual input field for modifying said transparency of said selected rich-media component; and a display of the current transparency of said selected rich-media component.
58. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the timing of said selected rich-media component and wherein said editing said timing of said selected rich-media component comprises: one or more textual input fields for modifying said timing of said selected rich-media component; a component start marker for modifying the timing of said selected rich-media component; a component end marker for modifying the timing of said selected rich-media component; a life bar for modifying the timing of said selected rich-media component by means of; and a display of the current duration of said selected rich-media component.
59. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the rotation of said selected rich-media component and wherein said editor configured to edit the rotation of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said rotation of said selected rich-media component; a textual input field for modifying said rotation of said selected rich-media component; and a display of the current rotation of said selected rich-media component.
60. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the color of said selected rich-media component and wherein said editor configured to edit the color of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said color of said selected rich-media component; a textual input field for modifying said color of said selected rich-media component; and a display of the current color of said selected rich-media component.
61. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the level of said selected rich-media component and wherein said editor configured to edit the level of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said level of said selected rich-media component; an ordered list representing the relative level of all components in the current scene for modifying said level of said selected rich-media component; a textual input field for modifying said level of said selected rich-media component; and a display of the current level of said selected rich-media component.
62. The computer process of claim 61, wherein said editor configured to edit the level of said selected rich-media component comprises an ordered list representing the relative level of all components in the current scene for modifying said level of said selected rich-media component and wherein said ordered list representing the relative level of all components in the current scene comprises one or more of the following: a list of all components in said current scene ordered by the depth of the components; a means of toggling the visibility of each component; and a means of toggling the ability to modify the depth of each component.
63. The computer process of claim 49, wherein said editing a selected rich-media component comprises an editor configured to edit the position of said selected rich-media component and wherein said editor configured to edit the position of said selected rich-media component comprises one or more of the group consisting of: a textual input field for modifying the vertical position of said selected rich-media component; a textual input field for modifying the horizontal position of said selected rich-media component; a hit area for modifying the position of said selected rich-media component; and a graphical input field for modifying said position of said selected rich-media component.
64. A computer process allowing a user to interactively create and maintain a rich-media application on a host website via the Internet comprising:
allowing the creation of a user account; allowing access to a user account; and displaying available options for creating rich-media applications,
wherein said allowing access to a user account comprises one or more of displaying user account information; allowing said user to create a new rich-media application; allowing said user to modify an existing rich-media application; and displaying statistics from an existing rich-media application; and
wherein said allowing access to a user account comprises allowing said user to create a new rich-media application and wherein said allowing said user to create a new rich-media application comprises one or more of the following: providing account information; providing rich-media application information; providing rich-media application specification information; allowing said user to save said rich-media application; allowing said user to close said rich-media application; allowing said user to delete said rich-media application; allowing said user to publish said rich-media application; allowing said user to preview said rich-media application; providing access to components used in the construction of said rich-media application; providing component-editing graphical user interfaces; and allowing said user to access a scene of said rich-media application.
65. The computer process of claim 64, wherein said allowing said user to create a new rich-media application comprises allowing said user to publish said rich-media application and wherein said allowing said user to publish said rich-media application comprises: downloading said rich-media application to said user's remote computer system from said host computer.
66. The computer process of claim 64, wherein said allowing said user to create a new rich-media application comprises allowing said user to access a scene of said rich-media application and wherein said allowing said user to access a scene of said rich-media application comprises one or more of the following: modifying said scene of said rich-media application; inserting a new scene of said rich-media application; editing scene information of said rich-media application; deleting said scene of said rich-media application; reordering said scene in said rich-media application; and selecting said scene of said rich-media application.
67. The computer process of claim 66, wherein said allowing said user to access a scene of said rich-media application comprises modifying said scene of said rich-media application and wherein said modifying said scene of said rich-media application comprises one or more of the following: editing a selected rich-media component; deleting a selected rich-media component; undoing the previous modification to a selected rich-media component; and saving said scene of said rich-media application.
68. The computer process of claim 67, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises: selecting said selected rich-media component from a hierarchical list of folders and rich-media components; closing graphical user interfaces used to edit non-selected rich-media components; opening a graphical user interface used to edit said selected rich-media component; and editing said selected rich-media component by means of said graphical user interface.
69. The computer process of claim 67, wherein said modifying said scene of said rich-media application comprises editing a selected rich-media component and wherein said editing a selected rich-media component comprises one or more of the group consisting of: an editor configured to edit the display of said selected rich-media component; an editor configured to edit the volume of said selected rich-media component; an editor configured to edit the link between said selected rich-media component and an associated menu entry; an editor configured to edit the text field of said selected rich-media component; an editor configured to edit the layout of said selected rich-media component; an editor configured to edit the size of said selected rich-media component; an editor configured to edit the transparency of said selected rich-media component; an editor configured to edit the timing of said selected rich-media component; an editor configured to edit the rotation of said selected rich-media component; an editor configured to edit the color of said selected rich-media component; an editor configured to edit the level of said selected rich-media component; and an editor configured to edit the position of said selected rich-media component.
70. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the display of said selected rich-media component and wherein said editor configured to edit said display of said selected rich-media component comprises one or more of the following: a displayer configured to display an introduction animation; a displayer configured to display a loop animation; and a displayer configured to display an exit animation.
71. The computer process of claim 70, wherein said editor configured to edit said display of said selected rich-media component comprises a displayer configured to display a loop animation and wherein said displayer configured to display a loop animation comprising one or more of the following: a player configured to play said loop animation a selected number of times; a player configured to play said loop animation no times; and a player configured to play said loop animation continuously.
72. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the volume of said selected rich-media component and wherein said editor configured to edit the volume of said selected rich-media component comprises the group consisting of one or more of the following methods for modifying the volume; a slider bar; a textual input field; an up-volume button; and a down-volume button.
73. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the link of said selected rich-media component and wherein said editor configured to edit the link between said rich-media component and said associated menu entry comprises one or more of the group consisting of: an obtainer that obtains the style of said associated menu entry; a developer that develops said link between said rich-media component and said associated menu entry; and an obtainer that obtains the uniform resource locator of said associated menu entry.
74. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the text field of said selected rich-media component and wherein said editor configured to edit the text field of said selected rich-media component comprises one or more of the group consisting of: a menu for selecting a layout for said text field; a menu for selecting a font for the selected text; a menu for selecting a font size for the selected text; a menu for selecting a font color for the selected text; and a menu for selecting an alignment for said text field.
75. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the layout of said selected rich-media component and wherein said editor configured to edit the layout of said selected rich-media component comprises: a menu for selecting a component type; and a graphical display of all preset and uploaded components matching said selected rich-media component's component type.
76. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the size of said selected rich-media component and wherein said editor configured to edit the size of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said size of said selected rich-media component; a textual input field for modifying said size of said selected rich-media component; corner handles for modifying the size of said selected rich-media component; side handles for modifying the size of said selected rich-media component; and a display of the current size of said selected rich-media component.
77. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the transparency of said selected rich-media component and wherein said editor configured to edit the transparency of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said transparency of said selected rich-media component; a textual input field for modifying said transparency of said selected rich-media component; and a display of the current transparency of said selected rich-media component.
78. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the timing of said selected rich-media component and wherein said editing said timing of said selected rich-media component comprises: one or more textual input fields for modifying said timing of said selected rich-media component; a component start marker for modifying the timing of said selected rich-media component; a component end marker for modifying the timing of said selected rich-media component; a life bar for modifying the timing of said selected rich-media component by means of; and a display of the current duration of said selected rich-media component.
79. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the rotation of said selected rich-media component and wherein said editor configured to edit the rotation of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said rotation of said selected rich-media component; a textual input field for modifying said rotation of said selected rich-media component; and a display of the current rotation of said selected rich-media component.
80. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the color of said selected rich-media component and wherein said editor configured to edit the color of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said color of said selected rich-media component; a textual input field for modifying said color of said selected rich-media component; and a display of the current color of said selected rich-media component.
81. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the level of said selected rich-media component and wherein said editor configured to edit the level of said selected rich-media component comprises one or more of the group consisting of: a slider bar for modifying said level of said selected rich-media component; an ordered list representing the relative level of all components in the current scene for modifying said level of said selected rich-media component; a textual input field for modifying said level of said selected rich-media component; and a display of the current level of said selected rich-media component.
82. The computer process of claim 81, wherein said editor configured to edit the level of said selected rich-media component comprises an ordered list representing the relative level of all components in the current scene for modifying said level of said selected rich-media component and wherein said ordered list representing the relative level of all components in the current scene comprises one or more of the following: a list of all components in said current scene ordered by the depth of the components; a means of toggling the visibility of each component; and a means of toggling the ability to modify the depth of each component.
83. The computer process of claim 69, wherein said editing a selected rich-media component comprises an editor configured to edit the position of said selected rich-media component and wherein said editor configured to edit the position of said selected rich-media component comprises one or more of the group consisting of: a textual input field for modifying the vertical position of said selected rich-media component; a textual input field for modifying the horizontal position of said selected rich-media component; a hit area for modifying the position of said selected rich-media component; and a graphical input field for modifying said position of said selected rich-media component.
Description
FIELD OF THE INVENTION
The present invention relates to methods, systems, and processes used in designing and creating applications utilizing rich-media content over the Internet.
BACKGROUND OF THE INVENTION
This invention relates to methods and systems for utilizing rich-media for the creation of Internet websites and other applications via the Internet.
The Internet is a rapidly expanding interconnection of computers that allows people from around the globe to interact. Internet users seek to gather information, purchase products or services, and entertain themselves by creating websites or accessing websites maintained by others on remote computer systems.
Traditionally, website designers created websites using the Hypertext Markup Language (HTML). HTML is a language used for representing in computer code the various components of a website. Initially, only website designers fluent in HTML could create websites for other users to access. As more people began to use the Internet, designers demanded quicker and easier methods for producing websites so that they could create, for example, attention-grabbing websites for companies seeking to engage in commerce over the Internet.
In order to solve this problem, software companies designed pre-packaged programs capable of more quickly producing graphics-intensive websites. Products such as SUN Microsystems' Java® and Macromedia's Shockwave Flash® allow designers to create websites that entice Internet users to visit them. Programs such as Microsoft's Visual Basic® provide website designers with the ability to create websites more quickly by allowing designers to create websites graphically instead of by coding primarily in HTML.
As a result of the advent of Java®, Shockwave Flash®, and other rich-media tools, as well as Visual Basic®, expert website designers have formed businesses for the purpose of creating websites for others. Knowledge of these programming tools is now a requirement for website design and has made website design increasingly more complicated. The average Internet user does not currently have the knowledge, ability, or tools to create a graphic-intensive website in other applications using rich-media.
Restricting website design to experts alone constrains the rapid development of new high-quality websites for two reasons. First, the number of Internet users who may design high-quality sites using rich-media technologies is limited. Second, the arduousness of designing a polished website even for an expert developer limits the overall throughput of designs for website-developing companies.
A need exists for a tool allowing developers to create rich-media websites and other applications in a more efficient manner. Furthermore, a need exists for a tool allowing individuals who are not skilled in expert design tools to produce visually appealing websites and other applications. Finally, a need exists for a tool allowing anyone who wishes to design a high-quality website or other applications to do so via the Internet.
SUMMARY OF THE INVENTION
The present invention relates to the method of providing users with the ability to create rich-media applications via the Internet. In a specific embodiment, users may access a host website supplying the ability to create rich-media applications, examine the available product set, and construct a rich-media application on the host website. In a specific embodiment, the host website enables the user to modify an existing rich-media application on the host website.
In a specific embodiment, the ability to create rich-media applications may be purchased by the user. Specifically, the user may purchase the right to use rich-media applications created on the host website, the right to design and create rich-media applications on the host website, or both. The user may also purchase the right to use more services by paying a different fee.
In a specific embodiment, the user may construct a rich-media application by using rich-media components including navigation elements, backgrounds, images, headings, sound files, text, windows, animations, e-mail clients, calculators, stock tickers, clocks, menus, movie files, and production types. Production types are customizable rich-media templates for performing specific operations such as presentations, resumes, catalogs, reports, user manuals, magazines, newspapers, photo albums, cartoons, websites, shows, movies, and invitations. The user may also upload components from other Internet locations for use in rich-media applications by listing the location of the component and the file type of the component. Applicable file types may include JPEG, MPEG, GIF, animated GIF, TIFF, EPS, PNG, SWF, MP3, and WAV. The user may be limited to a subset of all possible file types that may be uploaded depending on the level of service for which the user has paid.
In a specific embodiment, the user may create and access a customer account for the purpose of creating or modifying a rich-media application. Specifically, the user may access account and project information or save, close, delete, publish, or preview a project. The user may also create, insert, delete, save, or modify a scene of a rich-media application or add, access, edit, copy, paste, or delete components.
When editing a component, the user may modify a number of features associated with a component including, but not limited to, the volume of an acoustic component, the link between a menu entry and an associated component, the font, font size, color, or effect of a text field, or the layout, size, transparency, rotation, color, position, or level of any graphical rich-media component. The user may modify these components by means of a slider bar or a textual input field. In addition, the user may modify the volume of a sound component by means of up and down volume buttons. The user may undo modifications made to a component's parameters. The user may also modify the position of a graphical rich-media component by a graphical input field, by clicking and dragging said component, or by text fields. When the user modifies the position of a graphical rich-media component by means of clicking and dragging said component, said component may align itself to a grid point or a guide line. The user may also modify the style and the Uniform Resource Locator (URL) of a component linked to a menu entry.
The present invention further relates to the computer processes required for providing access to a host website and for providing access to the development tools for creating a rich-media application. In a specific embodiment, the computer process allows users to modify existing rich-media applications.
In a specific embodiment, the computer process charges users for the ability to create a rich-media application. Specifically, the computer process may charge the user for using a rich-media application, accessing areas of the host website, or both. The computer process may also provide more features and additional levels of service to users that pay a different fee.
In a specific embodiment, the computer process may provide rich-media components to the user including navigation elements, backgrounds, images, headings, sound files, text, windows, animations, e-mail clients, calculators, stock tickers, clocks, menus, movie files, and production types. The computer process may also allow the user to upload components from remote locations by supplying a URL and a component file type. Applicable file types may include JPEG, MPEG, GIF, animated GIF, TIFF, EPS, PNG, SWF, MP3, and WAV. The file types that the computer process allows for upload may depend on the level of service paid for by the user.
In a specific embodiment, the computer process may display available options for creating rich-media applications to the user including, but not limited to, an inventory of available production types, drag-and-drop loading of components, the component-editing graphical user interfaces (GUIs), an inventory of available components, and the ability for the user to upload components that do not reside on the host computer. In addition, the computer process may display statistics associated with rich-media application website activity including the number of user visits, the server activity, and a weekly session log. The computer process may additionally perform analysis of the above statistics over time.
In a specific embodiment, the computer process may allow for the creation and use of a customer account for the creation or modification of a rich-media application by the user. Specifically, the computer process may allow the user to access account and project information or save, close, delete, publish, or preview a project. The process may also allow the user to create, insert, delete, save, or modify a scene of a rich-media application or add, access, edit, copy, paste, or delete components.
When allowing the user to edit a component, the computer process may allow the user to modify a number of features associated with a component including, but not limited to, the volume of an acoustic component, the link between a menu entry and an associated component, the font, font size, color, or effect of a text field, or the layout, size, transparency, rotation, color, position, or level of any graphical rich-media component. The computer process may allow the user to modify these components by means of a slider bar or a textual input field. In addition, the computer process may enable the user to modify the volume of a sound component by means of up and down volume buttons. The computer process may allow the user to undo modifications to a component's parameters. The computer process may also allow the user to modify the position of a graphical rich-media component by a graphical input field, by clicking and dragging said graphical rich-media component, or by text fields. When the user moves said graphical rich-media component by clicking and dragging it, the computer process may align the component to a grid point or a guide line. The computer process may also allow the user to modify the style and the URL of a component linked to a menu entry.
The present invention further relates to the method of accessing information pertaining to rich-media components from a database. In a specific embodiment, the method includes storing and retrieving information pertaining to rich-media components from said database. In addition, the method pertains to ascribing a unique identifier to a rich-media component information block. Specifically, the method may include a unique identifier composed of 18 digits. In a specific embodiment, the process of retrieving information from the database may be used for sorting the stored rich-media components into lists based on their component type and displaying that list for the user.
The present invention further relates to the method of displaying a rich-media application via a graphical interface. In a specific embodiment, the method including the graphical interface may allow the user to access the rich-media application and display scenes from the rich-media application. Specifically, the method allows for the user to display scenes by showing the current scene, displaying either the next or the previous scene, playing scenes in succession in a forward or backward direction, jumping to the first or last scene, or selecting a specific scene. When selecting a specific scene, the method allows the user to select the scene by either using a slider bar or by entering a scene number in a textual input field.
In another embodiment of the present invention, a computer system may be used for the purpose of providing users with the ability to create rich-media applications via the Internet. This computer system may comprise a processor, memory, and a computer process. More specifically, the computer process may comprise a developer configured to develop rich-media application designs and an obtainer configured to obtain computer system specifications from a user's remote computer system via the Internet. This obtainer may be utilized independently from other facets of the present invention for other applications.
In a specific embodiment, the obtainer may comprise obtainers configured to obtain the processor type and the frequency of all central processing units (CPUs) of the user's attached computer system, the combined capacity in bytes of all random access memory systems and attached memory systems of the user's attached computer system, and the Internet connection type and speed of the user's remote computer system. More specifically, the obtainer may determine if the Internet connection type includes, e.g., a modem, a digital subscriber line, a cable modem, a T-1 line, a DS-1 line, an E-1 line, a T-3 line, a DS-3 line, an E-3 line, a 10 Mbps Ethernet line, a 100 Mbps Ethernet line, an OC-3/STS-1 line, an OC-12/STS-3 line, a 1000 Mbps Ethernet line, a OC-48/STS-16 line, or a OC-192/STS-64 line.
Furthermore, the obtainer may also comprise a calculator configured to calculate the MIPS rating of each CPU of the user's remote computer system. More specifically, the calculator may comprise an obtainer configured to obtain the frequency of each CPU of said user's computer system, an obtainer configured to obtain the number of cycles per instruction for each CPU of said user's host computer system, and a calculator configured to calculate the MIPS rating of each CPU of said user's remote computer system.
In another embodiment of the present invention, the computer process further comprises a calculator configured to calculate the number of CPU cycles available for rich-media application design. More specifically, the calculator may comprise an obtainer for the initial number of CPU cycles available for rich-media application design, a determiner of the number of CPU cycles required for a selected rich-media application component, and a calculator for the remaining number of CPU cycles available for rich-media application design.
In another embodiment of the present invention, the computer process comprises a determiner for a hierarchy of rich-media application scenes based on the available CPU cycles, and a loader of rich-media application scenes based on that hierarchy. The determiner may further comprise an obtainer for the number of CPU cycles required by an specific instance of a rich-media application, an obtainer for the available number of CPU cycles, and a determiner that chooses the instance that uses the greatest portion of the available CPU cycles without exceeding the capacity of the CPU. The obtainer that obtains the available CPU cycles may look at the CPU during previous transfers to determine the required number of CPU cycles for a previous transfer and calculate the number of CPU cycles for a specific instance of the part of the application to be transferred. Finally, the loader of the rich-media application scenes based on the determined hierarchy may load the current scene as well as potential future scenes.
For instance, the rich-media application may be a rich-media website consisting of multiple instances of an introduction page and multiple instances of other pages that may be accessed from the introduction page. The various instances of each page may require a different number of CPU cycles based on the graphics or acoustics associated with the instance. By providing multiple instances, the rich-media application designer allows users that have computers with fast processors to access resource-intensive instances while users with computers run by relatively slower processors are provided with less complex instances. After determining the speed of the computer's processor or processors, the computer process may load the instance of the introduction page that most closely matches the available number of CPU cycles. When the load of the introduction page completes, the loader may load a subsequent page based on the hierarchy and the updated determination of the number of available CPU cycles. This subsequent load may occur while the introductory page is displayed and before the user selects the next page to view. This download may preferably be interrupted if the user chooses to view another page.
In another embodiment of the present invention, a similar hierarchy for loading rich-media application scenes may be constructed based on the available Internet transmission bandwidth instead of the available CPU cycles.
In another embodiment of the present invention, when loading a scene, a data block file for a component may be copied from a master data block file. After creating the data block file, the parameters relating to the component may be loaded. In a specific embodiment, parameter types may include integer, string, and floating point. Component checksums may be computed by summing the values of all parameters of a given type for a specific component. Scene checksums may be computed by summing the component checksums for all components in a scene. If the checksum for each parameter type does not equal the expected value, the computer process may halt the loading of a user project and display an error message.
The present invention further relates to the business method of providing the user a method of designing and creating a rich-media application via the Internet by accessing a third party's host website via the Internet and constructing a rich-media application on that website. In a specific embodiment, the business method comprises the step of a user purchasing the ability to construct a rich-media application on the third party's website by either purchasing a license to use rich-media application development tools from the third party or paying a fee to the third party for the right to use the created rich-media application.
In a further embodiment of the present invention, a business method for providing rich-media application development tools to third party website maintainers comprises developing a software platform using rich-media application development tools that allow users to create rich-media applications. In a specific embodiment, the business method comprises charging the third party by requiring a one-time fee, a per-customer fee, a per-project fee, a time-based fee, or a combination thereof for the use of the rich-media application development tools.
In a further embodiment of the present invention, a business method for providing third-party website maintainers with a method of providing users the ability to create rich-media applications comprises developing a software platform using rich-media application development tools on the third party's website. In a specific embodiment, the business method comprises the third party purchasing the ability to use said rich-media application development tools by paying a one-time fee, a per-customer fee, a per-project fee, a time-based fee, or a combination thereof.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying figures, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the objects, advantages and principles of the invention.
FIG. 1 is a schematic block diagram 10 of a computer system that may be used to practice the present invention.
FIG. 2 is a flow diagram 30 of the sequence of web pages that the user of the present invention may encounter when accessing the modified computer system.
FIG. 3 is a schematic 50 of the components of the present invention's browser window in which the user designs and creates rich-media applications.
FIG. 4 is a flow diagram 100 of the initialization of the design application for the present invention.
FIG. 5 is a flow diagram 150 of the loading of the two Internet browser windows for the design application.
FIG. 6 is a flow diagram 160 of the user selection of a new or existing project.
FIG. 7 is a flow diagram 170 of the initialization of the design application based on the user selection of an existing project.
FIG. 8 is a flow diagram 180 of the initialization of the design application based on the user selection of a new project.
FIG. 9 is a flow diagram 200 of the initialization of variables assigned to the selected project.
FIG. 10 is a flow diagram 210 of the registration of the project with the host system.
FIG. 11 is a flow diagram 300 of the tasks that a user of the present invention may effect upon the selected project.
FIG. 12 is a flow diagram 310 of the steps performed by the save project procedure when a user elects to save the current project.
FIG. 13 is a flow diagram 320 of the steps performed by the close project procedure when a user elects to close the current project.
FIG. 14 is a flow diagram 330 of the steps performed by the delete project procedure when a user elects to delete the current project.
FIG. 15 is a flow diagram 340 of the steps performed by the publish project procedure when a user elects to download the current project from the present invention's host server to the user's local server.
FIG. 16 is a flow diagram 350 of the steps performed by the preview project procedure when a user elects to preview the current project on the present invention's host server.
FIG. 17 is a flow diagram 360 of the steps performed by the logout procedure.
FIG. 18 is a flow diagram 370 of the steps performed by the add component procedure when a user elects to add a component to the current scene.
FIG. 19 is a flow diagram 400 of the steps performed by the add background component procedure when a user elects to add a background to the current scene.
FIG. 20 is a flow diagram 440 of the steps performed by the add menu component procedure when a user elects to add a menu to the current scene.
FIG. 21 is a flow diagram 480 of the steps performed by the add about window component procedure when a user elects to add an about window to the current scene.
FIG. 22 is a flow diagram 490 of the steps performed by the add accessory component procedure when a user elects to add an accessory to the current scene.
FIG. 23 is a flow diagram 500 of the steps performed by the startup component procedure when the present invention creates an instance of a component.
FIG. 24 is a flow diagram 510 of the steps performed by the handle component instantiation procedure when the present invention assigns an identification variable to an instance of a component.
FIG. 25 is a flow diagram 520 of the steps performed by the load component data procedure when the present invention searches for subcomponents assigned to a specific component and registers the component in the project database after loading the subcomponents.
FIG. 26 is a flow diagram 530 of the steps performed by the load subcomponents procedure when an added component is determined to have subcomponents and each subcomponent is loaded and registered in the project database.
FIG. 27 is a flow diagram 540 of the steps performed by the activate component procedure when the present invention assigns initial property values to an instance of a component and opens a component GUI used for editing those property values.
FIG. 28 is a flow diagram 590 of the steps performed by the edit component procedure when a user elects to edit a component in the current project.
FIG. 29 is a flow diagram 600 of the steps performed by the edit background properties procedure when a user elects to edit property values specific to a background component in the current scene.
FIG. 30 is a flow diagram 610 of the steps performed by the edit image properties procedure when a user elects to edit property values specific to an image component in the current scene.
FIG. 31 is a decision table 618 of the steps performed during the creation and operation of an Asset Image Upload component.
FIG. 32 is a flow diagram 620 of the steps performed by the edit menu properties procedure when a user elects to edit property values specific to a menu component in the current scene.
FIG. 33 is a decision table 628 of the steps performed during the creation of a navigation bar component.
FIG. 34 is a flow diagram 630 of the steps performed by the edit sound properties procedure when a user elects to edit property values specific to an acoustic component in the current scene.
FIG. 35 is a flow diagram 640 of the steps performed by the edit text field properties procedure when a user elects to edit property values specific to text in the current scene.
FIG. 36 is a flow diagram 644 of the steps performed by the edit text effect properties procedure when a user elects to edit text effect property values specific to text in the current scene.
FIG. 37 is a flow diagram 650 of the steps performed by the edit text header properties procedure when a user elects to edit property values specific to a text header component in the current scene.
FIG. 38 is a flow diagram 660 of the steps performed by the edit window properties procedure when a user elects to edit property values specific to a window component in the current scene.
FIG. 39 is a flow diagram 670 of the steps performed by the edit window layout properties procedure when a user elects to edit property values specific to the layout of a window component in the current scene.
FIG. 40 is a flow diagram 680 of the steps performed by the edit intro properties procedure when a user elects to edit property values specific to an intro component in the current scene.
FIG. 41 is a flow diagram 690 of the steps performed by the edit common properties procedure when a user elects to edit property values of a component in the current scene that are not specific to a single component type.
FIG. 42 is a flow diagram 760 of the steps performed by the load scene browser procedure when a user opens a project.
FIG. 43 is a flow diagram 770 of the steps performed by the initialize scene browser procedure when the scene browser loads the first scene of a selected project or a blank scene for a new project.
FIG. 44 is a flow diagram 780 of the steps performed by the initialize scene procedure when the scene browser loads the components contained in the first scene.
FIG. 45 is a flow diagram 790 of the steps performed by the edit scene procedure when a user elects to edit the current scene.
FIG. 46 is a flow diagram 800 of the steps performed by the insert new scene procedure when a user elects to add a scene to the current project.
FIG. 47 is a flow diagram 810 of the steps performed by the open scene information dialog GUI procedure when the present invention requests that the user supply information pertaining to a newly added scene.
FIG. 48 is a flow diagram 820 of the steps performed by the edit scene information procedure when a user elects to edit the scene information pertaining to the current scene.
FIG. 49 is a flow diagram 830 of the steps performed by the delete scene procedure when a user elects to delete the current scene.
FIG. 50 is a flow diagram 840 of the steps performed by the reorder scenes procedure when a user elects to reorder scenes in the current project.
FIG. 51 is a flow diagram 860 of the steps performed by the edit Quicklink procedure when a user elects to alter the property values of a Quicklink.
FIG. 52 is a decision table 870 of the steps performed by the component browser when a component is selected or modified by the user.
FIG. 53 is a decision table 871 of the steps performed by the edit size procedure when a user elects to edit the size of a component.
FIG. 54 is a decision table 872 of the steps performed by the edit transparency procedure when a user elects to edit the transparency of a component.
FIG. 55 is a decision table 873 of the steps performed by the edit rotation procedure when a user elects to edit the rotation of a component.
FIG. 56 is a decision table 874 of the steps performed by the edit position procedure when a user elects to edit the position of a component.
FIG. 57 is a decision table 875 of the steps performed by the edit color procedure when a user elects to edit the color of a component.
FIG. 58 is a decision table 876 of the steps performed by the edit selection procedure when a user elects to edit the selected variation of a component.
FIG. 59 is a decision table 877 of the steps performed by the edit content procedure when a user elects to edit the content of a Paragraph component.
FIG. 60 is a decision table 878 of the steps performed by the edit Quicklink procedure when a user elects to edit the Quicklink assigned to a Button component.
FIG. 61 is a decision table 879 of the steps performed by the edit selection procedure when a user elects to edit the selected variation of a Button component.
FIG. 62 is a decision table 880 of the steps performed by the edit content procedure when a user elects to edit the content of a Line Effects component.
FIG. 63 is a decision table 881 of the steps performed by the edit soundtrack procedure when a user elects to edit the attributes of a Soundtrack component.
FIG. 64 is a decision table 882 of the steps performed by the edit user assets procedure when a user elects to edit the user assets loaded into a project.
FIG. 65 is a decision table 883 of the steps performed by the edit content procedure when a user elects to edit the content of a Character Effects component.
FIG. 66 is a decision table 884 of the steps performed by the edit content procedure when a user elects to edit the content of a Movie component.
FIG. 67 is a decision table 885 of the steps performed by the edit content procedure when a user elects to edit the content of a Window component.
FIG. 68 is a decision table 886 of the steps performed by the edit content procedure when a user elects to edit the content of a Header component.
FIG. 69 is a decision table 887 of the steps performed by the edit component procedure when a user elects to use icons surrounding a component to resize the component.
FIG. 70 is a decision table 888 of the steps performed by the start depth browser procedure when a user elects to examine the depth of components in the current scene.
FIG. 71 is a decision table 889 of the steps performed by the edit component procedure when a user elects to toggle a component's visibility, toggle a component's lock status, modify a component's depth, open a component GUI for a component, or add a component to the current scene.
FIG. 72 is a decision table 890 of the steps performed by the Layers Window when it is opened or closed, or a new scene is loaded into the Component Browser.
FIG. 73 is a decision table 891 of the steps performed by the Layers Window when a component is selected.
FIG. 74 is a decision table 892 of the steps performed by the Layers Window when a component's scene time is edited.
FIG. 75 is a decision table 893 of the steps performed by the Layers Window when a component is edited.
FIG. 76 is a decision table 894 of the steps performed by the Layers Window when a component's duration is modified.
FIG. 77 is a decision table 895 of the steps performed by the Layers Window when a component's visibility button is selected.
FIG. 78 is a decision table 896 of the steps performed by the Layers Window when a component's lock button is selected.
FIG. 79 is a decision table 900 of the steps performed by the Asset Manager during initialization.
FIG. 80 is a decision table 901 of the steps performed by the Asset Manager's main control loop.
FIG. 81 is a decision table 910 of the steps performed by the request scanner at the highest level of request processing.
FIG. 82 is a decision table 911 of the processes that the request scanner may schedule for an incoming request.
FIG. 83 is a decision table 920 of the steps performed by the load monitor for clips that might be loading at a given instant in time.
FIG. 84 is a decision table 930 of the steps performed by the scheduler at the highest level of request scheduling.
FIG. 85 is a decision table 931 of the steps performed by the scheduler when intensive tasks are active.
FIG. 86 is a decision table 932 of the steps performed by the scheduler during normal scheduling when no intensive tasks are active.
FIG. 87 is a decision table 940 of the processes that the registration request processor may choose from at the highest level of registration request processing.
FIG. 88 is a decision table 941 of the steps performed by the registration request processor that define the clip registration process.
FIG. 89 is a decision table 942 of the steps performed by the registration request processor that define the clip reregistration process.
FIG. 90 is a decision table 943 of the steps performed by the registration request processor that define the clip unregistration process.
FIG. 91 is a decision table 944 of the steps performed by the registration request processor for querying whether a clip has been registered.
FIG. 92 is a decision table 950 of the processes that the load request processor may choose from at the highest level of load request processing.
FIG. 93 is a decision table 951 of the steps performed by the load request processor that define the clip loading process.
FIG. 94 is a decision table 952 of the steps performed by the load request processor that define the clip unloading process.
FIG. 95 is a decision table 953 of the steps performed by the load request processor for querying whether a clip has been loaded.
FIG. 96 is a decision table 954 of the steps performed by the registration request processor for querying the number of frames loaded for a clip.
FIG. 97 is a decision table 960 of the processes that the play request processor may choose from at the highest level of play request processing.
FIG. 98 is a decision table 961 of the steps performed by the play request processor that define the clip playing process.
FIG. 99 is a decision table 962 of the steps performed by the play request processor that define the clip pausing process.
FIG. 100 is a decision table 963 of the steps performed by the play request processor that define the clip stopping process.
FIG. 101 is a decision table 964 of the steps performed by the play request processor for querying whether a clip is currently playing.
FIG. 102 is a decision table 965 of the steps performed by the play request processor for querying what frame a playing clip is currently at.
FIG. 103 is a decision table 970 of the processes that the position request processor may choose from at the highest level of position request processing.
FIG. 104 is a decision table 971 of the steps performed by the position request processor that define the clip fast forward process.
FIG. 105 is a decision table 972 of the steps performed by the position request processor that define the clip rewind process.
FIG. 106 is a decision table 973 of the steps performed by the position request processor for querying whether a clip is currently at the first frame.
FIG. 107 is a decision table 980 of the processes that the state request processor may choose from at the highest level of state request processing.
FIG. 108 is a decision table 981 of the steps performed by the state request processor that define the process for making a clip an intensive task.
FIG. 109 is a decision table 982 of the steps performed by the state request processor that define the process for restoring an intensive task back to normal.
FIG. 110 is a decision table 983 of the steps performed by the state request processor that define the process for making a clip a high bandwidth task.
FIG. 111 is a decision table 984 of the steps performed by the state request processor that define the process for restoring a high bandwidth task back to normal.
FIG. 112 is a decision table 985 of the steps performed by the state request processor for querying the state of a clip.
FIG. 113 is a decision table 986 of the steps performed by the state request processor for querying whether any intensive tasks are active.
FIG. 114 is a decision table 987 of the steps performed by the state request processor for querying whether any high bandwidth tasks are active.
FIG. 115 is a decision table 990 of the processes that the local volume request processor may choose from at the highest level of local volume request processing.
FIG. 116 is a decision table 991 of the steps performed by the local volume request processor that define the process for setting a clip's local volume level.
FIG. 117 is a decision table 992 of the steps performed by the local volume request processor that define the process for turning on a clip's local volume.
FIG. 118 is a decision table 993 of the steps performed by the local volume request processor that define the process for turning off a clip's local volume.
FIG. 119 is a decision table 994 of the steps performed by the local volume request processor for querying the local volume level of a clip.
FIG. 120 is a decision table 1000 of the processes that the global volume request processor may choose from at the highest level of global volume request processing.
FIG. 121 is a decision table 1001 of the steps performed by the global volume request processor that define the process for setting a clip's global volume level.
FIG. 122 is a decision table 1002 of the steps performed by the global volume request processor that define the process for turning on a clip's global volume.
FIG. 123 is a decision table 1003 of the steps performed by the global volume request processor that define the process for turning off a clip's global volume.
FIG. 124 is a decision table 1004 of the steps performed by the global volume request processor for querying the global volume level of a clip.
FIG. 125 is a decision table 1100 of the steps performed when loading the code that defines the asset manager component loader.
FIG. 126 is a decision table 1101 of the steps performed when initializing duplicated containers.
FIG. 127 is a decision table 1102 of the steps performed when loading the network bandwidth speedometer.
FIG. 128 is a decision table 1103 of the steps performed when loading the managed levels for clips.
FIG. 129 is a decision table 1104 of the steps performed when loading the asset manager components.
FIG. 130 is a decision table 1105 of the steps performed when loading other measuring tools.
FIG. 131 is a decision table 1106 of the steps performed when creating containers in which clips may be stored.
FIG. 132 is a decision table 1107 of the steps performed by the utility routine that loads the asset manager components, measuring tools, and rich-media application clips.
FIG. 133 is a decision table 1110 of the steps performed by the load monitor that monitors the load of clips.
FIG. 134 is a decision table 1111 of the processes that may be chosen by the state monitor during the clip loading process based on the state of the target clip.
FIG. 135 is a decision table 1112 of the steps performed by the state monitor when querying whether a clip has started loading.
FIG. 136 is a decision table 1113 of the steps performed by the state monitor when querying whether a clip has completed loading.
FIG. 137 is a decision table 1114 of the steps performed by the state monitor when querying whether a clip has started playing.
FIG. 138 is a decision table 1115 of the steps performed by the state monitor when querying whether a clip has stopped playing.
FIG. 139 is a decision table 1120 of the steps performed by the network bandwidth speedometer to determine the network bandwidth used by the previous transfer, the average network bandwidth used by a set of previous transfers, and a category of variant clips that may be suitable for future transfers based on the network bandwidth used by previous transfers.
FIG. 140 is a decision table 1121 of the steps performed by the asset manager to turn on the network bandwidth speedometer.
FIG. 141 is a decision table 1122 of the steps performed by the asset manager to turn off the network bandwidth speedometer.
FIG. 142 is a decision table 1130 of the steps performed by the CPU cycle speedometer to determine the number of CPU cycles used by the previous transfer, the average number of CPU cycles used by a set of previous transfers, and a category of variant clips that may be suitable for future transfers based on the number of CPU cycles used by previous transfers.
FIG. 143 is a decision table 1131 of the steps performed by the asset manager to turn on the CPU cycle speedometer
FIG. 144 is a decision table 1132 of the steps performed by the asset manager to turn off the CPU cycle speedometer
FIG. 145 is a decision table 1140 of the steps performed by the frame rate speedometer to determine the current frame rate of a clip, the average frame rate of a clip, and a category of variant clips that may be suitable for future transfers based on the frame rate of a clip.
FIG. 146 is a decision table 1141 of the steps performed by the asset manager to turn on the frame rate speedometer
FIG. 147 is a decision table 1142 of the steps performed by the asset manager to turn off the frame rate speedometer
FIG. 148 is a decision table 1200 of the steps performed during the initialization of the bootstrap procedure.
FIG. 149 is a decision table 1210 of the steps performed by the bootstrap procedure during the load of the Preloader.
FIG. 150 is a decision table 1220 of the steps performed by the bootstrap procedure during the load of the asset manager and active content loader.
FIG. 151 is a decision table 1230 of the steps performed by the bootstrap procedure during the load of the session procedure.
FIG. 152 is a decision table 1240 of the steps performed by the bootstrap procedure during the load of the tables used by the bootstrap procedure.
FIG. 153 is a decision table 1300 of the steps performed by the session procedure after the session procedure has been loaded.
FIG. 154 is a decision table 1310 of the steps performed by the session procedure when projects are initialized.
FIG. 155 is a decision table 1320 of the steps performed by the session procedure when a project has completed.
FIG. 156 is a decision table 1400 of the steps performed by the session procedure when a project is played.
FIG. 157 is a decision table 1410 of the steps performed by the project procedure when scene 1 is playing.
FIG. 158 is a decision table 1420 of the steps performed by the project procedure when a scene table is built.
FIG. 159 is a decision table 1430 of the steps performed by the project procedure when a scene table is initialized.
FIG. 160 is a decision table 1440 of the steps performed by the project procedure when a scene has completed.
FIG. 161 is a decision table 1450 of the steps performed by the project procedure when a non-sequential scene is requested to be played next.
FIG. 162 is a decision table 1460 of the steps performed by the project procedure when a scene is terminated.
FIG. 163 is a decision table 1470 of the steps performed by the project procedure when a project is held.
FIG. 164 is a decision table 1480 of the steps performed by the project procedure when a project is released from being held.
FIG. 165 is a decision table 1490 of the steps performed by the project procedure when an old scene is removed.
FIG. 166 is a decision table 1500 of the steps performed by the project procedure when a new scene is selected.
FIG. 167 is a decision table 1510 of the steps performed by the project procedure when the next sequential scene is to be played.
FIG. 168 is a decision table 1600 of the steps performed by the project procedure when a scene has been loaded and is ready to be played.
FIG. 169 is a decision table 1610 of the steps performed by the scene procedure when the scene is started.
FIG. 170 is a decision table 1620 of the steps performed by the scene procedure when a threshold period of time for a scene to play has been crossed.
FIG. 171 is a decision table 1630 of the steps performed by the scene procedure when a component has been loaded.
FIG. 172 is a decision table 1640 of the steps performed by the scene procedure when a component forces a scene to complete.
FIG. 173 is a decision table 1650 of the steps performed by the scene procedure when a scene is held.
FIG. 174 is a decision table 1660 of the steps performed by the scene procedure when a scene is released from being held.
FIG. 175 is a decision table 1670 of the steps performed by the scene procedure when a non-sequential scene has been selected to be played next.
FIG. 176 is a decision table 1680 of the steps performed by the scene procedure when the scene is terminated.
FIG. 177 is a decision table 1700 of the steps performed by the Asset Manager when the Asset Manager is initialized and started.
FIG. 178 is a decision table 1710 of the steps performed by the Asset Manager to determine the type of user request initiated by the user.
FIG. 179 is a decision table 1720 of the steps performed by the Asset Manager to process a Registration request call by the user.
FIG. 180 is a decision table 1730 of the steps performed by the Asset Manager to process a Scene Prep request call by the user.
FIG. 181 is a decision table 1740 of the steps performed by the Asset Manager to process a Scene Stage request call by the user.
FIG. 182 is a decision table 1750 of the steps performed by the Asset Manager to process a Scene Load request call by the user.
FIG. 183 is a decision table 1760 of the steps performed by the Asset Manager to process a Scene Play request call by the user.
FIG. 184 is a decision table 1770 of the steps performed by the Asset Manager to process a Scene Unload request call by the user.
FIG. 185 is a decision table 1780 of the steps performed by the Asset Manager to determine if a request slot has a request available.
FIG. 186 is a decision table 1790 of the steps performed by the Asset Manager to determine if a request from a request slot has completed.
FIG. 187 is a decision table 1800 of the steps performed by the Asset Manager to determine which request slot will be processed next.
FIG. 188 is a decision table 1810 of the steps performed by the Asset Manager to process all operations assigned to a given request slot.
FIG. 189 is a decision table 1820 of the steps performed by the Asset Manager to determine the type of operation to be processed next.
FIG. 190 is a decision table 1830 of the steps performed by the Asset Manager when a Prep operation is processed.
FIG. 191 is a decision table 1840 of the steps performed by the Asset Manager when a Stage operation is processed.
FIG. 192 is a decision table 1850 of the steps performed by the Asset Manager when a Load operation is processed.
FIG. 193 is a decision table 1860 of the steps performed by the Asset Manager when a Play operation is processed.
FIG. 194 is a decision table 1870 of the steps performed by the Asset Manager when an Unload operation is processed.
FIG. 195 is a decision table 1900 of the steps performed by the Active Content Loader when the Active Content Loader is initialized and started.
FIG. 196 is a decision table 1910 of the steps performed by the Active Content Loader to determine the type of request call to be processed.
FIG. 197 is a decision table 1920 of the steps performed by the Active Content Loader when a Register request call is processed.
FIG. 198 is a decision table 1930 of the steps performed by the Active Content Loader when an Unregister request call is processed.
FIG. 199 is a decision table 1940 of the steps performed by the Active Content Loader when a request call is queued.
FIG. 200 is a decision table 1950 of the steps performed by the Active Content Loader when a request call is dequeued.
FIG. 201 is a decision table 1960 of the steps performed by the Active Content Loader when the Loader Frame Loop is run.
FIG. 202 is a decision table 1970 of the steps performed by the Active Content Loader when it processes Load operations.
FIG. 203 is a decision table 1980 of the steps performed by the Active Content Loader when it determines if one or more loads have completed.
FIG. 204 is a decision table 1990 of the steps performed by the Active Content Loader when it determines if one or more loads have requested to be aborted.
FIG. 205 is a decision table 2000 of the steps performed by the Active Content Loader when the Loader Frame Loop processes Load operations.
FIG. 206 is a decision table 2010 of the steps performed by the Active Content Loader when a Scene Prep request is processed.
FIG. 207 is a decision table 2020 of the steps performed by the Active Content Loader when a Scene Stage request is processed.
FIG. 208 is an alternate decision table 2022 of the steps performed by the Active Content Loader when a Scene Stage request is processed.
FIG. 209 is a decision table 2025 of the steps performed by the Active Content Loader when Copy Component Parameters request is processed.
FIG. 210 is a decision table 2028 of the steps performed by the Active Content Loader when a Check Scene Checksums request is processed.
FIG. 211 is a decision table 2030 of the steps performed by the Active Content Loader when a Clip Load request is processed.
FIG. 212 is a decision table 2040 of the steps performed by the Active Content Loader when a Scene Load request is processed.
FIG. 213 is a decision table 2050 of the steps performed by the Active Content Loader when a file is selected that matches the current bandwidth, CPU cycles, and frame rates available to the Active Content Loader.
FIG. 214 is a decision table 2060 of the steps performed by the Active Content Loader when determining the amount of available bandwidth.
FIG. 215 is a decision table 2070 of the steps performed by the Active Content Loader when determining the amount of available CPU cycles.
FIG. 216 is a decision table 2080 of the steps performed by the Active Content Loader when determining the available frame rate.
DETAILED DESCRIPTION OF THE INVENTION
The following definitions are not meant to be limiting in nature and serve to provide a clearer understanding of certain aspects of the present invention.
Definitions:
Rich-media—Rich-media relates to the integration of multimedia components into Internet content such as websites, advertisements, and online editorial content (news, sports, etc.).
Rich-media applications—Rich-media applications include applications composed of one or more rich-media components.
Rich-media components—Rich-media components include 3D graphics, video clips, animation, special effects (including, but not limited to, zooms, wipes, fades, and spinning text), sound effects, and stereo music. Rich-media components may include WAV sound files, MP3 sound files, MPEG movie files, JPEG graphic files, GIF graphic files, SWF Shockwave Flash® files, and Java® applets.
CPU—A Central Processing Unit may be used to refer to a single processor, microprocessor, server, or other computer processor, or a group of processors, microprocessors, servers, or other computer processors that controls a computer-based system.
Internet—The Internet may be used as a generic term referring to any network of interconnected computers. The Internet includes terms such as, but not limited to, the Internet, the Internet 2, the World Wide Web, and Intranets.
GUI—A Graphical User Interface may be a means for a user to interact with a computer-based application. The GUI may be a graphical window that allows a user to input text, press buttons, move slider bars, or otherwise modify components that are used to effect the underlying application's parameters.
Cycle Pig—Cycle Pig may be used to refer to a clip that may use a large proportion of the CPU cycles. The Asset Manager may keep a dynamic cycle availability value for handling Cycle Pig processing.
Bandwidth Hog—Bandwidth Hog may be used to refer to a clip that may use a large proportion of the network transmission bandwidth. The Asset Manager may keep a dynamic bandwidth availability value for handling Bandwidth Hog processing.
Child—A child may be a component that performs part of an operation performed by a parent component. The child may be modified by a request made to its parent component. For example, a rich-media component that displays an animated movie may contain both a graphical child component and an acoustic child component.
Parent—A parent may be a component that contains child components.
Local Volume—Local volume may be a variable assigned to a single rich-media component. The local volume may determine a rich-media component's volume in relation to other rich-media components in a scene.
Global Volume—Global volume may be a variable assigned to a rich-media application as a whole. If the global volume is set to zero, the rich-media application may not produce any sound. Otherwise, the global volume may be used as a scaling factor from 0-100% of the maximum volume.
Chrome File—A chrome file may contain both the visible portion of a component and programs that may control the operation of the chrome file or may report mouse events to the control file.
Control File—A control file may contain programs that operate the component. Such programs may include ones that assign data from the component's data block file to the component's attributes, respond to reports of mouse events from the chrome file, and control the underlying function of the component.
Data Block File—A data block file may contain the data that comprises a component's attributes.
Atomic—An atomic may be a chrome file that is shared by one or more components. For instance, an atomic may be an image that is used for a scene background and for a window background simultaneously.
Mouse Event—A mouse event may comprise one or more actions that are performed by the user with the user's mouse. Examples of mouse events may include rollovers, rollouts, presses, releases, dragovers, dragouts, and clicks.
Grid—A grid may comprise a series of horizontal and vertical lines that are evenly spaced. The distance between two horizontal lines or two vertical lines in the grid may be controlled by user input.
Grid Point—A grid point may comprise an intersection between a horizontal and a vertical line in a grid that may be used to align one or more components.
Guide Line—A guide line may comprise a horizontal line or a vertical line that may be used to align one or more components.
Snap—A component may snap to a grid point or a guide line when the snapping function is enabled. Snapping involves the computer process determining the nearest grid point or guide line and moving the center of the component to the grid point or the guide line.
Reference will now be made in detail to implementations of the present invention as illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings and the following description to refer to the same or like parts.
The present invention embodies systems and methods for allowing a user to create rich-media applications via the Internet. Presentation of content using rich-media is a new Internet paradigm. Rich-media enables Internet application designers to engage and hold application viewers'attention by attracting, transacting, and communicating with viewers online. It simplifies the presentation of complex information with much greater sensory and communicative impact than previous Internet design methods, such as coding in HTML.
Rich-media productions are programmed and edited using powerful and complex tools designed for this purpose. Such productions are a recent phenomenon to the Internet and have only been made possible by the introduction of multimedia tools and technologies for the creation of high-production Internet content. None of these multimedia tools and technologies, however, allows for the creation of rich-media applications via the Internet.
Users of the present invention may design visually enticing websites containing three-dimensional graphics that expand, contract, move across the screen, or fade from view instead of simply presenting a page of text. The website may use rotating logos or symbols for access to other pages instead of blue, underlined hyperlinks. The website may have symphonic quality sound or incorporate movie clips as well. Alternatively, a rich-media application might encompass an Internet cartoon, a magazine, a movie, an advertisement, or other applications that focus on providing entertainment rather than information.
In a specific embodiment of the present invention, a business method relating to providing a user with a method of designing and creating a rich-media application via the Internet may be implemented by accessing the rich-media application development tools on a third party website and using them to create the rich-media application. In a specific embodiment, the third party may charge a fee from the user. In a specific embodiment, the fee may be charged for using the rich-media application development tools. In a specific embodiment, the fee may be charged for using the created rich-media application.
In a specific embodiment of the present invention, a business method relating to providing the rich-media application development tools to a third party website maintainer includes the step of assisting in the development of a software platform to allow the use of the rich-media application development tools on the third party's website. In a specific embodiment, the right to use the rich-media application development tools may be licensed for a fee to the third party. In a specific embodiment, this fee may be collected from the third party as one or more of the following a one-time fee, a per-customer fee, a per-project fee, a time-based fee (e.g., daily, weekly, monthly, yearly).
In a specific embodiment of the present invention, a business method relating to providing third party website maintainers with a method of providing users the ability to create rich-media applications via the Internet by assisting in the development of a software platform using rich-media application development tools on said third party's website. In a specific embodiment of the present invention, the third party purchases the right to use said software platform containing rich-media application development tools. In a specific embodiment of the present invention, the purchase of the right to use the rich-media application development tools includes the third party paying a fee on a one-time basis, a per-customer basis, a per-project basis, and/or a time-based manner.
FIG. 1 illustrates an exemplary computer system 10 that may be modified in accordance with the principles of the present invention. The exemplary computer system comprises a computer subsystem for the user and a computer subsystem on which the present invention may reside.
On the user side, one or more user interface devices, such as a terminal 11, a keyboard, and a monitor may be connected to a computer 12, such as a main frame computer, minicomputer, microprocessor, server, etc. The computer 12 may include a mass-storage memory device and other memories 13, and also other input or output devices 14. The computer 12 may be connected to the Internet via an Internet connection 15. The mass-storage memory device may include one or more of the following, but is not limited to, a server-based computer system, a hard drive, RAM, or ROM.
On the host side, one or more user interface devices, such as a terminal 21, a keyboard, and a monitor may be connected to a computer 22, such as a main frame computer, minicomputer, microprocessor, server, etc. The computer 22 may include a mass-storage memory device and other memories 23, and also other input or output devices 24. The computer 22 may be connected to the Internet via an Internet connection 25. The mass-storage memory device may include one or more of the following, but is not limited to, a server-based computer system, a hard drive, RAM, or ROM.
The user and host computer systems may be connected to each other through the Internet via their respective Internet connections 15 and 25.
A computer program for creating rich-media applications resides in the host memory device 23 for operation on the host computer 22. This computer program presents the user with a variety of options including, but not limited to, the ability to view the functionality of the computer program, the ability to create, modify, or delete accounts designed by a user, the ability to enter or leave a restricted area of the program, the ability to access account and project information, and the ability to access the part of the program designed for the creation of rich-media applications.
Host Webpage Design
FIG. 2 shows a specific embodiment of the present invention where the user may be presented with a series of Internet browser windows upon accessing the underlying program. First, the user views the Introduction page 31, which displays a rendering of the present invention's graphic and acoustic capabilities. The program automatically loads the Login page 32 upon completion of the Introduction page. The Login page 32 offers a menu of pages to access. These pages may include the Tour page 33, the Join page 34, and the Showroom page 35. If no links are selected, the program may automatically load these pages in sequence before returning the user to the Login page 32. If the user enters a username and password (collectively 36), the program verifies the combination and either accepts or denies access to the User Homepage 40. If the user is denied access to the User Homepage 40, then the user may be returned to the Login page 32 to attempt to enter a valid username/password combination.
In this embodiment, the Tour page 33 may be an automated series of scenes designed to highlight the present invention's functionality and features. The features that the page displays may include an inventory of production types, component drag-and-drop loading, component-editing GUIs, an inventory of components, and user-image uploads. The Join page 34 allows new users to register to use the present invention. The page includes a series of dialog boxes that ask for pertinent information from the user such as name, address, e-mail address, telephone numbers, and other contact information. The Showroom page 35 shows the user examples of rich-media applications that were created using the present invention.
The User Homepage 40 provides access to a user's account profile and allows the user to select options to, e.g., create a new rich-media application or modify an existing rich-media application. The page contains an Open Project list 45 of the user's currently open applications listed with name, date of most recent modification, and a brief description. The user may directly select an application to modify by clicking on the appropriate application in the Open Project list 45. In the alternative, the user may select from a menu accessing, e.g., the following pages: Account Information 41; Project Setup & Information 42; Project Statistics 43; and New Project 44. Each of the first three links loads its respective page. The New Project link 44 opens the Builder page 50.
The Account Information page 41 allows a user to review user data, such as registration information, billing information and status, project summaries, account preferences, and user terms.
The Project Setup & Information page 42 allows a user to review and modify project-specific information and settings, such as the project description, objectives, site type, site map, site assets (graphic files and uploads, etc.), site performance, and e-commerce and publishing specifications. This link may display a list of projects, from which the user may make a selection. A user may also load the Project Setup & Information page 42 by selecting Settings from the global command menu on the Builder page 50 when a project is loaded.
The Project Statistics page 43 allows a user to review aggregate and specific information on project activities including a weekly session log, server activity, and an access record for published projects. A user may load an overall statistics report screen that displays site activities relevant to specific sites, such as e-commerce traffic. Statistics are presented in graph and bar chart formats.
The Builder page 50, as illustrated in FIG. 3, comprises the functional center of a specific embodiment of the present invention, and may be where a user creates new projects or modifies existing projects. The page may be accessed from the User Homepage 40 either from the New Project link or directly from the Open Project list 45. Access from the New Project link 44 loads the Builder page 50 with a New Project window overlay, where the user names and briefly describes the new project before starting work. Access from the Open Project list 45 loads the Builder page 50 with the selected project ready for review and modification.
A specific embodiment of the present invention for designing and creating rich-media applications includes allowing a user to access a Builder page 50. In this embodiment, the Builder page 50 features a work area, builder component browsers docked and closed along the right margin, global menus extending along the top margin, and the project title at the left end of the top margin. The user may move the tabs and otherwise customize the layout of the Builder page 50, as desired, through simple cursor dragging. For a new project, the work area may appear black. With an existing project loaded for revision, the work area may contain the first scene of the project. The functional elements of the Builder page 50 may include Global Menus 60, the Scene Browser 70, the Component Browser 80, and Component GUIs 90.
The Global Menus 60 allow the user to perform many of the basic functions of the Login page 32 and User Homepage 41 from within the Builder page 50, as well as perform basic project functions, such as saving, closing, or previewing a project. The menus may be arranged under three main headings listed along the top page margin. When the cursor is placed over a main heading, the heading may illuminate and a corresponding drop-down menu may appear below. The cursor may then be brought down to the desired item and the item selected. The user may reposition the menus along the top margin by cursor dragging. Menus included in the Global Menus 60 may include the Account menu 61, the Project menu 62, and the Settings menu 63.
The Account menu 61 allows the user to access basic account information 41, create a new account 34, login to a different account 36, or logout 360. Selecting a menu item loads an appropriate dialog box that verifies the user's intent with simple cancel and accepts options. An "accept" selection loads the appropriate page.
The Project menu 62 allows the user to Start a New Project 44, Open an Existing Project 45, Save Project 310, Close Project 320, Delete Project 330, Publish Project 340, or Preview Project 350 for the current project showing on the Builder page 50.
The Settings menu 63 links to the Project Setup & Information page 43 where project specifications for a project loaded into the Builder page 50 may be reviewed.
The Scene Browser 70 may be opened when the user selects the Scene tab located on the right margin. The tab may then extend into the page and display the scenes as "thumb-nail" images that comprise the production. A user may scroll the scenes using the arrows on the bottom bar of the browser window. Selecting a scene image immediately loads that scene into the Builder page 50. Selecting the title bar below the image displays a scene command menu with the following options: Modify Scene 800, Insert New Scene 810, Edit Scene Info 820, Delete a Scene 830, and Reorder Scenes 840. These commands may be used at any time when the user may be in the Builder page 50.
The Component Browser 80 enables the user to review and select from the components available in the project. Such co |