Removable media storage device for a video recording or reproducing device

The invention refers to a method for indicating the current status of a removable media device provided for being loaded with at least one removable medium, and being connected to a device reading and/or writing AV storage media. The method has the steps of

The invention refers to a video recording or reproducing device, especially to a disk recording device like hard disk recorder or optical disk recorder, often referred to as PVR or DVD recording device.

It is an object of the invention to improve behaviour of such video recording or reproducing device, especially in connection with a removable media device which is provided for being loaded with at least one removable medium.

According to the invention, a method for indicating the current status has the steps of checking the type of user input upon occurrence of a user input, and keeping the status of the removable media device if the type of user input is not related to the removable media device. In case the type of user input is related to the removable media device, a characteristic feature of the at least one removable medium is checked for a change. The removable medium, as e.g. a flash memory card, may have been removed or inserted, it may have been written to or another change may have occurred. In case no change is detected the status is kept, else the status is updated. This has the advantage that it allows for quickly performing an update of the status where necessary, without spending unnecessarily processor time for updates that are most likely not used or not required by the user. Only in those cases, where such use or request is likely, the updating process is performed. The saved processor time is used for other tasks so that the overall performance of the device is increased.

The characteristic feature to be checked preferably is an identifier of the medium. This has the advantage, that the check is performed quickly as an identifier of the medium is easy to detect and to compare. In case that no identifier of the medium, such as volume identifier, is present, then other characteristic features such as the file structure or a part of the file structure, or data at certain predefined address or at several such predefined addresses is compared. Although this takes longer and may be less reliable due to possibility of random identity, even this approach turns out to be quicker than checking everything every time, and it is more reliable than not performing a check at all.

Preferably, user input types related to the removable media device are one or more of the following, not necessarily complete list of commands: An input command to enter the removable media device sub-menu has the advantage that it clearly indicates that the user wants to have up-to-date information about the removable medium. An input command that caused navigation within a removable media device sub-menu is preferably used as the user might have changed the medium when being in the respective sub-menu but not performing any other tasks therein. An input command to access a removable medium is preferably taken because wrong information in this state of the device would lead to impossibility of performing the respective task. An input command that is generally preceding an access to a removable medium is preferably used in order to pro-actively update the status when the necessity to have such update is likely, even if it is not always required. This has the advantage that the updating can be done in the background and when the access actually is requested, the update is already performed, no unnecessary processing time is needed then.

According to the invention a change of characteristic feature of the at least one removable medium is performed repeatedly in case that an error status such as wrong data type on the removable medium or wrong type of removable medium has been detected. In such case there is given a message to the user asking to reconnect the media device or to reinsert the removable medium in order to correct errors that occurred by chance. In this case it is preferable to do the update as soon as possible, without taking into account possible time delays.

In case of a multicard reader type media device each single change is reflected when performing the check of identifiers for all removable media of the media device.

According to the invention the file structure of all inserted removable media of a multicard reader type media device are read out and assembled to a single file structure. This has the advantage that no overhead information for different media needs to be displayed, like header for medium5, header for medium5′, header for medium5″ and so on. Thus, space on a display is saved for more important information, which is for example the file structure per se. Of course, updates as indicated above are performed also in this case.

An inventive device preferably is provided with a controller for performing the inventive method.

FIG. 1shows a schematic view of video recording device1. A recording and playback section REC outputs a playback signal to a display2. The display2is also provided for displaying a timer menu as provided by a microprocessor uP. The microprocessor uP receives commands from a user interface UI and transfers start time ST and end time ET to a memory M1. In dependency on the times ST, ET set in memory M1the recording and playback section REC starts and ends recording if timer mode is selected. The microprocessor is also connected to a predetermined duration memory PDM for receiving a predetermined duration PD and for calculating an end time ETC therefrom and from an input start time STI. A disk as recording medium8is shown inserted into recording and playback section REC. It may be a removable disk as DVD or a hard disk. The device1is also provided with a further memory9. The device1has also a link3through which an external removable media device4for removable media5is connectable to and disconnectable from the device1.

FIG. 2shows an example of an inventive timer programming method. After the start in step S0a standard predetermined duration PD is set in a predetermined duration memory PDM in step S1. In step S2an input start time STI is received. In step S3a calculated end time ETC is computed as ETC=STI+PD. In step S4it is checked whether an end type command CMD1is received. In this case the calculated end time ETC is taken as end time ET in step S41and the timer programming is ended. Otherwise, it is checked in step S5whether a second type command CMD2is received. If such command is received, in step S51the timer programming is continued without further calculating an end time ETC. When the timer program is finished after step S51, the end time ET is taken as an input end time ETI or, if such is not present, the last calculated end time ETC is taken. If the condition of step S5is not fulfilled, it is checked in step S6whether a third type command CMD3is received. If this is the case, the predetermined time PD is updated in step S61in accordance with the command CMD3and entered in step S62in the predetermined duration memory PDM. If the result of step S6is negative, i.e. if no command or a command irrelevant for the selection is received, it is returned to step S4. Preferably, a function to leave the routine after a certain time without command is implemented but not shown here.

