The present disclosure relates to a music reproduction program, a music reproduction device, and a music reproduction method for reproducing music data stored in an electronic device.
In recent years, more and more people have been doing exercise such as running while listening to music. Taking running as an example, a runner usually runs while listening to music stored in a portable terminal such as a smartphone with headphones (earphones).
When the running pace is similar to the tempo of the music being listened to, a runner can run comfortably while enjoying the music. There is a need for a music reproduction program, a music reproduction device, and a music reproduction method that can reproduce music data so that a person can exercise while enjoying music corresponding to the pace of exercise.
A first aspect of one or more embodiments provides a computer software product that includes a non-transitory storage medium readable by a processor, the non-transitory storage medium having stored thereon a set of instructions for performing music reproduction, the instructions including: a first set of instructions of setting a BPM graph showing a tempo of a music file that a user listens to from a start to an end of exercise at a distance or time preset when the user does a predetermined exercise; a second set of instructions of, when setting a music file that the user listens to at any progress time point in the distance or time after the start of the exercise, selecting a music file having a BPM value within a predetermined range based on a BPM value at a progress time point in the graph set in the setting of the graph; and a third set of instructions of reproducing the music selected in the selecting of the music to make the user listen to the music, wherein the second set of instructions selects, when selecting a second music to be reproduced next to a first music being reproduced by the third set of instructions, during the reproduction of the first music, regardless of whether or not the BPM value set in the graph exceeds the predetermined range based on a BPM value set in the graph at a progress time point when the first music is selected, a music file having a BPM value within the predetermined range based on a BPM value set in the graph at a process time point when the reproduction of the entire first music is completed.
A second aspect of one or more embodiments provides a music reproduction device including: a graph setting unit configured to set a BPM graph showing a tempo of music that a user listens to from a start to an end of exercise at a distance or time preset when the user does a predetermined exercise; a music selection unit configured to select, when a music file that the user listens to is set at any progress time point in the distance or time after the start of the exercise, a music file having a BPM value within a predetermined range based on a BPM value at a progress time point in the graph set in the graph setting unit; and a reproduction unit configured to reproduce the music selected by the music selection unit so that the user can listen to the music, wherein the music selection unit selects, when a second music to be reproduced next to a first music being reproduced by the reproduction unit, during the reproduction of the first music, regardless of whether or not the BPM value set in the graph exceeds the predetermined range based on a BPM value set in the graph at a progress time point when the first music is selected, a music file having a BPM value within the predetermined range based on a BPM value set in the graph at a process time point when the reproduction of the entire first music is completed.
A third aspect of one or more embodiments provides a music reproduction method including: setting a BPM graph showing a tempo of music that a user listens to from a start to an end of exercise at a distance or time preset when the user does a predetermined exercise by a processor of an electronic device; when selecting a music file that a user listens to among a plurality of music pieces stored in the electronic device at any progress time point from the from start to the end of the exercise, selecting a music file having a BPM value within a predetermined range based on the BPM value at the progress time point in the graph by the processor; and reproducing the selected music by a reproduction unit provided in the electronic device to make the user listen to the music, wherein the processor selects, when a second music to be reproduced next to a first music being reproduced is selected, during the reproduction of the first music, regardless of whether or not the BPM value set in the graph exceeds the predetermined range based on a BPM value set in the graph at a progress time point when the first music is selected, a music file having a BPM value within the predetermined range based on a BPM value set in the graph at a process time point when the reproduction of the entire first music is completed.
Hereinafter, a music reproduction program, a music reproduction device, and a music reproduction method according to one or more embodiments will be described with reference to the accompanying drawings. In one or more embodiments, a music reproduction program, a music reproduction device, and a music reproduction method capable of selecting and reproducing a music file corresponding to the preset pace at which a runner runs taken as running as an example of exercise are exemplified.
First, the configuration of the music reproduction device according to one or more embodiments will be described using
A storage device 3, a decoder 4, a D/A converter 5, a network interface 8, an operation unit 9, a display 10, a GNSS receiver 11, and a clock 12 are connected to the CPU 1 through the bus 14. Headphones (earphones) 7 are connected to an output terminal 6 connected to the D/A converter 5. An unillustrated runner (user of a portable terminal) runs while wearing the headphones 7 on the ears.
The storage device 3 is an example of a non-transitory storage medium, and is configured by a flash memory, for example. The storage device 3 stores an operating system for operating a portable terminal, an application program which is the music reproduction program according to one or more embodiments, music data, and history data. The music data is a digitally encoded audio signal of a predetermined format.
The operation unit 9 is a touch panel integrated with operation buttons or the display 10 provided on a housing of the portable terminal. In one or more embodiments, the operation unit 9 is mainly a touch panel. The display 10 is a liquid crystal display panel or an organic electroluminescent (organic EL) panel.
The GNSS receiver 11 receives radio waves from three or more satellites for the global navigation satellite system (GNSS). GNSS is a global positioning system (GPS) as an example. The CPU 1 can detect the position of the portable terminal by the GNSS signal based on the radio wave received by the GNSS receiver 11. The GNSS receiver 11 may be configured to include a computing unit to detect the position of the mobile terminal. In this case, the GNSS receiver 11 supplies the position information to the CPU 1.
In
The runner may manually set the BPM value of each music file by the operation unit 9 and store the BPM value in the storage device 3. The runner may access the Internet through the network interface 8 to obtain the BPM value of each music file from the website and store the BPM value in the storage device 3. Note that the BPM value of a music file can be easily analyzed by general purpose software.
Processes executed by the music reproduction program and the music reproduction method according to one or more embodiments using the flowcharts shown in
In
When the runner operates the new creation button 101, it is possible to create a new menu (hereinafter, referred to as a run menu) for associating the running plan by the runner with the music file that the runner listens to during running. When the runner operates the history selection button 102, the run menu based on the running history created by the runner in the past can be used.
In one or more embodiments, in the case where the operation unit 9 is a touch panel, operating the button shown on the display 10 means touching the button.
In step S2, the CPU 1 determines whether or not “create new” is selected by operating the new creation button 101. When “create new” is selected (YES), the CPU 1 executes a run menu new creation process in step S3, and when “create new” is not selected (that is, “select from history” is selected) (NO), a running history selection process is executed in step S4.
Here, the details of the new run menu creation process in step S3 will be described using
As shown in
In step S302, the CPU 1 determines whether or not the distance or the time is set. When the distance or time is set by the operation of the next image shift instruction button 105 (YES), the process is shifted to step S303, and when the distance or time is not set (NO), the process of step S302 is repeated.
Note that the setting data of the distance or time set in
At step S303, the CPU 1 shows a graph setting image of the BPM shown in
Here, since the running time is set to 1 hour and 30 minutes, 00:00 is displayed at the left end as the time information 109 at the time of the start of running, 00:45 is displayed at the center, and 01:30 is displayed at the right end at the time of the end of running. As the BPM value information 110, BPM values are displayed in 50-step increments from 50 at the lower end to 200 at the upper end.
The CPU 1 displays a linear graph 111 in the graph display area 106 at a position of 100 as an initial value of the BPM value. The initial value of the BPM value is not limited to 100. In step S304, the CPU 1 determines whether or not an operation of adjusting the BPM graph 111 is performed, and when the operation is performed (YES), the adjusted BPM graph 111 is set in step S305 (graph setting step).
Specifically, as shown in
When the next image shift instruction button 108 is operated, the CPU 1 shifts to a state in which the BPM value of the graph 111 can be set at a plurality of positions as shown in
The graph 111 shown in
The operation of adjusting the BPM graph 111 in step S304 includes an operation of moving the graph 111 shown in
In addition, since a music file with a high BPM value is up-tempo music, it is suitable for listening when the pace at which a runner runs is fast. Since a music file with a low BPM value is slow tempo music, it is suitable for listening when the pace at which the runner runs is slow. The runner recognizes the BPM value corresponding to the pace at which the runner runs. Therefore, the runner can adjust the BPM graph 111 in accordance with the running plan at a pace that the runner runs within a preset distance or time.
The graph 111 shown in
In step S306, the CPU 1 determines whether or not an operation of setting a designated music file is performed, and when the operation is performed (YES), the designated music file is set in step S307 (designated music setting step). Specifically, when a designated music setting shift instruction button 112 is operated in
When the runner touches one of the positions from 00:00 at the start of running to 01:30 at the end of running in the designated music setting position instruction area 114, for example, the CPU 1 displays a designated music setting mark 115 of the star mark in the designated music setting position instruction area 114. The position where the designated music setting mark 115 is displayed is the time position set to reproduce the designated music file.
However, as will be described later, in the case where the music file being reproduced is not finished immediately before the time position where the designated music setting mark 115 is displayed, the CPU 1 performs control to reproduce the designated music file after the reproduction of the music file being reproduced immediately before is completed. Therefore, the position where the designated music setting mark 115 is displayed may not be the time position to start the reproduction of the designated music file.
Here, since the time for running is set, the position in the left and right direction of the designated music setting position instruction area 114 in which the designated music setting mark 115 is displayed indicates the time position. When the distance to run is set, the position in the left and right direction of the designated music setting position instruction area 114 indicates the position on the distance. The position in the left and right direction when the time information 109 or the distance information is displayed in the left and right direction of the display 10 indicates a progress time point of the distance or time.
As an example, when the designated music setting mark 115 is touched, the CPU 1 displays a music list to select any music data from the music data stored in the storage device 3 as the designated music file. The CPU 1 sets the music data selected from the music list as the designated music file.
In step S308, the CPU 1 determines whether or not an operation of returning to the adjustment of the BPM graph 111 is performed. When the operation of returning to the adjustment of the BPM graph 111 is performed (YES), the CPU 1 returns the process to step S304. Specifically, when a graph adjustment return button 116 described as “to pace setting” is operated in
When the operation of returning to the adjustment of the BPM graph 111 is not performed (NO), the CPU 1 determines whether or not the operation of shifting to the image for instructing the start of running is performed in step S309. When the operation of shifting to the image for instructing the start of running is performed (YES), the CPU 1 shifts to the image for instructing to start running in step S311. Specifically, when a next image shift instruction button 113 described as “next” is operated in
When it is determined that the operation of shifting to the image for instructing the start of running is not performed (NO) in step S309, the CPU 1 returns the process to step S308.
On the other hand, when the operation of setting the designated music file is not performed in step S306 (NO), the CPU 1 determines whether or not the operation of shifting to the image for instructing the start of running is performed in step S310. When the operation of shifting to the image for instructing the start of running is performed (YES), the CPU 1 shifts to the image for instructing to start the running at step S311. Specifically, in
When it is determined that the operation of shifting to the image for instructing the start of running is not performed (NO) in step S310, the CPU 1 returns the process to step S306.
Next, the details of a running history selection process of step S4 will be described using
In step S402, the CPU 1 determines whether or not any of the running histories are selected from the running history list. When any of the running histories are not selected (NO), the CPU 1 repeats the process of step S401. When any of the running histories are selected (YES), in step S403, CPU 1 displays the corresponding graph image including the BPM graph 111, a broken line 141, and a playlist 118 on the display 10 as shown in
The data showing the running history includes data showing the graph 111 set by the runner, data showing the BPM value of the reproduced music file, and data of the reproduced music playlist.
In
In
The CPU 1 draws a corresponding graph image based on the data showing the graph 111 and the data showing the BPM value of the reproduced music file, and displays the playlist 118 on the display 10 based on the data of the playlist.
The image shown in
In step S404, the CPU 1 determines whether or not an instruction to return to the running history list is given by the operation of the running history return button 119. When the instruction to return the running history list is given (YES), the CPU 1 returns the process to step S401, and when the instruction to return the running history list is not given (NO), the process is shifted to step S405.
In step S405, the CPU 1 determines whether or not it is determined to use the displayed playlist 118 as the determination button 120 is operated. When the determination button 120 is not operated (NO), the CPU 1 returns the process to step S404. When the determination button 120 is operated (YES), the CPU 1 shifts to an image for instructing the start of running as in
In
Returning to
In step S51, the CPU 1 determines whether or not the running start button 117 shown in
In one or more embodiments, it is assumed that the runner listens to music files while running, so the start and the end of running is equivalent to the start and the end of music reproduction.
When the instruction to start running is not given (NO), the CPU 1 repeats the process of step S51. When the instruction to start running is given (YES), the CPU 1 executes a music selection and reproduction process in step S61, and concurrently, executes an image display process on the display 10 in step S71.
Here, the details of the music selection and reproduction process in step S61 will be described using
When the designated music file is not set at the start of the BPM graph 111 (NO), the CPU 1 acquires the BPM value at the start of the BPM graph 111 in step S602. In step S603, the CPU 1 extracts music files having a BPM value approximate to the acquired BPM value. Taking the graph 111 of
As an example, the CPU 1 searches for music files having a BPM value of ±3 with reference to the acquired BPM value, and when there is a music file within the range, the CPU 1 extracts the music file within the range. When there is no music file within the range, the CPU 1 searches for music files having a BPM value of ±6, and when there is a music file within the range, the CPU 1 extracts the music file within the range. A range for expanding the search range of BPM values at one time and the number of times of expansion of the search range are arbitrary.
In step S604, the CPU 1 randomly selects and reproduces one music file from the extracted music files (a music selection step and a first reproduction step). The CPU 1 reads the music data of the selected music file from the storage device 3. The decoder 4 decodes the music data read out under the control of the CPU 1, and the D/A converter 5 converts the digital audio signal of the decoded music data into an analog audio signal. Thereby, the runner can run while listening to the music file with the headphones 7.
In step S605, the CPU 1 determines whether or not the reproduction of the entire selected one music file is completed. When the reproduction of the entire music file is completed (YES), the CPU 1 acquires the BPM value at the end of music reproduction in the BPM graph 111 in step S606, and shifts the process to step S610.
When the reproduction of the entire music file is not completed in step S605 (NO), the CPU 1 determines whether or not an instruction to end the running is given in step S607.
The CPU 1 can calculate the running distance of the runner since the start of running based on a change in the position information. The CPU 1 can detect the elapsed time from the start of running by time measurement with a clock 12. The instruction to end the running will be described later.
When the instruction to end the running is given (YES), the CPU 1 shifts the process to step S617. When the instruction to end the running is not given (NO), the CPU 1 determines whether or not the music file being reproduced is skipped in step S608. The fact that the music file being reproduced is skipped in step S608 is that an instruction step of giving an instruction to reselect the music file to be reproduced is performed in response to an operation of skipping the music file being reproduced in a first reproduction step.
When the music file being reproduced is skipped (YES), the CPU 1 acquires the BPM value at the time of the skip operation in the BPM graph 111 in step S609, and shifts the process to step S610.
As in step S603, the CPU 1 extracts the music file having the BPM value approximate to the acquired BPM value in step S610. In step S611, the CPU 1 randomly selects and reproduces one music file from the extracted music files (music selection step and first reproduction step). The CPU 1 shifts the process from step S611 to step S617.
In step S617, the CPU 1 determines whether or not the instruction to end the running is given. When the instruction to end the running is given (YES), the CPU 1 shifts the process to step S618.
When the instruction to end the running is not given in step S617 (NO), the CPU 1 returns the process to step S605.
When the music file being reproduced is not skipped in step S608 (NO), the CPU 1 determines whether or not a distance or time position at which the designated music file is set is reached in step S612 in
When the distance or the time position at which the designated music file is set is reached in step S612 (YES), CPU 1 determines whether or not the reproduction of the entire music file being reproduced at the distance or time position at which the designated music file is set is completed in step S613. When the reproduction of the entire music file is completed (YES), the CPU 1 shifts the process to step S616.
When the reproduction of the entire music file is not completed (NO), the CPU 1 determines whether or not the music file being reproduced at the distance or time position at which the designated music file is set is skipped in step S614. When the music file being reproduced at the time position at which the designated music file is set is skipped (YES), the CPU 1 shifts the process to step S616. When the music file being reproduced at the distance or time position at which the designated music file is set is not skipped (NO), the CPU 1 determines whether or not the instruction to end the running is given in step S615.
When the instruction to end the running is not given in step S615 (NO), the CPU 1 returns the process to step S613. When the instruction to end the running is given (YES), the CPU 1 shifts the process to step S618 in
On the other hand, when the designated music file is set at the start of the BPM graph 111 in step S601 of
When the process is shifted from step S601, step S613, or step S614 to step S616, the CPU 1 reproduces the designated music file in step S616 (second reproduction step). The CPU 1 shifts the process from step S616 to step S617 in
Also in this case, the CPU 1 determines whether or not the instruction to end the running is given in step S617. When the instruction to end the running is given (YES), the CPU 1 shifts the process to step S618.
When the process is shifted from step S607 or step S617 to step S618, in step S618, the CPU 1 stops the reproduction of the music file and shifts the process to step S8 of
In the music selection and reproduction process shown in
The CPU 1 may create a playlist so that music files skipped in a short time are not included in the playlist. For example, the CPU 1 may control such that the music file reproduced by more than half of the total time of the music file is included in the playlist, and the music file reproduced by less than half is not included in the playlist. It may be arbitrarily set that the music file is not included in the playlist at less than a certain percentage when the music file is skipped.
Next, the details of an image display process of step S71 will be described using
In step S702, the CPU 1 measures the elapsed time, the running distance, and the pace, and displays a time display image on the display 10.
The time display image includes an area 122 for displaying an elapsed time, a running distance, and a pace, an area 123 for showing the music file being reproduced, and a progress bar 124 for showing the progress state of the music file being reproduced. The time display image further includes a pause button 125, a skip button 126, a running end button 127 described as “slide and end”, and a graph display image shift button 128 for shifting to a graph display image including the graph 111 described as “graph”.
In step S703, the CPU 1 determines whether or not the instruction to end the running is given by the operation of the running end button 127. The determination as to whether or not the instruction to end the running is given in steps S607 and S616 of
When the instruction to end the running is not given in step S703 (NO), the CPU 1 determines whether or not an instruction to shift to a graph display image is given by the operation of the graph display image shift button 128 in step S704. When the instruction to shift to a graph display image is not given (NO), the CPU 1 returns the process to step S702 and repeats the processes of steps S702 to S704. Thus, the time display image of
When the instruction to shift to a graph display image is given in step S704 (YES), the CPU 1 shifts to a graph display image as shown in
The graph display image includes a corresponding graph image including the BPM graph 111 and the broken line 141 showing the BPM value of the reproduced music file. Here, since it is a time during which the running is not ended yet, the broken line 141 is drawn halfway.
The graph display image also includes a pace up button 129 for increasing the running pace, a pace down button 130 for reducing the pace, and a time display image shift button 131 for returning to the time display image described as “time”.
Here, for the sake of convenience, it is expressed as increasing and decreasing the running pace, but strictly speaking, it means increasing and decreasing the BPM of the music file which the runner listens to during the running. The runner can easily increase the running pace by raising the BPM of the music file to listen to while running, and can decrease the running pace by lowering the BPM.
In step S706, the CPU 1 determines whether the running pace is increased or decreased by the operation of the pace up button 129 or the pace down button 130. When the operation to increase or decrease the running pace is performed (YES), the CPU 1 changes the set BPM graph 111 in step S707 (change step). The CPU 1 shifts the process from step S707 to step S708.
When it is determined that the running pace is not increased or decreased (NO) in step S706, the CPU 1 shifts the process to step S708.
In step S708, the CPU 1 determines whether or not the instruction to end the running is given. When the instruction to end the running is not given (NO), the CPU 1 determines whether or not the instruction to return to the time display image is given by the operation of the time display image shift button 131 in step S709. When the instruction to return to the time display image is given (YES), the CPU 1 returns the process to step S702. Thus, the display state of the display 10 is returned to the time display image similar to
When the instruction to return to the time display image is not given in step S709 (NO), the CPU 1 returns the process to step S705. Thus, the graph display image of
On the other hand, when the instruction to end the running is given in step S703 or step S708 (YES), CPU 1 displays a running result image on the display 10 in step S710.
Specifically, it is as follows.
In
In
As shown in
The running result is data stored in the temporary storage memory 2 in order to draw the corresponding graph image including the BPM graph 111 (and the designated music setting mark 115) and the broken line 141.
Returning to
Subsequently to step S712, the CPU 1 shifts the process to step S713. When the instruction to display the playlist is not given in step S711 (NO), the CPU 1 shifts the process to step S713.
In step S713, the CPU 1 determines whether or not an instruction to save the running result and the playlist is given by the operation of the save button 137 (whether an instruction to discard the running result and the playlist is given by the operation of the non-save button 136).
When the instruction to save the running result and the playlist is given (YES), the CPU 1 saves the running result and the playlist stored in the temporary storage memory 2 in the storage device 3 in step S714, and shifts the process to step S8 in
Returning to
When the instruction to start running is given (YES), the CPU 1 executes playlist reproduction for reproducing the music file of the playlist in step S62, and in parallel, performs an image display process on the display 10 in step S72. The image display process in step S72 is similar to the process in step S71. However, the image display process in step S72 may include at least processes for displaying a time display image or a graph display image as described in
Also in step S62, as in step S61, the CPU 1 stops the reproduction of the music file when the instruction to end the running is given. The CPU 1 shifts the process from step S62 and step S72 to step S8.
Even the case where the run menu is selected from the running history, as described in
In this case, as in
In
When the instruction to end the application program is given (YES), the CPU 1 ends the process. When the instruction to end the application program is not given (NO), the CPU 1 returns the process to step S8.
Furthermore, a switching operation (switching process) of the music file to be reproduced in one or more embodiments will be collectively described using
In
Since the BPM value of the graph 111 is 133 at the time t2, the CPU 1 selects a music file Mf having a BPM value of 135 as a music file having a BPM value within a predetermined range based on the BPM value of 133. Thus, the music file to be reproduced is switched from the music file Md to the music file Mf.
In
In one or more embodiments, the music file Mf having a BPM value within a predetermined range based on the BPM value of the graph 111 in the time when the reproduction of the entire music file Md is completed is selected. Therefore, according to one or more embodiments, since the music file is not switched halfway, the runner can run while enjoying favorite music corresponding to the running pace.
For example, the CPU 1 selects the music file Me having a BPM value of 124, and the music file Me is reproduced from the time t2 when the reproduction is started until the time t3 when the reproduction of the entire music file is completed. The switching of the music file at the time t3 is similar to that at the time t2 in
In the example shown in
Of course, when the BPM value of the music file being reproduced immediately before the skip operation is not included within the predetermined range based on the BPM value of the graph 111 at the time when the skip operation is performed, the music file to be reproduced is switched to another music file.
The instruction step of giving an instruction to select the music file to be reproduced again by the operation of skipping the music file is substantially equivalent to the switching step of switching the music file to be reproduced to another music file.
During the reproduction of the music file Mf, the time reaches the time t12 set to reproduce the music file Mi of the designated music file. However, in one or more embodiments, even when the progress time point reaches a specific progress time point during the reproduction of the music file Mf, at the time t13 when the reproduction of the entire music file Mf being reproduced immediately before the specific progress time point is completed, the music file to be reproduced is switched from the music file Mf to the music file Mi.
Therefore, according to one or more embodiments, since the music file is not switched halfway, the runner can run while enjoying favorite music files corresponding to the running pace.
As described above, the application program which is the music reproduction program according to each of one or more embodiments causes the CPU 1 (computer) to execute the above-described steps. As shown in
The music reproduction device according to one or more embodiments may be configured to include hardware that performs operations corresponding to each of the above-described steps. The music reproduction device may include a graph setting unit which sets the BPM graph as described above, a music selection unit which selects music as so as described above, and a reproduction unit which reproduces the music file selected by the music selection unit so that the user can listen to the music file.
Preferably, the music reproduction device includes an instruction unit that gives an instruction to select music file to be reproduced again in response to the operation of skipping the music file. Preferably, the music reproduction device includes a designated music setting unit which sets music file designated to be reproduced at a specific progress time point.
Preferably, the music reproduction device includes a graph image display unit which displays a graph image on the display. Preferably, the music reproduction device includes a change unit which changes the BPM graph. Preferably, the music reproduction device includes a playlist creation unit which creates a playlist of the reproduced music files, and a playlist display unit which displays the playlist on the display.
The music reproduction program may be provided to any third party or any electronic device through a communication line such as the Internet and may be downloaded to the electronic device. The music reproduction program may be stored in a non-transitory storage medium and provided to any third party. The music reproduction device may have a configuration in which software and hardware are mixed. The use of software and hardware is optional. The hardware may be an integrated circuit.
Number | Date | Country | Kind |
---|---|---|---|
2017-015260 | Jan 2017 | JP | national |
This application is a Continuation of PCT Application No. PCT/JP2017/037863, filed on Oct. 19, 2017, and claims the priority of Japanese Patent Application No. 2017-015260, filed on Jan. 31, 2017, the entire contents of both of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2017/037863 | Oct 2017 | US |
Child | 16510189 | US |