Abstract:
A data processing method of a multimedia device is disclosed. The multimedia device pauses playback of multimedia data in response to a pause signal. The method includes: buffering the multimedia data before the pause signal is received to obtain prerecorded multimedia data; writing the prerecorded multimedia data into a storage unit in response to the pause signal; reading the prerecorded multimedia data from the storage unit in response to a playback signal; and playing the prerecorded multimedia data.

Description:
[0001]    This application claims the benefit of Taiwan application Serial No. 105113925, filed May 5, 2015, the subject matter of which is incorporated herein by reference. 
       BACKGROUND OF THE INVENTION 
     Field of the Invention 
       [0002]    The invention relates in general to a multimedia device, and more particularly to a multimedia device with a timeshift function. 
       Description of the Related Art 
       [0003]    A multimedia device (e.g., a player, a television or a set-top box) with a timeshift function provides a pause function, and allows a user to temporarily leave without missing brilliant program details.  FIG. 1  shows a flowchart of a conventional multimedia playing multimedia data and performing a timeshift function. When the multimedia device receives a multimedia signal, it parses the multimedia signal to obtain multimedia data carried in the multimedia signal (step S 110 ). For example, if the multimedia signal is transmitted in a format of a transport stream, this step removes various kinds of headers in the transport stream to leave multimedia data carrying video and audio information. Before a pause signal is received (the determination result of step S 115  is negative), the multimedia data is directly parsed (step S 120 ), and pre-playback processes are performed on the multimedia data (step S 130 ) by the multimedia device, e.g., de-interlacing, scaling. The multimedia data is then played (step S 140 ). 
         [0004]    When the multimedia device receives the pause signal (the determination result of step S 115  is affirmative), a control circuit of the multimedia device first pauses playing the multimedia data (step S 150 ), starts writing the multimedia data to a multimedia buffer unit (step S 160 ), and writes the multimedia data into a storage unit (step S 170 ). In general, an access speed of a multimedia buffer unit is faster than that of a storage unit, with however the storage unit having a greater storage space. For example, the multimedia buffer unit is a volatile memory (e.g., a DRAM or SRAM), and the storage unit is a non-volatile memory (e.g., a flash, solid-state drive (SSD) or magnetic disk). 
         [0005]    When playback is resumed (decoding, performing pre-playback processes and playing a multimedia file stored in a storage unit) after the conventional timeshift function, a black screen of a display device is often resulted. The reason is that, the multimedia device only starts storing current undecoded multimedia data after it receives the pause signal, while the image currently being played on the display device is an earlier image (previously decoded and having undergone pre-playback processes). Thus, there may be a difference of several frames in between (depending on the format of the multimedia data and the processing speed of the multimedia device). These “lost frames” are the main cause of the black screen observed during the timeshift function. 
       SUMMARY OF THE INVENTION 
       [0006]    The invention is directed to a control method of a multimedia device and a data processing method thereof to improve user experiences in using the timeshift function. 
         [0007]    The present invention discloses a data processing method for multimedia device. The multimedia device pauses playback of multimedia data in response to a pause signal. The method includes: buffering the multimedia data before the pause signal is received to obtain prerecorded multimedia data; writing the prerecorded multimedia data into a storage unit in response to the pause signal; reading the prerecorded multimedia data from the storage unit in response to a playback signal; and playing the prerecorded multimedia data. 
         [0008]    The present invention further discloses a control circuit of a multimedia device. The multimedia device includes a multimedia buffer unit and a storage unit, and pauses playback of multimedia data in response to a pause signal. The control circuit includes: a transport stream processing unit, parsing a multimedia signal to generate the multimedia data; and a control unit, performing operations of: buffering the multimedia data to the multimedia buffer unit before the pause signal is received to obtain prerecorded multimedia data; writing the prerecorded multimedia data into the storage unit in response to the pause signal; reading the prerecorded multimedia data from the storage unit in response to a playback signal; and playing the prerecorded multimedia data. 
         [0009]    The control method and the data processing method of the present invention are capable of prerecording the multimedia data before playback is paused, in a way that the subsequent resume operation may be seamlessly performed to enhance user experiences. Compared to a conventional technology, the control circuit and the data processing method of the present invention are capable of preventing the black screen. 
         [0010]    The above and other aspects of the invention will become better understood with regard to the following detailed description of the preferred but non-limiting embodiments. The following description is made with reference to the accompanying drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0011]      FIG. 1  is a flowchart of a conventional multimedia device playing multimedia data and performing a timeshift function; 
           [0012]      FIG. 2  is a function block diagram of a multimedia device according to an embodiment of the present invention; 
           [0013]      FIG. 3  is a flowchart of a data processing method according to an embodiment of the present invention; and 
           [0014]      FIG. 4  is a process of a multimedia device performing playback of prerecorded multimedia data according an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0015]    This application discloses a control circuit of a multimedia device and a data processing method thereof capable of preventing a black screen to enhance user experiences. In possible implementation, one person skilled in the art can choose equivalent elements or steps to realize the present invention based on the disclosure of the application. That is, the implementation of the present invention is not limited to the non-limiting embodiments below. 
         [0016]      FIG. 2  shows a function block diagram of a multimedia device according to an embodiment of the present invention. The multimedia device  200  includes a control signal receiving unit  210 , a control circuit  220 , a multimedia buffer unit  230 , a storage unit  240 , and a frame buffer unit  250 . The control signal receiving unit  210  receives a control signal, e.g., a pause signal or a playback signal. The control circuit  220  processes a data signal to generate image data to be played. The image data to be played is buffered in the frame buffer unit  250  (e.g., implemented by a DRAM) before transmitted to and played by a display device (not shown). The multimedia buffer unit  230  and the storage unit  240  store rerecorded multimedia that the timeshift function generates. For example but not limited to, the multimedia buffer unit  230  may be implemented by a storage medium having a faster access speed (e.g., a volatile memory such as a DRAM or SRAM), and the storage unit  240  may be implemented by a storage medium having a greater storage capacity (e.g., a non-volatile memory such as a flash, SSD and magnetic disk). The control circuit  220  includes a demodulating unit  221 , a transport stream processing unit  223 , a video decoding unit  225 , an audio decoding unit  227  and a control unit  229 . 
         [0017]    Referring to  FIG. 3  showing a flowchart of a data processing method of a multimedia device of the present invention, operation details of the multimedia device of the present invention are given as below. After the multimedia device  200  receives a data signal, the demodulating unit  221  demodulates the data signal to generate a multimedia signal (step S 310 ). The transport stream processing unit  223  performs parsing processes such as removing the header on the multimedia signal in a transport stream format to generate multimedia data (step S 320 ). The control unit  229  then writes the multimedia data into the multimedia buffer unit  230 , and prerecorded multimedia data is obtained from the multimedia buffer unit  230  (step S 330 ). Next, the control unit  229  receives a pause signal sent from the control signal receiving unit  210  (step S 340 ), controls the video decoding unit  225  and the audio decoding unit  227  to suspend respective operations to cause the multimedia device  200  pause playback of the multimedia data (step S 350 ), and writes the prerecorded multimedia data into the storage unit  240  (step S 360 ). In step S 350 , while the control unit  229  controls the video decoding unit  225  to suspend operations of the video decoding unit  225 , it further records a decoding state of the video decoding unit  225  at that time. This decoding state is a presentation timestamp (PTS) and group of pictures (POC) of the frame that the video decoding unit  225  is currently decoding. The decoding state of the video decoding unit  225  may be used as a basis for later determining whether seamless playback can be performed when the playback is subsequently resumed. By recording the frame that is currently being decoded, the decoding operation of the video decoding unit  225  in the subsequent playback process can be prevented from interference (with associated details to be given in the playback process). When the user later resumes watching, the control unit  229  receives the playback signal sent from the control signal receiving unit  210  (step S 370 ), reads the prerecorded multimedia data from the storage unit  240 , and transmits the multimedia data to the video decoding unit  225  and the audio decoding unit  227  to play the prerecorded multimedia data. 
         [0018]    In the multimedia device and the data processing method according to embodiments of the present invention, since the multimedia data has already been stored before the pause signal is received, the multimedia data corresponding to the frame (to be referred to as a target frame) that the video decoding unit  225  is currently decoding at the time when the pause signal is received is in fact stored in advance (i.e., included in the abovementioned prerecorded multimedia data). Thus, when the prerecorded multimedia data is played in step S 380 , the playback may be resumed from the target frame, hence eliminating the issue of lost frames or black screen as in the conventional technology. 
         [0019]    In step S 330 , if the multimedia buffer unit  230  is fully written, the newly generated multimedia data overwrites the oldest multimedia data. It should be noted that, in different embodiments, given the storage capacity of the multimedia buffer unit  230  is large enough, the storage unit  240  may be omitted from the multimedia device  200 , and the prerecorded multimedia data may be entirely stored in the multimedia buffer unit  230 . When the playback is later resumed, the control unit  229  reads the prerecorded multimedia data from the multimedia buffer unit  230 . In the above scenario, step S 360  may be correspondingly omitted. 
         [0020]      FIG. 4  shows an operation process of a multimedia device performing playback of prerecorded multimedia data according to an embodiment of the present invention, i.e., the detailed process of step S 380  in  FIG. 3 . After receiving the playback signal, the control unit  229  reads the prerecorded multimedia data from the storage unit  240 , transmits the prerecorded multimedia data to the video decoding unit  225  and the audio decoding unit  227  (step S 405 ), and controls the video decoding unit  225  to suspend receiving the multimedia data that the transport stream processing unit  223  outputs. The control unit  229  then determines whether seamless playback can be performed according to the decoding state of the video decoding unit  225  recorded in step S 350  (step S 410 ). More specifically, in step S 410 , the control unit  229  determines whether there are records of PTS and POC of the target frame. The PTS and POC are the basis for the video decoding unit  225  to later search for the target frame. Thus, if the PTS and POC are not successfully recorded in step S 350 , it means that the target frame cannot be identified from the prerecorded multimedia data, nor can seamless playback be performed. If seamless playback cannot be performed, the video decoding unit  225  is reactivated, and the video decoding unit  225  and the audio decoding unit  227  are caused to decode the prerecorded multimedia data in order to play the prerecorded multimedia data (step S 415 ). Conversely, if the control unit  229  determines in step S 415  that seamless playback can be performed, the control unit  229  controls the audio decoding unit  227  to suspend the decoding process (step S 420 ), and the video decoding unit  225  decodes the prerecorded multimedia data. To prevent the decoding operation of the video decoding unit  225  from interference, the control unit  229  writes a previous frame (still stored in the buffer unit of the video decoding unit  225  or may be obtained from the prerecorded multimedia data) of the frame that the video decoding unit  225  is currently decoding, as previously recorded in step S 350 , to fill up the entire frame buffer unit  250  (step S 425 ), and determines a predetermined time according to the data amount and format of the prerecorded multimedia data (step S 430 ). This predetermined time is for the video decoding unit  225  to search for the target frame from the prerecorded multimedia data. Because the video decoding unit  225  needs to decode the prerecorded multimedia data, if the amount of the multimedia data is large or each frame includes a larger amount of pixel data, the time need for the video decoding unit  225  to search for the target frame is inevitably longer. In general, when the multimedia device  200  receive the pause signal, the data amount between the multimedia data that the video decoding unit  225  is currently decoding and the target frame is approximately a playback period of 1 second. Therefore, based on the data format of a highest resolution (i.e., the longest time period that the video decoding unit  225  needs to decode one frame) and the decoding capability of the decoding unit  225 , the control unit  229  may estimate the maximum value of the search time. If the video decoding unit  225  searches beyond this search time, the control unit  229  determines that the target frame cannot be found from the prerecorded multimedia data. 
         [0021]    Next, the control unit  229  controls the video decoding unit  225  to search the prerecorded multimedia for the target frame (step S 435 ). The video decoding unit  225  searches for the target frame according to a decoding order of the frames, and the decoding order may be learned from the PTS or POC of the frames. In steps S 440 , S 445  and S 450 , the control unit  229  continues monitoring whether the video decoding unit  225  finds the target frame within the predetermined time. More specifically, the video decoding unit  225  decodes the prerecorded multimedia data, and the target frame is found if the PTS and POC or the decoded frame are identical to the PTS and POC recorded in step S 350 . When the video decoding unit  225  finds the target frame within the predetermined time (when the determination result of step S 440  is affirmative), the video decoding unit  225  sends a signal to notify the control unit  229 , which then controls the audio decoding unit  227  to reactivate (step S 455 ), and controls the video decoding unit  225  and the audio decoding unit  227  to discard the multimedia data earlier than the target frame and start decoding the multimedia data from the target frame as the starting point (step S 460 ). When the multimedia data that has been decoded achieves video and audio synchronization (step S 465 ), the multimedia data can then be played (step S 470 ). 
         [0022]    On the other hand, if the video decoding unit  225  fails to find the target frame within the predetermined time (the determination result of step S 445  is negative), the control unit  229  controls the video decoding unit to stop searching for the target frame (step S 450 ), followed by similarly performing steps S 455  to S 470 . However, playback cannot be resumed in continuation from the target frame. Even though seamless playback cannot be achieved, having already stored in advance the multimedia data before the pause signal is received, the present invention still provides preferred user experiences as opposed to conventional technologies. 
         [0023]    For example, the data signal may be various types of live stream signals, e.g., live digital television signals, live analog television signals and Internet live signals. 
         [0024]    One person skilled in the art can understand implementation details and variations of the method of the present invention in  FIG. 3  and  FIG. 4  based on the disclosure of the device of the present invention in  FIG. 2 . While the invention has been described by way of example and in terms of the preferred embodiments, it is to be understood that the invention is not limited thereto. On the contrary, it is intended to cover various modifications and similar arrangements and procedures, and the scope of the appended claims therefore should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements and procedures.