FIG. 3shows a detail of the timer programming method regarding the updating step S61. In step S611it is checked whether the third type command indicates a single event recording. If this is the case, the predetermined duration memory PDM is updated with a first predetermined duration value PD1in step S612. If in step S611a repeated event recording is detected, the predetermined duration memory PDM is updated in step S613with a different duration, the second predetermined duration PD2.

FIG. 4shows a set-up procedure regarding timer programming. After set-up is started in step S91the user's request is detected. In step S92it is checked whether standard conditions are requested. In this case the first predetermined duration PD1is set to 120 minutes and the second predetermined duration PD2is set to 60 minutes in step S921. If in step S93it is detected that country dependent determination is selected, the country information is determined in step S931. This might be by direct user input or by checking an already existing country information. Following, in step S932first and second predetermined duration PD1, PD2are set to country dependent values PD1CC, PD2CC. Preferably, a table indicating appropriate values for each country CC is available. In step S94it is checked whether channel dependent determination is selected. In this case predetermined durations PD1and PD2are set to channel dependent values PD1CH, PD2CH in step S941. The latter are preferably taken from a respective table. In step S95it is checked whether the user wants to determine the durations himself and the predetermined durations PD1, PD2are received in step S951from the user. In step S96the predetermined durations PD1, PD2are stored to the predetermined duration memory PDM.

FIGS. 5ato5eshow different displays during timer programming. The selected channel is indicated by CH, start time and end time are displayed as STD and ETD, the day of the timer programming is indicated by D0to D7, wherein D0is today, D1is the following day, D2the second following day and so on. A weekly repeat is indicated by WR. A confirmation command is indicated by an ok button OK. For countries where the am/pm time standard is used, such indications are given. A timer recording that shall be repeated from the next day until the 4thnext day, the day indicators D1, D2, D3D4are to be selected by the user.

It is now described to increase the stop time automatically to be some fixed duration later than the start time when setting up a timer.

Usually it occurs the problem that when the user is setting up a new timer or is modifying an existing timer in Timer Setup Screen, all possible entries CH, STD, ETD must be entered, otherwise an error message will appear. According to the described embodiment by default the stop time ETD is set to one hour later than the start time STD with the input start time STI being the start time. If no start time STI is input, the current time is taken as start time STI. With this new proposal, the user is provided with a more convenient way to setup a timer with the duration PD the same as the fixed one by entering the start time only, such as 1 hour. It works this way: when user has entered the start time completely, i.e. all four digits of STD the end time ETD is updated automatically by advancing it one hour from the start time, since most of the time the user would setup timers with one hour duration. So user need not to enter an end time ETI if that is the record duration he wants. He can also change the end time ETD by entering another four digits.

The duration is pre-set in the system, of course it will be set to values other than the one hour if it is more desirable, e.g. based on some program duration statistics. The regular programs as drama or variety show are commonly one hour or half an hour long at least in US and Singapore.

When a new timer is set up, the Timer Setup Screen, as shown inFIG. 5b, is perforated with default values. The current channel, here channel01is used, the Current System Time, e.g. 13:56, is used for the default Start Time STD, and Current Time plus one hour as the default Stop Time ETD, here 14:56. And with the method according to the invention the device provides some-additional functions, which bring some convenience while setting up new timers. It is about to set the End Time ETC a pre-fixed amount of time the predetermined duration PD later than the actual Start Time STD automatically after the user completes the four digits entry of Start Time STI, so that the user needs not set the End Time ET if the automatically set End Time ETC suits his needs. Of course it is still possible to set a preferred end time, ET, thus overriding the calculated end time. Dependent on the timer frequency, the pre-fixed amount of time PD is 120 minutes for ONCE timers, as this event is most likely to be a movie, and 60 minutes for timers with other frequencies, as this duration is suitable for sitcoms, variety shows and the like. In order not to be too smart, this is only applicable to the new timers, not to the modified timers. Further, normally the End Time is set automatically only once. That means as long as the user does not navigate from STD to other buttons, but only highlights on Start Time Button STD and enters complete Start Time STI repeatedly or toggles the am/pm repeatedly, if available, the End Time ETD would update automatically according to the Start Time STD and the Frequency.

Here are some examples for the application of the method.FIG. 5c-eshow a first example:

