1. A collision detection apparatus, comprising:
a support member which is fixed to side members of a vehicle;
an absorber which is arranged at a vehicle front side of the support member to define a space therebetween;
a chamber member defining therein a chamber space which is substantially sealed, the chamber member being arranged in the space defined between the support member and the absorber; and
a pressure detection member for detecting a pressure in the chamber space, wherein
a collision of the vehicle is detected based on a variation in the pressure of the chamber space.
2. The collision detection apparatus according to claim 1, wherein
a collision with a pedestrian is detected based on a variation in the pressure of the chamber space detected by the pressure detection member.
3. The collision detection apparatus according to claim 1, wherein
the absorber and the support member construct a substantially cylinder shape having two ends, at least one of which is open,
the chamber member being inserted in the space between the absorber and the fifth support member through the one end.
4. The collision detection apparatus according to claim 1, wherein
the absorber and the chamber member are respectively made of materials which are separate from each other.
5. The collision detection apparatus according to claim 4, wherein the chamber member is made of the material which is softer than that of the absorber.
6. The collision detection apparatus according to claim 1, wherein the support member is a bumper reinforcement member of the vehicle.
7. The collision detection apparatus according to claim 1, wherein the collision with a bumper of the vehicle is detected based on the variation in the pressure of the chamber space.
8. The collision detection apparatus according to claim 1, wherein the support member and the absorber are integrally joined to each other.
9. The collision detection apparatus according to claim 1, wherein
the chamber member has a periphery shape substantially corresponding to a shape of the space defined between the first support member and the absorber.
10. The collision detection apparatus according to claim 1, wherein the pressure detection member is a pressure sensor.
11. The collision detection apparatus according to claim 1, wherein the support member and the absorber are integrally joined to each other by welding.
12. The collision detection apparatus according to claim 1, wherein the support member and the absorber are made of a metal band plate arranged so as to extend substantially in a width direction of the vehicle.
13. A collision detection apparatus, comprising:
a first support member which is fixed to side members of a vehicle;
an absorber functioning as a second support member which is arranged at a vehicle front side of the first support member to define a space therebetween;
wherein the absorber and the first support member construct a substantially cylinder shape having two ends, at least one of which is open;
a chamber member defining therein a chamber space which is substantially sealed, the chamber member being arranged in the space defined between the first support member and the second support member,
wherein the chamber member is inserted in the space between the absorber and the first support member through the one end; and
a pressure detection member for detecting a pressure in the chamber space, wherein
a collision of the vehicle is detected based on a variation in the pressure of the chamber space.
14. The collision detection apparatus according to claim 13, wherein the absorber and the chamber member are respectively made of materials which are separate from each other.
15. The collision detection apparatus according to claim 14, wherein the chamber member is made of the material which is softer than that of the absorber.
16. The collision detection apparatus according to claim 13, wherein the first support member is a bumper reinforcement member of the vehicle.
17. The collision detection apparatus according to claim 13, wherein the collision with a bumper of the vehicle is detected based on the variation in the pressure of the chamber space.
18. The collision detection apparatus according to claim 13, wherein the first support member and the second support member are integrally joined to each other.
19. The collision detection apparatus according to claim 13, wherein the chamber member has a periphery shape substantially corresponding to a shape of the space defined between the first support member and the second support member.
20. The collision detection apparatus according to claim 13, wherein the pressure detection member is a pressure sensor.
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 method for inferentially generating a virtual sequencer control from a sequence of MIDI commands, the method comprising:
receiving the sequence of MIDI commands generated by a plurality of MIDI instrument controls of at least one MIDI instrument;
identifying a first set of control data from the sequence of MIDI commands as sharing a first identified MIDI port, a first identified MIDI channel, and a first identified MIDI control change;
identifying a second set of control data from the sequence of MIDI commands as sharing a second identified MIDI port, a second identified MIDI channel, and a second identified MIDI control change;
generating a first proposed virtual sequencer control within a virtual MIDI sequencer, such that the first proposed virtual sequencer control is configured to generate control commands corresponding to the first identified MIDI control change and to output the control commands over the first identified MIDI port and the first identified MIDI channel; and
generating a second proposed virtual sequencer control within a virtual MIDI sequencer, such that the second proposed virtual sequencer control is configured to generate control commands corresponding to the second identified MIDI control change and to output the control commands over the second identified MIDI port and the second identified MIDI channel.
2. The method of claim 1, further comprising:
identifying a MIDI source data location and a learn window,
wherein receiving the sequence of MIDI commands comprises parsing MIDI commands from a portion of the MIDI source data location defined according to the learn window.
3. The method of claim 1, further comprising:
identifying a MIDI source data location and a set of \u201clearnable\u201d control types,
wherein receiving the sequence of MIDI commands comprises parsing, from the MIDI source data location, only MIDI commands that correspond to MIDI control commands for one of the set of \u201clearnable\u201d control types.
4. The method of claim 1, further comprising:
associating at least one of the first or second sets of control data from the sequence of MIDI commands as sequencer data of at least one of the proposed virtual sequencer controls; and
removing the associated set of control data from the sequence of MIDI commands.
5. The method of claim 1, further comprising:
inferring a control extent from a set of control data identified from the sequence of MIDI commands; and
attributing a respective one of the proposed virtual sequencer controls with a virtual control extent according to the inferred control extent.
6. The method of claim 1, further comprising:
identifying a bank switch command on at least one of the identified MIDI ports and respective identified MIDI channels from the sequence of MIDI commands; and
configuring the respective proposed virtual sequencer control to output a bank command when outputting its control commands.
7. The method of claim 1, further comprising:
generating an interactive graphical user interface element corresponding to at least one proposed virtual sequencer control, such that user manipulation of the graphical user interface element causes the at least one proposed virtual sequencer control to generate and output control commands according to the manipulation.
8. The method of claim 1, further comprising:
overwriting existing control data of at least one existing virtual sequencer control with at least one identified set of control data from the sequence of MIDI commands when the existing virtual sequencer control is determined to be associated with the same identified MIDI port, identified MIDI channel, and identified MIDI control change as that of at least one of the proposed virtual sequencer controls.
9. The method of claim 1, wherein at least one of the plurality of MIDI instrument controls is a physical MIDI instrument control.
10. The method of claim 1, wherein at least one of the plurality of MIDI instrument controls is a Non-Registered Parameter Number control or a Registered Parameter Number control.
11. The method of claim 1, further comprising:
identifying from the sequence of MIDI commands a set of MIDI programs; and
generating, for each of the set of MIDI programs, a proposed virtual sequencer control corresponding to a volume control for that MIDI program, regardless of whether any of the sequence of MIDI commands indicates volume control commands for that MIDI program.
12. The method of claim 11, further comprising:
determining whether an existing virtual sequencer control is loaded in the MIDI sequencer and configured to control volume for one of the set of MIDI programs; and
deleting the proposed virtual sequencer control corresponding to the volume control for the one of the set of MIDI programs when the existing virtual sequencer control loaded in the MIDI sequencer is determined to be configured to control volume for the one of the set of MIDI programs.
13. A computer-implemented sequencer system configured to communicate with a plurality of MIDI instrument controls of at least one MIDI instrument via a plurality of MIDI channels over at least one MIDI port, the sequencer system comprising:
a plurality of virtual sequencer control modules, each configured to generate and output control commands for automating at least one of the MIDI instrument controls;
a graphical user interface (GUI) module configured to provide manipulation of the control commands associated with each virtual sequencer control module via virtual manipulation by a user of an interactive GUI element corresponding to that virtual sequencer control module; and
an inferential control generator, configured to:
identify a first set of control data from a received sequence of MIDI commands as sharing a first identified MIDI port, a first identified MIDI channel, and a first identified MIDI control change, all associated with a first particular MIDI instrument control;
identify a second set of control data from the received sequence of MIDI commands as sharing a second identified MIDI port, a second identified MIDI channel, and a second identified MIDI control change, all associated with a second particular MIDI instrument control;
generate a first proposed virtual sequencer control configured to generate control commands corresponding to the first identified MIDI control change and to output the control commands over the first identified MIDI port and the first identified MIDI channel;
generate a second proposed virtual sequencer control configured to generate control commands corresponding to the second identified MIDI control change and to output the control commands over the second identified MIDI port and the second identified MIDI channel; and
generate at least one virtual sequencer control module from at least one of the proposed virtual sequencer controls.
14. The sequencer system of claim 13, wherein the GUI further comprises a learn mode interface configured to allow a user to preselect a learn widow defining a temporal portion of a MIDI source data location from which to parse the sequence of MIDI commands for use in inferential control generation.
15. The sequencer system of claim 13, wherein the GUI further comprises a learn mode interface configured to allow a user to preselect a set of \u201clearnable\u201d control types for which the inferential control generator will generate a proposed virtual sequencer control if corresponding MIDI commands are identified.
16. The sequencer system of claim 13, wherein the GUI further comprises a learn mode interface configured to allow a user to preselect whether to learn control extents for at least one of the proposed virtual sequencer controls from the sequence of MIDI commands or to use default maximum andor minimum extent values.
17. The sequencer system of claim 13, wherein the GUI further comprises a learn mode interface configured to allow a user to preselect which of a plurality of interactive GUI element types to be associated with an inferred virtual sequencer control type.
18. The sequencer system of claim 13, wherein the inferential control generator is further configured to:
identify a bank switch command on at least one of the identified MIDI ports and at least one of the identified MIDI channels from the sequence of MIDI commands; and
configure a respective proposed virtual sequencer control to output a bank command when outputting its control commands.
19. A method for inferentially generating a virtual sequencer control from a sequence of MIDI commands, the method comprising:
recording a MIDI song comprising a sequence of MIDI commands generated by a user manipulating a MIDI instrument control of a MIDI instrument;
selecting, via a MIDI sequencer, a learn window defining a temporal portion of the MIDI song from which to inferentially generate a virtual sequencer control; and
generating the virtual sequencer control by executing a MIDI learn mode of the MIDI sequencer, executing the MIDI learn mode causing a processor to perform steps comprising:
identifying a first set of control data from the sequence of MIDI commands as sharing a first identified MIDI port, a first identified MIDI channel, and a first identified MIDI control change, all associated with the MIDI instrument control;
identifying a second set of control data from the sequence of MIDI commands as sharing a second identified MIDI port, a second identified MIDI channel, and a second identified MIDI control change;
generating a first proposed virtual sequencer control configured to generate control commands corresponding to the first identified MIDI control change and to output the control commands over the first identified MIDI port and the first identified MIDI channel, such that outputting the control commands automates functionality of the MIDI instrument control associated with the first MIDI control change; and
generating a second proposed virtual sequencer control configured to generate control commands corresponding to the second identified MIDI control change and to output the control commands over the second identified MIDI port and the second identified MIDI channel, such that outputting the control commands automates functionality of the MIDI instrument control associated with the second MIDI control change.
20. A method for inferentially generating a virtual sequencer control from a sequence of MIDI commands, the method comprising:
receiving the sequence of MIDI commands generated by a plurality of MIDI instrument controls of at least one MIDI instrument;
identifying from the sequence of MIDI commands a set of MIDI programs;
identifying a set of control data from the sequence of MIDI commands as sharing an identified MIDI port, an identified MIDI channel, and an identified MIDI control change;
generating, for each of the set of MIDI programs, a proposed virtual sequencer control within a virtual MIDI sequencer, such that the proposed virtual sequencer control is configured to generate control commands corresponding to the identified MIDI control change and to output the control commands over the identified MIDI port and the identified MIDI channel,
wherein at least one of the proposed virtual sequencer controls for each MIDI program corresponds to a volume control for that MIDI program, regardless of whether any of the sequence of MIDI commands indicates volume control commands for that MIDI program.
21. The method of claim 20, further comprising:
determining whether an existing virtual sequencer control is loaded in the MIDI sequencer and configured to control volume for one of the set of MIDI programs; and
deleting the proposed virtual sequencer control corresponding to the volume control for the one of the set of MIDI programs when the existing virtual sequencer control loaded in the MIDI sequencer is determined to be configured to control volume for the one of the set of MIDI programs.