1. A method of managing audio on an electronic device, comprising:
receiving audio requests from a plurality of applications executing on the device;
wherein the media playback requests indicate categories for media associated with the audio requests; and
determining how to route audio associated with the media playback requests based, at least in part, on the categories indicated by the media playback requests.
2. The method of claim 1, further comprising:
determining a current usage status of the device; and
the step of determining how to route audio is based, in part, on the current usage status of the device.
3. The method of claim 2, wherein the usage status further comprises user preferences.
4. The method of claim 2, wherein the usage status further comprises which of a plurality of outputs have been plugged into the device.
5. The method of claim 4, wherein the usage status further comprises the order in which the plurality of outputs were been plugged into the device.
6. The method of claim 1, wherein the device further comprises a plurality of outputs to which the audio may be directed, and the step of determining how to route further comprises determining to which output, of said plurality of outputs, to direct the media.
7. The method of claim 6, wherein the step of determining how to route further comprises determining whether to direct the media to no output of the device.
8. The method of claim 6, wherein the step of determining how to route further comprises determining whether to direct the media to all outputs of the device.
9. The method of claim 6, wherein the step of determining how to route further comprises determining what media to play.
10. The method of claim 6, wherein the step of determining how to route further comprises determining whether to enable a vibration means.
11. The method of claim 6, wherein the step of determining how to route further comprises determining whether to enable a vibration means and simultaneously direct the media to one of the plurality of outputs.
12. The method of claim 6, wherein the step of determining how to route further comprises determining whether to blink a display.
13. The method of claim 6, wherein the step of determining how to route further comprises determining whether to blink a display and simultaneously direct the media to one of the plurality of outputs.
14. The method of claim 6, wherein the step of determining how to route further comprises determining whether to blink a display, simultaneously enable a vibration means, and simultaneously direct the media to one of the plurality of outputs.
15. The method of claim 1, wherein the step of determining how to route further comprises determining a volume setting at which to play back the audio.
16. The method of claim 1, wherein the step of determining how to route further comprises:
extracting routing data from a matrix of data tables.
17. The method of claim 16, wherein the step of determining how to route further comprises:
changing policies by updating the matrix without modifying executable code of the media server.
18. The method of claim 1, wherein the step of determining how to route further comprises:
obtaining a status of physical switches present on the device.
19. The method of claim 16, further comprising:
establishing a set of default policies for each audio category; and
storing the policies in the matrix.
20. The method of claim 16, further comprising:
establishing policies that prohibit audio routing to predetermined outputs; and
storing the policies in the matrix.
21. The method of claim 16, further comprising:
discerning the intent of a requested audio category by referencing data from the matrix.
22. The method of claim 16, further comprising:
enforcing policies for each of the plurality of audio categories.
23. The method of claim 16, further comprising:
using metadata-based representations of the policies within the matrix.
24. The method of claim 16, further comprising:
using executable code-based representations of the policies within the matrix.
25. The method of claim 16, wherein the policies stored in the matrix are not rigidly enforced, but instead serve as a guide.
26. The method of claim 25, further comprising:
overriding of policies in the matrix based on user behavior.
27. The method of claim 16, further comprising:
storing a last in wins policy in the matrix.
28. The method of claim 1, further comprising:
removing unwanted noises.
29. The method of claim 1, further comprising:
performing volume-matching among a plurality of audio processors.
30. The method of claim 1, further comprising:
mixing audio from a plurality of applications.
31. The method of claim 1, further comprising:
ensuring that an audio volume selection is matched with an appropriate category.
32. The method of claim 1, further comprising:
imposing a capping policy where a maximum volume is imposed regardless of a user’s choice of volume selection.
33. The method of claim 1, further comprising:
lowering the volume of a first audio stream in order to temporarily increase emphasis on a second audio stream.
34. An apparatus for managing audio within an electronic device, comprising:
a system for coordinating inputs from a plurality of software applications, tracking and storing the status of a plurality of audio ports within the device, and routing audio from the software applications to a plurality of audio ports, wherein the system is located within the device;
a multi-dimensional decision matrix, for storing policy and priority data related to the audio in a plurality of data tables;
wherein the applications communicate the specific type of audio via audio categories.
35. The apparatus of claim 34, wherein each audio category has a plurality of default policies.
36. The apparatus of claim 35, further comprising:
at least one of the policies prohibits specific types of audio routing.
37. The apparatus of claim 35, further comprising:
at least one of the policies is for broadcasting specific categories of audio across all available outputs.
38. The apparatus of claim 36, further comprising:
at least one of the policies is for routing specific categories of audio to no outputs.
39. The apparatus of claim 35, wherein the system is responsible for determining what media to play.
40. The apparatus of claim 35, wherein the system is responsible for determining whether to enable a vibration means.
41. The apparatus of claim 35, wherein the system is responsible for determining whether to enable a vibration means and simultaneously direct the media to one of the plurality of outputs.
42. The apparatus of claim 35, wherein the system is responsible for determining whether to blink a display.
43. The apparatus of claim 35, wherein the system is responsible for determining whether to blink a display and simultaneously direct the media to one of the plurality of outputs.
44. The apparatus of claim 35, wherein the system is responsible for determining whether to blink a display, simultaneously enable a vibration means, and simultaneously direct the media to one of the plurality of outputs.
45. The apparatus of claim 34, further comprising:
wherein the data tables are updated whenever the user adds or removes a piece of hardware.
46. The apparatus of claim 35, further comprising:
wherein the representations of audio policies within the data tables are metadata-based.
47. The apparatus of claim 35, further comprising:
wherein the representations of audio policies within the data tables are code-based.
48. The apparatus of claim 35, wherein the system further comprises:
a media server which tracks the intent of the audio category;
an audio policy module which receives, stores, and processes a plurality of policies and priorities and outputs policy findings; and
an audio routing manager for implementing the policy findings;
wherein the media server, audio policy module, and audio routing manager are stored on the electronic device.
49. The apparatus of claim 34, wherein the system enforces policies for each of the numerous audio categories
50. The apparatus of claim 34, wherein the media server and audio policy module reference the plurality of data tables.
51. The apparatus of claim 34, further comprising:
wherein the audio routing manager is responsible for removing unwanted pops and other noises, volume-matching, and potentially mixing audio
52. The apparatus of claim 34, wherein the system ensures that a volume selection obtained from a user is linked only to a single predetermined audio category.
53. The apparatus of claim 34, wherein the system ensures that a user-selected volume level is linked only to a single audio output.
54. The apparatus of claim 34, wherein the system ensures that a user-selected volume level is linked only to a combination of a single predetermined audio category and a single audio output.
55. The apparatus of claim 34, further comprising:
wherein the system is responsible for capping policy wherein a maximum volume is imposed regardless of the user’s selection.
56. The apparatus of claim 34, further comprising:
wherein the system is responsible to lower the volume of a first audio stream in order to temporarily increase emphasis on a second audio stream.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A linear drive comprising a drive housing and a carriage guided for movement in the direction of a principal axis, said carriage being arranged with at least a part of its length in the direction of an upright axis adjacent to the drive housing and having at least one linear row of openings with first carriage openings spaced apart in the direction of the principal axis, said drive housing having at least one linear row of openings with first housing openings spaced from each other in the direction of the principal axis, such spaced first housing openings being able to be brought, by suitable positioning of the carriage, into an assembly position flush in the direction of the upright axis with one respective carriage opening so that attachment screws serving for the attachment of the linear drive may be completely inserted through the first carriage openings and inserted into the first housing openings, wherein the row of openings on the carriage comprises, in addition to the first carriage openings, second carriage openings in the form of threaded holes, which render possible the screwing in of attachment screws, which are inserted into the first housing openings through the first carriage openings, of a further similar linear drive mounted with its drive housing to the fore in a piggy-back fashion directly on the carriage, and wherein the first carriage openings and the second carriage openings are linearly aligned in the direction of the principal axis.
2. The linear drive as set forth in claim 1, wherein the first carriage openings are unthreaded.
3. The linear drive as set forth in claim 1, wherein the first and the second carriage openings are respectively arranged in groups in alternating succession.
4. The linear drive as set forth in claim 1, wherein the first and the second carriage openings are respectively arranged in pairs and in alternating succession with each other.
5. The linear drive as set forth in claim 1, wherein in a certain carriage position all first carriage openings are flush with first housing openings.
6. The linear drive as set forth in claim 1, wherein within the row of openings on the housing side at least one group of at least two directly sequential first housing openings is present.
7. The linear drive as set forth in claim 1, wherein at least the row of openings on the carriage side is arranged in the middle of the width in the carriage.
8. The linear drive as set forth in claim 1, wherein the drive housing delimits a longitudinally extending drive space, in which drive means adapted to perform a longitudinal movement are located, which are drivingly coupled with a carriage arranged in a linearly moving manner externally on the drive housing.
9. A linear drive comprising a drive housing and a carriage guided for movement in the direction of a principal axis, said carriage being arranged with at least a part of its length in the direction of an upright axis adjacent to the drive housing and having at least one linear row of openings with first carriage openings spaced apart in the direction of the principal axis, said drive housing having at least one linear row of openings with first housing openings spaced from each other in the direction of the principal axis, such spaced first housing openings being able to be brought, by suitable positioning of the carriage, into an assembly position flush in the direction of the upright axis with one respective carriage opening so that attachment screws serving for the attachment of the linear drive may be completely inserted through the first carriage openings and inserted into the first housing openings, wherein the row of openings on the carriage comprises, in addition to the first carriage openings, second carriage openings in the form of threaded holes, which render possible the screwing in of attachment screws, which are inserted into the first housing openings through the first carriage openings, of a further similar linear drive mounted with its drive housing to the fore in a piggy-back fashion directly on the carriage, and wherein the first housing openings are in the form of threaded holes whose thread diameter is sufficiently is large that the thread shank of a attachment screw may be inserted right through without threaded engagement, the thread diameter of such screw being equal to that of the second carriage openings.
10. A linear drive comprising a drive housing and a carriage guided for movement in the direction of a principal axis, said carriage being arranged with at least a part of its length in the direction of an upright axis adjacent to the drive housing and having at least one linear row of openings with first carriage openings spaced apart in the direction of the principal axis, said drive housing having at least one linear row of openings with first housing openings spaced from each other in the direction of the principal axis, such spaced first housing openings being able to be brought, by suitable positioning of the carriage, into an assembly position flush in the direction of the upright axis with one respective carriage opening so that attachment screws serving for the attachment of the linear drive may be completely inserted through the first carriage openings and inserted into the first housing openings, wherein the row of openings on the carriage comprises, in addition to the first carriage openings, second carriage openings in the form of threaded holes, which render possible the screwing in of attachment screws, which are inserted into the first housing openings through the first carriage openings, of a further similar linear drive mounted with its drive housing to the fore in a piggy-back fashion directly on the carriage, and wherein within the row of openings on the housing side in addition to the first housing openings second housing openings are provided, the second housing openings being in the form of threaded holes, whose thread diameter is the same as that of the second carriage openings and the diameter of the first housing openings is so large that the thread shank of an attachment screw, whose thread diameter is the same as that of the second housing opening, may be inserted without threaded engagement.
11. The linear drive as set forth in claim 10, wherein the first housing openings are unthreaded.
12. A linear drive comprising a drive housing and a carriage guided for movement in the direction of a principal axis, said carriage being arranged with at least a part of its length in the direction of an upright axis adjacent to the drive housing and having at least one linear row of openings with first carriage openings spaced apart in the direction of the principal axis, said drive housing having at least one linear row of openings with first housing openings spaced from each other in the direction of the principal axis, such spaced first housing openings being able to be brought, by suitable positioning of the carriage, into an assembly position flush in the direction of the upright axis with one respective carriage opening so that attachment screws serving for the attachment of the linear drive may be completely inserted through the first carriage openings and inserted into the first housing openings, wherein the row of openings on the carriage comprises, in addition to the first carriage openings, second carriage openings in the form of threaded holes, which render possible the screwing in of attachment screws, which are inserted into the first housing openings through the first carriage openings, of a further similar linear drive mounted with its drive housing to the fore in a piggy-back fashion directly on the carriage, and wherein the carriage possesses a head piece on whose end side at least two threaded holes lying on a line parallel to the upright axis are provided, whose distance apart is the same as the distance apart of two first housing openings and whose thread diameter is the same as that of the second carriage openings more particularly in such a fashion that a further similar linear drive having a perpendicular alignment is able to be screwed on.
13. A linear drive comprising a drive housing and a carriage guided for movement in the direction of a principal axis, said carriage being arranged with at least a part of its length in the direction of an upright axis adjacent to the drive housing and having at least one linear row of openings with first carriage openings spaced apart in the direction of the principal axis, said drive housing having at least one linear row of openings with first housing openings spaced from each other in the direction of the principal axis, such spaced first housing openings being able to be brought, by suitable positioning of the carriage, into an assembly position flush in the direction of the upright axis with one respective carriage opening so that attachment screws serving for the attachment of the linear drive may be completely inserted through the first carriage openings and inserted into the first housing openings, wherein the row of openings on the carriage comprises, in addition to the first carriage openings, second carriage openings in the form of threaded holes, which render possible the screwing in of attachment screws, which are inserted into the first housing openings through the first carriage openings, of a further similar linear drive mounted with its drive housing to the fore in a piggy-back fashion directly on the carriage, and wherein on the end side facing away from the drive housing the second carriage openings respectively possess a concentric centering widening part for the insertion of a centering sleeve and on the end side facing away from the carriage the first housing openings respectively have a concentric centering widened part for the insertion of a centering screw.
14. The linear drive as set forth in claim 13, wherein the second housing openings as well have a concentric centering widening part on the end side facing away from the carriage.