By default, the Frequency is ONCE, i.e. single event recording. Hence when the user opens up a new timer, the default End Time ETD would be PD=120 minutes later than the Start Time STD. Here, the current time is 08:20, thus STD=08:20 and ETD=10:20. The channel is channel01. Now the user moves down to the Day Button, and changes the Frequency from D0(single day) to D0-D5i.e. Mon-Fri if the current day is Monday, seeFIG. 5d. No change on Start time STD or Stop time ETD is done at this stage. Now the user enters 10:00 as Start Time, and the Stop Time updates to 11:00 automatically, as PD2=60 minutes is used for repeated event, seeFIG. 5e. Without leaving the Start Time Button, the user now toggles am to pm, the Stop Time updates to 11:00 μm also (not shown), as the start time field has not been left. Further, without leaving the Start Time Button, the user changes the Start Time to 02:00 am, and the stop time automatically updates to 03:00 am (not shown here).

If now the user navigates away from the Start Time Button, maybe to change the frequency and comes back to set the Start Time STD, or goes to the Stop Time ETD and changes the Stop Time ETD and comes back to set the Start Time STD. Under both conditions, the end time ETD is not updated automatically again as the described navigation commands belong to a second type of commands that indicates that no further automatic update is desired. But user can enter their preferred ones.

FIG. 5c-eshow a second example: By default, the Frequency is ONCE, i.e. single event recording. Hence when the user opens up a new timer, the default End Time ETD would be PD=120 minutes later than the Start Time STD. Here, the current time is 08:20, thus STD-08:20 and ETD=10:20. The channel is channel01. Now the user moves down to the Day Button, and changes the Frequency from D0(single day) to D0-D5i.e. Mon-Fri, seeFIG. 5d. No change on Start time STD or Stop time ETD is done at this stage. Now the user enters 10:00 as Start Time, and the Stop Time updates to 11:00 automatically as PD2=60 minutes is used for repeated event, seeFIG. 5e. Now the user navigates away from the Start Time Button, and if he comes back to the Start Time Button again, the End Time does not update automatically but stays as inFIG. 5e, as the navigation command is taken as an indication that no further update is desired.

FIG. 6shows in diagrammatic form the content of a removable medium5. A first memory area contains the volume identification VID, a second memory area contains the file structure6and a third memory area is the data area7where several files71are stored.

FIG. 7shows a menu10for a recording medium8which menu is displayed on display2. Certain menu areas21,22,23,24are provided to show an indication of different scenes SC1, SC2, SC3, SC4. In the figure one scene SC4has been highlighted by double rim to indicate that this is the scene the user has navigated to.

The inventive video recording device is provided with a function for checking the change of removable media. PVR and DVD recording devices are often provided with a USB link3for connecting an external removable media device4(e.g. still picture camera equipped with flash media card). When the external removable media device4is connected to the PVR/DVD recorder1, the file structure6of the removable medium5is loaded. However, if the removable medium5at the removable media device4is exchanged, the PVR/DVD recorder1does not recognize this change. From PCs there is known to use a “refresh” function, which is to be initiated by the user. Another solution to keep the file structure6in synchronism with the actually loaded removable medium5is to poll the file structure6periodically. An improved solution is desired.

The inventive device1checks for the volume identification VID of the removable media unit4every time a key is pressed at the PVR/DVD recording device1, or a corresponding remote control or control unit. Preferably, this is done only when a key is pressed that causes an action on the removable media unit4.

This has the advantage that processor time is saved in comparison to polling periodically. A dedicated “refresh” procedure is saved and, nevertheless, the correct file structure6is available whenever necessary, as each pressing of a key indicates a possible need of the correct file structure6. The idea can advantageously be implemented for downloading JPEG or MP3 files from the data area7to the PVR/DVD recording device1.

FIG. 9shows the situation where a removable media unit4, a card reader, is present as well as a flash card5. However, the removable medium5, here the flash card, comprises a wrong format or incompatible files. The existence of a problem with the card5is displayed on the display2as On Screen Display OSD. The user is expected to remove the card reader4or to re-plugin the card reader4.

The OSD display2indicates a card problem, e.g. when it encounters a flash memory card5with format that is not supported by the device's file system or if the flash memory card5does not contain the files71or file types required by the device1.

The flow chart ofFIG. 10shows the situation where a removable media unit4, a card reader, is present and also a removable medium5, a flash card, is present.

The OSD display2indicates that required files71are available. Whenever the user moves to a sub menu that is related to the removable medium5, a check for the volume identification VID is performed. This ensures that a very low number of such check processes is performed. An alternative solution is to perform such check every time the user performs an action like navigating, entering data or commands or the like when being in a sub menu that is related to the removable medium. This has the advantage that check processes are performed whenever they seem to be likely, thus giving up-to-date information to the user while not blocking too much processing capacity.

In case that the volume identification VID has not changed, processing is continued, e.g. playback command or transfer command is accepted and performed and respective active processes are being continued.

