This application is the national phase under 35 U.S.C. §371 of PCT International Application No. PCT/JP00/00602 which has an International filing date of Feb. 3, 2000, which designated the United States of America.
The present invention relates to a data reproducing apparatus, data reproducing method and information terminal used in reproducing the data that is different in attribute, such as sound and images.
Due to the development of multimedia, various types of information are supplied through a network. These types of information include, representatively, sound, text or images. In karaoke communications, for example, music titles and words are text information, accompaniment melodies and background choruses are sound information, and background motion pictures are image information.
In karaoke communications, these various kinds of information are simultaneously distributed through the network so that each type of information is reproduced on the terminal unit. By providing synchronization mutually between these different types of information, the color of the words is varied or the motion picture is varied as the music progresses.
Conventionally, in order to provide synchronization, clocks have been provided in the respective programs for processing each of the different types of information, i.e., sound, text and images, whereby the synchronizing process has been made according to the time information of clocks. Using this configuration, wherein the system load is increased or so, there is possible mutual disagreement between the clocks, thereby causing so-called synchronizing deviation and hence deviated timing of the output of each type of information occurs. Thus, this results in disagreement between sound and images.
Meanwhile, sound, text, image data or the like is read out by accessing, every time, a file according to a command thus requiring time in processing. Furthermore, because the files have been separately prepared on a data-type basis, there also has been a problem with file management.
Therefore, it is a feature of the present invention to provide a data reproducing apparatus and data reproducing method capable of easily providing synchronization of reproducing various kinds of information that have different attributes.
Another feature of the invention is to provide a data reproducing apparatus with easy file management without the necessity of preparing files based on data type.
Another feature of the invention is to provide a data reproducing apparatus capable of easily embedding arbitrary information, such as sound, text and images, in an existing data format.
Another feature of the invention is to provide a data reproducing apparatus adapted for karaoke communications.
Another feature of the invention is to provide a data reproducing apparatus capable of obtaining realistic music play.
Another feature of the invention is to provide a data reproducing method capable of reducing the transfer amount of data where data is repetitively reproduced.
Another feature of the invention is to provide a satisfactory data reproducing method having a small capacity of a communication line.
Another feature of the invention is to provide a data reproducing method capable of further reducing the amount of reproduced data.
Another feature of the invention is to provide a data reproducing method capable of suppressing noise occurrence during data reproducing.
Another feature of the invention is to provide a data reproducing apparatus and data reproducing method capable of processing data at high speed.
Another feature of the invention is to provide a data reproducing apparatus capable of stably reproducing data regardless of capacity variation on the transmission line.
Another feature of the invention is to provide an information terminal capable of downloading various kinds of information different in attribute, such as sound, text and images, and reproducing these for output as sound or visual information.
Another feature of the invention is to provide an information terminal capable of carrying out a proper process for interrupt signals in the information terminal having a function of a phone or game machine.
Another feature of the invention is to provide an information terminal capable of downloading and making use of music, words and a jacket picture data on CD (Compact Disk) or MD (Mini Disk).
Another feature of the invention is to provide an information terminal capable of making use of each downloaded data by storing the data on a small-sized information storage medium.
Another feature of the invention is to provide a data reproducing apparatus that, when receiving the data to view commercial information, the service by the commercial provider is available.
In the present invention, MIDI is an abbreviation of Musical Instrument Digital Interface, that is an International Standard for mutual communications with signals of music play between the electronic musical instruments or between the electronic musical instrument and the computer. Meanwhile, SMF is an abbreviation of Standard MIDI File, that is a standard file format comprising time information called delta time and event information representative of music play content or the like. It should be noted that the terms “MIDI” and “SMF” in the present Specification are used as noted in the above meanings.
In the invention, the data to be received includes event information and time information representing when an event is to be executed, and comprises data in a format of SMF or the like. The received data is sorted by data type depending upon respective time information so that an event of sorted data may be executed to reproduce the data.
In the invention, because the time information and the information of sound, text, images and the like are integral, the time information can be utilized as synchronizing information by reproducing various kinds of data according to the time information possessed by them. As a result, it is possible to easily provide synchronization between different kinds of data as in sound and images. Also, there is no need to separately prepare and manage files based on data type, thus facilitating file management. Furthermore, there is no necessity to access various kinds of files every time, thereby increasing the speed of processing.
The reception data can be configured with first data having MIDI event information and second data having event information of other than MIDI. The second data can be considered, for example, the data concerning text, images, audio or the like.
The MIDI event is a gathering of the commands for controlling tone generation of the musical instruments. For example, instruction command forms are taken as “Start Tone Generation” “Stop Tone Generation ”. Also, the MIDI event is to be added with a delta time as time information and turned into an SMF-formatted data so that such an event as “Tone Generation Start” or “Tone Generation Stop” is executed when a predetermined time comes according to a time represented by the delta time.
On the other hand, events other than MIDI include a META event or a system exclusive event. These events can be in extended format as hereinafter referred so that various kinds of data can be embedded in the extended format. The use of such an SMF extended format can easily record various kinds of data, such as sound and images without major modification to the format.
The present invention receives the data having each of event information of MIDI, text and images to output reproduced MIDI data as sound and reproduced text and image data as visual information, thereby making possible to realize a data reproducing apparatus suited for karaoke. In this case, the addition of voice besides MIDI as audio makes it possible to reproduce a musical-instrument playing part in MIDI and a vocal part such as background chorus in voice, thus realizing realistic music play.
In the case of repetitively reproducing the second data having event information other than MIDI, it is preferred to previously store first-received data to a memory so that, when data is repetitively reproduced, only the time information of the second data concerning reproducing is transmitted. By doing so, the amount of data transferred can be decreased.
Also, in the case of reproducing the second data following the first data, it is preferred to divide the reproduced data in the second data into a plurality of data, to transmit a data group having the plurality of divisional data inserted between the preceding ones of first data, to extract the inserted divisional data from the data group at the reception side, and to combine the extracted divisional data into reproduced data. This smoothen the amount of transmission data and satisfactorily makes the communication line with small capacity. In this case, the extracted divisional data is sequentially stored to the memory in a chronological fashion and the area in which divisional data is stored is recorded by a start address of the following divisional data to which the relevant divisional data is coupled, thereby easily, positively combining together the divisional ones of data.
Furthermore, by cutting away the silence sections of the reproduced data to be recorded to the second data, the data amount can be further reduced. In this case, it is preferred to carry out a fade-in/out process to a signal in the vicinity of a rise portion and fall portion of the reproduced data to suppress noise.
In another embodiment of a data reproducing apparatus of the invention, each of data different in attribute is sorted, for each unit section, and stored in a storage section depending upon the time information thereof, sequentially being read out of the storage section and reproduced in the next unit section. Because the process of received data is made in a pipeline form, processing is possible at higher speed. Also, time synchronization can be easily provided by managing time information data and unit-section time width to forward only the data to be processed in the relevant unit section to the storage section.
The data reproducing apparatus according to the invention can adopt a stream scheme that data is reproduced while being downloaded. In this case, if the amount of data being consumed by reproducing exceeds the amount of data being taken, there arises data insufficiency and discontinuity in sound, images or the like. Accordingly, by caching a required amount of data to thereafter start reproducing, data can be continuously reproduced without encountering discontinuity.
The data reproducing apparatus according to principles consistent with the invention can be mounted on an information terminal such as cellular phone or game machine, wherein various kinds of data can be downloaded from a server by making use of a terminal communicating function. By providing a speaker for outputting sound or display for displaying text and images to the information terminal, music or images can be heard or viewed on the terminal. In the case of a phone, it is preferred to output an incoming tone by prohibiting sound from being outputted from the speaker upon receiving an incoming signal. In the case of a game machine, a sound effect due to MIDI can also be outputted together with sound from the speaker.
A small-sized information storage medium can be removably provided on the data reproducing apparatus according to the invention, whereby various kinds of downloaded data can be stored, for reutilization, in the information storage medium. For example, if downloading music data in MIDI or audio, music words or commentary data in text and jacket picture data in images respectively, the information storage medium itself can be utilized as CD or MD.
In the invention, by previously including an Internet URL and the information concerning service to be offered in the URL in commercial-information text data to be received and then causing jump to a homepage of the URL following the reproducing of commercial, various services can be offered to the commercial viewers.
In the drawings:
An example of a data reproducing apparatus is shown in
2 is a CPU for controlling the data reproducing apparatus overall, and structured including a data receiving section 3 and a data sorting section 4. Although the CPU 2 includes additional blocks having various functions, those in the present invention are not in direct relation and thus are omitted. The data receiving section 3 has access to the file 1a, 1b to receive the data stored therein. The data in the file 1a is received, through a wire or wirelessly. The received data is temporarily stored in a buffer 3a. The data section 4 sorts the data received by the data receiving section 3, into a data reproducing section 6 based on data type.
The data reproducing section 6 is configured with a MIDI reproducing section 11 to reproduce the MIDI data, an audio reproducing section 12 to reproduce the audio data, a text reproducing section 13 to reproduce text data and an image reproducing section 14 to reproduce the image data. The MIDI reproducing section 11 has a sound-source ROM 11a storing the sound-source data of various musical instruments used for the music to be reproduced. This sound-source ROM 11a can be replaced with a RAM and mounted with the built-in data replaced. The image reproducing section 14 has a function to reproduce still images and motion images.
15 is a mixer for mixing the outputs of the MIDI reproducing section 11 and audio reproducing section 12, and 16 is a mixer for mixing the outputs of the text reproducing section 13 and image reproducing section 14. The mixer 15 is provided with a sound effect section 15a to process for echo addition or the like, while the mixer 16 is provided with a visual effects section 16a to process a special effect addition to an image. 17 is an output buffer for temporarily storing the output of the mixer 15, and 18 is an output buffer for temporarily storing the output of the mixer 16. 19 is a speaker as a sound generating section for outputting sound depending on the data of the output buffer 17, and 20 is a display for displaying visual information of characters, illustrations or the like on the basis of the data of the output buffer 18.
SMF-formatted data recorded in the files 1a, 1b is inputted to the data receiving section 3. The SMF-formatted data generally comprises time information, called delta time, and event information representative of a music-play content or the like, and includes three types shown in
The detail of the MIDI event is shown in
The detail of the META event is shown in
The FFh at the top is a header showing that this event is a META event. The next 30h, 31h, . . . , 33h are identifiers representing that the format of the META event is an extended format. Meanwhile, len represents a data length of the META event, type represents a format of data to transfer, and id represents a data number. Event is to show an event content to be executed, and is represented by a command, e.g. “Start Audio Data Transfer” or “End Image Data Transfer”. The end point of such data can be known from a len value representative of a data length.
The META event includes a format concerning control besides the extended format recording the data as above.
The detail of the Sys. Ex event is shown in
The SMF-formatted data is configured as above, where data are combined in numbers to constitute a series of data.
The received data is sorted in the data sorting section on the basis of a delta time ΔT thereof, to execute an event in the data reproducing section 6 and reproduce the data. The timing of an event to be executed is determined by the delta time ΔT. Namely, an event is executed when the relationship between a lapse time ΔT from the immediately preceding event executed and a delta time ΔT of an event to be currently executed is in Δt≧ΔT. In other words, if a certain event is executed, the lapse time from a start of the event is counted. When the lapse time is equal to a delta time of the next event or exceeds it (there is a case not exactly coincident with but exceeding a delta time because the time resolving power by the CPU is finite), the next event is executed. In this manner, the delta time is information representing the time it takes to execute the current event depending on what amount of time elapses from the immediately preceding event. Although the delta time does not represent an absolute time, the time from a start of reproducing can be calculated by integrating the delta time.
Hereunder, explanation is made on the detail of reproducing in each section of the data reproducing section 6. First, explained below is the operation of reproducing in the MIDI reproducing section 11. In
Next, the CPU 2 counts a lapse time from a tone generation stop of mi. If this lapse time is equal to, for example, a delta time attached to the next event “Generate Tone Ra With Piano Sound” or exceeds it, this command is supplied to the MIDI reproducing section 11. The MIDI reproducing section 11 decrypts this command to read a piano sound from the sound-source ROM 11a and create a synthesizer sound thereby starting tone generation at a scale of ra. From then on the CPU 2 counts a lapse time. If the lapse time is equal to a delta time attached to the next event “Stop Tone Generation of Ra” or exceeds it, this command is supplied to the MIDI reproducing section 11. The MIDI reproducing section 11 decrypts this command to stop the tone generation of ra. In this manner, the tone of ra is reproduced with a piano sound only in the duration of from the tone generation start to the tone generation stop. By the repetition of such an operation, the MIDI reproducing section 11 reproduces a sound according to MIDI.
Next, explanation is made on reproducing of the data having other event information than MIDI. As in the foregoing, each of an audio data, text data and image data is recorded in a META event (
More specifically, if the audio reproducing section 12 receives, for example, an event “Generate Sound B” from the data sorting section 4, the audio reproducing section 12 decodes and reproduces the data of a sound B added to the relevant event. From then on, the CPU 2 counts a lapse time. If the lapse time is equal to, for example, a delta time attached to the next event “Display Character C” or exceeds it, the text reproducing section 13 decodes and reproduces the data of a character C added to the relevant event. Next, the CPU 2 counts a lapse time from the reproduction of the character C. If the lapse time is equal to, for example, a delta time attached to the next event “Display Illustration D” or exceeds it, the image reproducing section 14 decodes and reproduces the data of an illustration D added to the relevant event. This, in this respect, is basically similar to the principle of the reproducing of MIDI data.
The above explanation was made for purpose of convenience, separately between the reproduce operation by the MIDI reproducing section 11 and the reproduce operation by the other reproducing section 12–14 than MIDI. However, actually as shown also in
The data reproduced in the MIDI reproducing section 11 and the data reproduced in the audio reproducing section 12 are mixed together by a mixer 15 and echo-processed by the sound effect section 15a, and thereafter temporarily stored in the output buffer 17 and outputted as a sound from the speaker 19. On the other hand, the data reproduced in the text reproducing section 13 and the data reproduced in the image reproducing section 14 are mixed together by a mixer 16 and subjected to a special effect image or the like in the visual effect section 15a, and thereafter temporarily stored in the output buffer 18 and displayed as visual information on the display 20. Then, when the data sorting section 4 receives a META event for reproduce stop shown in
In this manner, in the data reproducing apparatus of
If the data receiving section 3 receives data from a file 1a of a server on a network through a communication line (S101), this received data is stored to the buffer 3a (S102). Next, the data sorting section 4 reads out the data from the buffer 3a and counts a lapse time from an execution of the immediately preceding event (S103). Then, a determination is made as to whether this lapse time coincides with a time represented by a delta time (or exceeds it) (S104). If the delta time is not exceeded (S104 NO), S103 is returned to continue counting the lapse time. If the lapse time coincides with or exceeds the delta time (S104 YES), processing proceeds to S105.
In processing the data, the type of the received data is first determined. Namely, it is determined whether the received data is MIDI data M or not (S105). If it is a MIDI data (S105 YES), this is sorted to the MIDI reproducing section 11 so that a synthesizer sound is created in the MIDI reproducing section 11 (S111). The detailed principle of the same was already described, hence the explanation being omitted herein. Due to sound reproducing by the synthesizer, a karaoke accompanying melody is outputted from the speaker 19.
If the received data is not MIDI data M (S105 NO), then whether the data is audio data A or not is determined (S106). If it is audio data A (S106 YES), this is sorted to the audio reproducing section 12 so that a audio process is carried out in the audio reproducing section 12 thereby reproducing an audio (S112). The detailed principle of the same was already described, the explanation being omitted herein. In reproducing the audio data, a vocal such as a background chorus is outputted from the speaker 19.
If the received data is not audio data A (S106 NO), then whether the data is text data T or not is determined (S107). If text data T (S107 YES), this is sorted to the text reproducing section 13 so that a text process is carried out in the text reproducing section 13 thereby reproducing text (S113). In reproducing the text data, the title or words of karaoke music is displayed on the display 20.
If the received data is not text data T (S107 NO), then whether the data is image data P or not is determined (S108). If the data is image data P (S108 YES), this is sorted to the image reproducing section 14 so that a process for a still image or motion image is carried out in the image reproducing section 14 thereby reproducing an image (S114). In reproducing the image data, a background image such as an animation or motion image is displayed on the display 20.
If the received data is not image data (S108 NO), the same data is for example data concerning setting or control and a predetermined process in accordance with its content is carried out (S109). Subsequently, it is determined whether to stop the reproducing or not, i.e. whether received a META event of
As in the foregoing, the data reproducing apparatus of
The SMF-formatted data to be received by the data receiving section 3 is stored in the file 1a of the server on the network as described before. New data is periodically uploaded to the file 1a, to update the content of the file 1a.
If a predetermined time is reached to enter a process (S124 YES), it is determined whether the received data is data of music to be played in a background of CM or not (S125). Here, the data for a background music is configured by MIDI. If the data is background music data (S125 YES), it is sorted to the MIDI reproducing section 11 to carry out a synthesizer process, thereby reproducing a sound (S132). This outputs a CM background music from the speaker 19.
If the received data is not background music data (S125 NO), it is then determined whether it is data for an announcement that an announcer is to say or not (S126). The announcement data is configured by audio data. If it is announcement data (S126 YES), it is sorted to the audio reproducing section 12 to carry out an audio process thereby reproducing an audio (S133). By reproducing the audio, an announcer commentary or the like is outputted from the speaker 19.
If the received data is not announcement data (S126 NO), it is then determined whether the data is text data representative of a product name or the like or not (S127). If the data is text data (S127 YES), this is sorted to the text reproducing section 13 so that a text is reproduced in the text reproducing section 13 and displayed on the display 20 (S134).
If the received data is not text data (S127 NO), it is then determined whether the data is illustration data or not (S128). If the data is illustration data (S128 YES), this is sorted to the illustration reproducing section 14 so that a still image process is carried out in the image reproducing section 14 thereby reproducing an illustration and displaying it on the display 20 (S135).
If the received data is not illustration data (S128 NO), it is then determined whether the data is motion image data or not (S129). If the data is motion image data (S129 YES), this is sorted to the image reproducing section 14 so that a motion image process is carried out in the image reproducing section 14 thereby reproducing a motion image and displaying it on the display 20 (S136).
If the received data is not motion image data (S129 NO), advancement is to S130. S130 and S131 correspond, respectively, to S109 and S110 of
In the foregoing reproducing method, in reproducing audio, text and image data embedded in the SMF-formatted data, there are cases of reproducing the same data with repetition a certain number of times. For example, there are cases that karaoke background chorus is repeated thrice or the same text are displayed twice in the start and end portions of CM. In such cases, there is a problem of an increase in data amount if the data in the number corresponding to the number of times of repetition is embedded in the format of
Accordingly, the method shown in
Although exemplified herein was the case that the transmission data after once stored in a memory was reproduced, the method of
Accordingly, as shown in
The data following the MIDI may be a plurality of coexisting data X, Y as shown in
The received divisional data is separated from the MIDI data and sequentially stored to the memory in the chronological order of from the top data of
By thus recording the start addresses of the following ones of divisional data to the ends of the divisional data stored in the memory, the divisional ones of data can be easily combined for restoration. Namely, regarding the data X, the divisional ones of data X1, X2, . . . X6 are coupled in a chain form through the start addresses. Accordingly, even if the divisional data of the data X and the divisional data of the data Y are mixedly stored as in
In the audio signal of
However, by merely cutting away of the silent sections T, during reproducing the signal sharply rises and falls thereby causing noise. In order to avoid this, a fade-in/out process is desirably carried out at around a signal rise and fall to obtain a smooth rise/fall characteristic. The fade-in/out process can be easily realized by a known method using a fade-in/out function. In
Next, data is read in again (S174), and whether the level of the read data exceeds a constant value or not is determined (S175). If the constant value is exceeded (S175 YES), the data is written to the memory (S176) and S174 is returned to read the next data. If the constant value is not exceeded (S175 NO), it is determined whether the section has a continued constant section or not (S177). If the section does not have a continued constant section (S177 NO), the data is written to the memory (S176) and S174 is returned to read the next data. If a section has a constant level that is not exceeded and includes a continued constant section (S177 YES), the section is considered as a silent section so that a fade-in/out process is made in the region W2 in
Next, whether data reading is ended or not is determined (S179). If not ended (S179 NO), processing is returned to S171 to read in the next data. The similar processes to the above are passed to carry out a fade-in/out process in W3, W4 of
In the above embodiment, audio, text and images are taken as information to be embedded in an SMF extended format. However, the embedded information may be anything, e.g. a computer program is satisfactory. In this case, if a computer program is provided to be reproduced following MIDI data, a music according to the MIDI is first played and, when this is ended, the program is automatically run.
Also, although the above embodiment showed the example that data is received from a file 1a of a server on a network through a communication line, it is satisfactory to create SMF-type data on a personal computer and store it in a file 1b on the hard disk so as to download the data therefrom.
2 is a CPU for controlling the overall of the data reproducing apparatus, which is configured to include a data receiving section 3 and a data sorting section 4. Besides these blocks, the CPU 2 includes other blocks having various functions. However, they are not directly related and thus this discussion is omitted. The data receiving section 3 accesses the files 1a, 1b to receive the data stored in these. The data of the file 1a is received through a wire or wirelessly. The format of the data to be received is the same as
6 is a data reproducing section configured with a MIDI reproducing section 11 for processing the data concerning MIDI, an audio reproducing section 12 for processing the data concerning audio, a text reproducing section 13 for processing the data concerning text, and an image reproducing section 14 for processing the data concerning images. Although not shown, the MIDI reproducing section 11 has a sound-source ROM 11a of
15 is a mixer for mixing the outputs of the MIDI reproducing section 11 and audio reproducing section 12, and 16 is a mixer for mixing the output of the text reproducing section 13 and image reproducing section 14. Although herein not shown, the mixer 15 has a sound-effect section 15a of
The storage section 5, the data reproducing section 6, the mixers 15, 16, the output buffers 17, 18 and the timing control section 21 are configured by a DSP (Digital Signal Processor). The above sections can be configured by a LSI, in place of the DSP.
As apparent from a comparison between
The data stored in the buffer 7–10 is read out by the data reproducing section 11–14 corresponding to each buffer so that the event recorded in the data is executed in each data reproducing section 11–14 thereby reproducing the data (S184). The detail of S184 will be hereinafter referred to. Among the reproduced data, the data of MIDI and audio is mixed in the mixer 15 while the data of text and images is mixed in the mixer 16 (S185). The mixed data are respectively stored in the output buffers 17, 18 and thereafter outputted to the speaker 19 and the display 20 (S186).
Q=t2−t0,
which represents a time width for processing the current data. Next, the CPU 2 sequentially reads a delta time ΔT of the received data (S193) to determine whether the time width of the process section Q is equal to or greater than ΔT or not (S194). If Q≧ΔT (S194 YES), data kind determinations are next made in order (S195, S198, S200, S202), where the data is sorted and stored to the buffers 7–10 corresponding to the respective types of data (S196, S199, S201, S203). Thereafter, Q=Q−ΔT is operated to update the value of Q (S197).
In the example of
In this manner, the data of the event 1 is sorted to any of the buffers 7–10, and thereafter Q=Q−ΔT1 is operated (S197). Returning to S193, a delta time ΔT2 of the next event 2 is read to determine Q≧ΔT2 (S194). Although the value of Q at this time is Q=Q−ΔT1, because Q−ΔT1>ΔT2 in
Thereafter, Q=Q−ΔT2 is operated (S197). Returning to S193, a delta time ΔT3 of the next event 3 is read to determine Q≧ΔT3 (S194). Although the value of Q at this time is Q=Q−T1−ΔT2, because of Q−ΔT1−ΔT2>ΔT3 in
Thereafter, Q=Q−ΔT3 is operated (S197). Returning to S193, a delta time ΔT4 of the next event 4 is read (Although in
In the flowchart of
Next, explanation is made on the detail of each data reproducing section 11–14, i.e. the detail of S184 of
b) shows a process procedure in the audio reproducing section 12. In the audio reproducing section 12, when the data of one-frame section sorted by the data sorting section 4 is stored to the buffer 8, this data is read in the next one-frame section (S311). Then, the audio data recorded in an event of the read data (see
c) shows a process procedure in the text reproducing section 13. In the text reproducing section 13, when the data of one-frame section sorted by the data sorting section 4 is stored to the buffer 9, this data is read in the next one-frame section (S411). Then, the text data recorded in an event of the read data (see
d) shows a process procedure in the image reproducing section 14. In the image reproducing section 14, when the data of one-frame section sorted by the data sorting section 4 is stored to the buffer 10, this data is read in the next one-frame section (S511). Then, the image data recorded in an event of the read data (see
Each process of
The MIDI reproduced data outputted to the mixer 15 in S213 and the audio reproduced data outputted to the mixer 15 in S313 are mixed together in the mixer 15 and stored to the output buffer 17, thereby being outputted as a sound from the speaker 19. Also, the text reproduced data outputted to the mixer 16 in S413 and the image reproduced data outputted to the mixer 16 in S513 are mixed together in the mixer 16 and stored to the output buffer 18, thereby being displayed as visual information on the display 20. The output buffer 17 and the speaker 19 constitute a first output section, while the output buffer 18 and the display 20 constitute a second output section. The output buffer 17 has a function to count the number of the data to be outputted to the speaker 19. On the basis of this count value, the output buffer 17 supplies a control signal to the timing control section 21. The timing control section 21 supplies a timing signal (system clock) to the CPU 2 on the basis of the control signal. Namely, the time required in outputting the data of one in the number from the output buffer 17 is determined by a sampling frequency. If this time is given τ, the time required in outputting the data of N in the number is N×τ. Accordingly, the timing can be determined by a value of N. Meanwhile, the timing control section 21 also supplies the timing signal to the output buffer 18 according to the control signal, to control the timing of the data to be outputted from the output buffer 18.
As was explained in
The time chart of this process is
Similarly, in the section F2, the data A, M, T is sorted to the buffer. The data is read out in the order of M, A and T in the section F3, reproduced and processed in the same procedure as the above in each reproducing section and outputted in the next section F4 (not shown in
In the above manner, in the data reproducing apparatus of
Meanwhile, the data sorting section 4 is devoted to the operation of sorting the received data to the buffers 7–10, and each reproducing section 11–14 is devoted to reading out and reproducing the data stored in the buffer. Accordingly, it is possible to make the data received by the data receiving section 3 into a pipeline form and process it at high speed.
In reproducing data, the timing of reproducing should be primarily controlled according to delta time. However, in the apparatus of
Furthermore, it is satisfactory that the order of reproducing different kinds of data be changed within the same frame section. For example, although each reproducing section reads data from the buffer according to the order of M, A and P of the received data in the F1 section of
Meanwhile, although in
Hereunder, explanation is made on the receiving operation with an example in the case of reproducing music. When the data receiving section 3 starts to receive data stream S from the file 1a due to access to the server, the data A1 in an amount corresponding to a buffer A size (capacity) is first stored from the top of the data stream S to the buffer A. This sets the buffer A to a full state, and sets the register A with a flag representative of a full state of the buffer A. Subsequently, the data B1 in an amount corresponding to a size of the buffer B is stored to the buffer B. This also sets the buffer B to a full state, and sets the register B with a flag representative of a full state of the buffer B.
When buffer B become full, the data sorting section 4 starts to sort data, thereby transferring the data A1 stored in the buffer A and the data B1 stored in the buffer B to the buffer 7–10 based on data type. The transferred data is reproduced by each reproducing section 11–14, starting to play music. On the other hand, the data C1 is stored to the buffer C in an amount corresponding to the size thereof. This sets the buffer C to a full state, and sets the register C with a flag representative of a full state of the buffer C.
During storage of data C1 in the buffer C, if the data A1 of the buffer A is consumed to make the buffer A empty, a flag of the register A is reset. The data receiving section 3 acquires the next data A2 and stores it to the buffer A. This sets the buffer A again to a full state, and sets a flag in the register A. Meanwhile, if the data B1 of the buffer B is consumed to make the buffer B empty, a flag of the register B is reset. The data receiving section 3 acquires the next data B2 (not shown in
In the above stream scheme, it is possible to start reproducing from a time point of receiving the data A1. However, where the transfer capacity of the data to be fetched to the buffer is insufficient, after a reproducing start, the data supply to the buffer does not catch up with consumption, thus causing a phenomenon of discontinuity in sound. Accordingly, in order to avoid this, there is a need of caching data to the buffer to start reproducing at a time point when a certain amount of data is saved. This will be explained as an example in
Assuming in
This problem is to be solved as follows. Namely, 50 K-bits of data A1 is stored to the buffer A in 5 seconds from a time point to of receiving data, and 50 K-bits of data B1 is stored to the buffer B in the subsequent 5 seconds. The data of totally 100 K-bits is cached for 10 seconds. Then, reproducing is started at a time point t1 that 10 seconds have passed from a data-reception time point t0. By doing this, even if the data transfer capacity after a reproduce start is smaller than the amount of data consumption, the buffers A, B are already saved with 100 k-bits of data. Also, because the remaining 100 k-bits of data (the total of C1 and A2) can be fetched to the buffers C, A for 10 seconds of from the music-play start time point t1 to the music-play end time point t2, no data exhaustion is encountered and the music can be reproduced continuously to the end.
Contrary to this, where the amount of data to be taken to the buffer exceeds the amount of consumed data, the data cache as above is not required. However, there is a need, at a time the buffer becomes a full state, of providing an instruction to the server from the data receiving section 3 not to transmit further data. In this case, when the data of the buffer is consumed to cause an empty buffer, the data receiving section 3 will acquire data from the server.
The foregoing is generalized to describe the following. Assuming that the buffer size is U and the time required in fetching data to the buffer is t, the data transfer capacity per unit time is given J=U/t. Meanwhile, the total data amount is K and the reproducing time is T, the data consumption amount E per unit time is given E=K/T. In
K<C+J·T,
then it is possible to reproduce the data without discontinuity. In order to cache data, the data receiving section 3 acquires data B1 from the server and stores it in the buffer B. If the above condition is fulfilled at this time point, the data receiving section 3 forwards a ready signal to the data sorting section 4. Receiving this, the data sorting section 4 starts to sort the data to the buffers A, B. The operation from then on is as per the foregoing.
On the other hand, if J>E, data cache is not required. Consequently, the data sorting section 4 starts to sort the data at the time of receiving the data A1. However, because the buffer immediately becomes full in state after a start of reproducing, the data receiving section 3 requests the server to stop the transmission of data at a time the buffer becomes a full state. Then, if the data is consumed to cause a free space in the buffer, the data receiving section 3 again requests the server to transmit data. Namely, the data receiving section 3 intermittently acquires data from the server.
In the above manner, the data receiving section 3 monitors the data transfer capacity J. If J<E, data is cached in a required amount and thereafter reproducing is started. If J>E, data cache is not made to carry out reproducing while intermittently receiving data. This makes it possible to stably reproduce data, regardless of variation in transmission line capacity. In the case of J=E, data cache is not necessary so that data is continuously received from the server.
Herein, if the transmission line capacity is suddenly decreased due to a certain cause, the data cache to the buffer is possibly insufficient resulting in an empty state in all the buffers A, B, C. In this case, a mute signal is forwarded from the data sorting section 4 to the MIDI reproducing section 11 and audio reproducing section 12 to prohibit noise from being outputted, thereby eliminating an uncomfortable feeling to the user. Also, a front-end hold signal may be forwarded from the data sorting section 4 to the text reproducing section 13 and image reproducing section 14 thereby maintaining an on-screen display immediately before. Also, in place of these, when no data comes from the data sorting section 4 despite each reproducing section 11–14 not having received a signal representative of data end, it is also possible to adopt a method wherein a mute or front-end hold process is automatically made in each reproducing section 11–14 to resume reproducing if data comes.
In the above explanation, although the three independent buffers A, B, C were provided as the buffer 3a, this is merely one example and the number of buffers can be arbitrarily selected. Also, a ring buffer may be used in place of the independent buffers.
Next, explanation is made on application examples of the invention. The data reproducing apparatus of
In
The antenna 52 transmits and receives signals to and from the base station 73. The display 53 is structured by a color liquid crystal display and the like, to display telephone numbers, images, and so on. From the speaker 55, i.e., a sound generating section, a user may hear a voice on the other end of the communication line, or a melody. The microphone 56 is used to input speech during communication or in preparing an in-absence guide message.
54 are numeric keys comprising numerals 0–9, which are used to input a telephone number or abbreviated number. 57 is a power key for turning on/off power to the phone, 58 is a talk key to be operated upon starting to talk, and 59 is a scroll key for scrolling the content displayed on the display 53. 60 is a function key for achieving various functions by the combined operation with another key, 61 is an invoking key for invoking a registered content and displaying it on the display 53, and 62 is a register key to be operated in registering abbreviated dial numbers, etc. 63 is a clear key for erasing a display content or the like, and 64 is an execute key to be operated in executing a predetermined operation. 65 is a new-piece display key for displaying a list of new pieces in downloading the music data from the server 72, 66 is an in-absence recording key to be operated in preparing an in-absence guide message, 67 is a karaoke key to be operated in playing karaoke, 68 is a music-play start key for starting a music play, 69 is a music-play end key for ending a music play.
70 is a small-sized information storage medium in the form of a card, a stick or the like which is removably attached in a slot (not shown) provided in the phone main body 51. This information storage medium 70 incorporates therein a flash memory 71 as a memory device. A variety of data downloaded is stored in this memory 71.
In the above structure, the display 53 corresponds to the display 20 of
Meanwhile, MIDI data only can be downloaded from the server 72 onto the cellular phone 50. In this case, if a melody created by the MIDI is outputted as an incoming tone from the speaker 55, the incoming tone will be an especially realistic, refined music. Also, if different music of MIDI data is stored correspondingly to incoming tones to an internal memory (not shown) of the cellular phone 50 to notify the user with different melodies depending upon an incoming tone, it is possible to easily distinguish whom the call is from. Meanwhile, an incoming-call-notifying vibrator (not shown) built in the cellular phone 50 may be vibrated on the basis of MIDI data, e.g., the vibrator is vibrated in the same rhythm as a drum. Furthermore, such a use is possible so as to add BGM (BackGround Music) due to MIDI to in-absence guide messages.
The information storage medium 70 corresponds to the external storage device 22 of
In the cellular phone 50 mounted with the data reproducing apparatus as above, for example where there is an incoming call during viewing CM, an incoming tone may be output.
The data reproducing apparatus of the invention can be mounted, for example, on an information terminal having a function of game machine besides on an information terminal having a function of telephone. The game machine may be a game exclusive machine or an apparatus possessing both game and other functions. For example, the cellular phone 50 shown in
Although in a game machine like this music usually sounds in the background during progress of a game, an interesting game development is available if an effect sound due to MIDI is produced over a background music to the on-screen situation.
The use of the data reproducing apparatus of the invention can realize a system having various functions besides the above.
As can be seen in the flowchart of
Subsequently, a browser (perusal software) is started up (S603), and a jump is made to a homepage of a URL described in the read-out tag (S604). The server of the URL jumped to (not shown) interprets the “XXX” part of the tag to determine as to what CM has been viewed (S605), and in case that a product of the CM is purchased over the network to carry out a process, for example, of charge at a rate discounted by 20% (S606). Thus, according to the above system, discount service can be offered to the persons who have viewed the CM.
As can be seen in the flowchart of
Subsequently, a browser is started up (S703), to determine whether the current date is within the available term or not (S704). This determination is made by making reference to the available term described in the foregoing tag. If the current date is within the available term (S704 YES), a jump is made to a homepage of the URL described in the read-out tag (S705). If the current date is not within the available term (S704 NO), nothing is done and processing ends (S708).
The server of the URL jumped to (not shown) interprets the “YYY” part of the tag to determine what music data has been purchased (S706), and transmits a guide message that a ticket of a concert by the musical artist is to be purchased at a discount price, thus displaying the message on the display 20 (S707). Therefore, according to the above system, it is possible to induce the person who has purchased music data to purchase a ticket.
The data reproducing apparatus of the present invention can be mounted on an information terminal in various kinds, such as a personal computer and an Internet-TV STB (Set Top Box) besides the foregoing cellular phone or game machine.
Number | Date | Country | Kind |
---|---|---|---|
11/060919 | Mar 1999 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP00/00602 | 2/3/2000 | WO | 00 | 9/7/2001 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO00/54249 | 9/14/2000 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5953005 | Liu | Sep 1999 | A |
6281424 | Koike et al. | Aug 2001 | B1 |
6283764 | Kajiyama et al. | Sep 2001 | B2 |
6424944 | Hikawa | Jul 2002 | B1 |
6429366 | Terada | Aug 2002 | B1 |
6782299 | Tsuji et al. | Aug 2004 | B1 |
Number | Date | Country |
---|---|---|
715296 | May 1996 | EP |
A2715296 | May 1996 | EP |
044473 | Jan 1992 | JP |
05-110536 | Apr 1993 | JP |
A5110536 | Apr 1993 | JP |
A5143070 | Jun 1993 | JP |
06-318090 | Nov 1994 | JP |
318090 | Nov 1994 | JP |
A6318090 | Nov 1994 | JP |
07-028462 | Jan 1995 | JP |
A728462 | Jan 1995 | JP |
07-327222 | Dec 1995 | JP |
A7327222 | Dec 1995 | JP |
08-054888 | Feb 1996 | JP |
A854888 | Feb 1996 | JP |
08-087271 | Apr 1996 | JP |
A887271 | Apr 1996 | JP |
08-160959 | Jun 1996 | JP |
160959 | Jun 1996 | JP |
A8160959 | Jun 1996 | JP |
A9134173 | May 1997 | JP |
09-214371 | Aug 1997 | JP |
A9214371 | Aug 1997 | JP |
10-020877 | Jan 1998 | JP |
020877 | Jan 1998 | JP |
A1020877 | Jan 1998 | JP |
A10150505 | Feb 1998 | JP |
10-105186 | Apr 1998 | JP |
A10105186 | Apr 1998 | JP |
A10124071 | May 1998 | JP |
A10173737 | Jun 1998 | JP |
10-187174 | Jul 1998 | JP |
187174 | Jul 1998 | JP |
A10187174 | Jul 1998 | JP |
A10198361 | Jul 1998 | JP |
A10312189 | Nov 1998 | JP |