In case that the volume identification VID has changed, a refresh process is performed. The user is informed about the new status, e.g. by means of the OSD2. For a removable medium5that is newly inserted, the following is performed: check volume identification VID of each flash memory5inserted, if volume identification VID is NULL generate a random 4 byte identification code. Preferably, the random generation function is taken from screen saver's random coordination function and write it to the particular flash memory as volume identification VID.

The inventive device1has the advantage, that flash memory5can be safely removed or exchanged during idle mode, i.e. in a mode where the host, the inventive device1, is not accessing the card reader4, hence no command is send. When update of file structure6might be necessary, a checking process is performed. The result of the checking process is either, that the OSD2displays a warning that no card is inserted, or that a refresh for the flash memory is performed if a volume identification VID was detected.

In any of time while card5is playing/copying files71like jpeg or mp3, it will be unsafe to remove the flash memory5. This will prompt “Improper Card Removal” display on OSD1, to reactivate the reader4in this situation a re-plugin of the reader4to the link3is performed.

In case the removable medium does not provide the possibility to have a volume identification VID another possibility apart from the volume identification VID to identify presence of a different volume is to check for other characteristics that are quickly accessible and that provide high likelihood of correct identification.

The volume identification VID of the flash memory is checked every time the user is entering a USB sub-pic menu. This check is only done when the user presses a button on the remote control or an internal control till the selection of files71to play. The device, via microprocessor UP checks the volume identification VID at every stage till opening a file71for mp3/jpeg decoding.

The removable media device4may be of the multicard reader type. In this case, the removable media device4is provided with means to receive several removable media5,5′,5″ as indicated by dashed lines inFIG. 1. The removable media5,5′,5″ may be of the same type as well as of different type. Usually, only the content for a single one of the media5,5′,5″ can be displayed on display2. Displaying several tables of content for several media5,5′,5″ would reduce the size of the characters to be used or would increase the complexity, which both is not acceptable for a consumer electronic device where the display2screen is arranged comparatively remote from the user.

One approach is to detect the first readable Logical Unit (LUN for accessing designated card5slot) and display its content. Hence the user can only access this card5slot. If the user decides to change to another card5′,5″ slot, he/she has to remove the card reader4from the player and to re-plugin again. This case will be troublesome if users are swapping cards5,5′5″ very often or if they are using more than one card5,5′,5″.

According to the invention, if a multicard reader is inserted, the following steps are performed:Read each card5,5′,5″ slot to determine whether media5,5′,5″ (e.g. flash memory) is inserted to a certain slot or not.Read each media's5,5′,5″ file system and generate a combined Table of Content (TOC) of file names for all media present.OSD display2will display the content of media5,5′,5″ as a whole volume.

With this solution it is solved the UI display problem of displaying all media5,5′,5″ on screen as individual volume (just like PC) and it is saved all the trouble for the users as to refresh card5,5′,5″ whenever they want to read difference card5,5′,5″ slot.

FIG. 8shows a block diagram with additional information. On the left side multiple card reader4is indicated being provided for being loaded with several removable media, namely card5, card5′, card5′″ and card5″. Although all of these cards5to5′″ may be of the same type, the multiple card reader4depicted here is indicated as taking MMC and SD medium as card5, smart media medium as card5′, compact flash medium as card5′″ and memory stick medium as card5″. If all of these are inserted in the multiple card reader4, logical unit numbers LUN1to LUN3are present.

In the middle ofFIG. 8two tables of content for two different cards5,5″ are shown. In this example it is assumed that card slots5′ and5′″ are not provided with a card so that only two logical unit numbers LUN0and LUN1are assigned. The table of content, also called file system, contains several files indicated here by file name1, file name2. . . file name n. Of course, the number of files may be different for these tables of content.

On the right hand side ofFIG. 8the user interface display is shown. It displays a combined table of content for all media5,5″. In case different media on a different number of media are present, the combined table of content contains the files of all the media5to5′″ present in removable media device4.

Today user will need to unplug the USB card reader4from the machine1and plug it back to the machine again to do a card5,5′,5″ reading (refresh card) if he had changed one of the cards5,5′,5″ on the reader. An according aspect of the invention is, when the user presses ok now at the Memory Card Button (User Interface OSD) the removable media unit4or the device1will proceed to do a card reading again (refresh card) to check if a new card is being placed into the reader. This has as one advantage that the user now will not need to first disconnect the reader from the machine and reconnect the reader back to the machine to do a card refresh. This will also greatly reduce possible wear and tear cause to the USB connector on the machine as user will not need to plug/unplug the reader every time he changes the card. This is also useful for a reader4that has multiple slots, user will now be able to do a card refresh whenever he changes a card without need to plug/unplug the reader.

That means that the device1or the unit4will not only do a refresh when a same type of memory card is inserted with difference volume id, but also when the user requests to refresh the card.

This solution is a more interactive one between user and the system as the user can refresh the card at the main menu with ‘OK’ button pressed.