MEDIA PLAYER WITH LOCAL MASS DATA STORAGE DEVICE
AND BROWSER
INTRODUCTION AND BACKGROUND
This invention relates to a media player, such as, but not limited to, a set- top box and an associated method of making digital media data accessible at a user station, such at home.
In technologically advanced regions of the world with adequate broad bandwidth internet connectivity, media data is satisfactorily streamed via the internet from a remote source to be played out on demand and in real time on a renderer system at a local user station (such as a home) comprising a set top box connected to an audio visual renderer device. On the other hand, in other regions of the world (which include areas in developed countries, developing countries and least developed countries) there is no or not adequate internet connectivity (in terms of bit rate available and/or affordability) and therefore play-out of media data "on demand", if available, is associated with unacceptable time delays after the demand and/or frustrating intermittent buffering.
One known solution is to download via a satellite link items of content (also referred to as assets, such as movies) in a data stream in a first encrypted form from a backend to a set-top box at a user station. In the set top-box, the received encrypted items are decrypted and then re-encrypted utilizing Triple Data Encryption Algorithm (TDEA or 3DES), before they are written to a hard drive in the set-top box, to be pre-stored on the hard drive. A
decryption key for decrypting the 3DES encrypted content is required. When a user wants to view a selected movie, the user is prompted via a user interface (Ul) manually to key in on a mobile phone a data string, which is then sent by a Short Message Service (SMS) to the backend. The string comprises protected data relating to the movie selected by the user, the number of a smart card hosted by the set-top box and data relating to a financial transaction for viewing the selected movie. At the backend, if the string meets with certain rules, an entitlement management message is sent from the backend via said satellite link to the smart card of the set- top box enabling loading of the decryption key for a decrypter in the set- top box to decrypt the 3DES encrypted movie for play out on the media Tenderer device, such as a television set, which is connected to the set-top box. The variety and number of pre-stored assets to select from are limited and are restricted to full length movies intended for rendition in a cinema or TV series. Hence, many popular internet resources are thus not available. Furthermore, the Ul which displays a respective icon of the pre-stored assets does not include a search function and provides for a limited user experience compared to what is available in other lean-back environments.
OBJECT OF THE INVENTION
Accordingly, it is an object of the present invention to provide an alternative media player and associated method with which the applicant believes the aforementioned disadvantages may at least be alleviated or which may provide a useful alternative for the known players and methods.
SUMMARY OF THE INVENTION
In this specification, unless the context otherwise indicates, the terms "asset" or "assets" shall mean content in the form of media including but not limited to audio, still images, text, animation, video; and multimedia which may be a combination of any of the aforementioned, including but not limited to audio visual and interactivity content forms.
According to the invention there is provided a media player comprising:
- a controller comprising a processor;
- a local mass data storage device which is connected to the controller;
- a receiver configured for receiving via a first communications path comprising at least one of a broadcast and multicast path data files relating to assets;
- the controller being configured locally to pre-store the data files as files in a file system on the local mass data storage device; and
- a browser application executable by the processor for retrieving from the local mass data storage device a pre-stored file relating to a user selected asset and enabling the controller to render the asset in the file on a renderer device, which is connectable to the media player.
The local mass data storage device may comprise a hard disc drive and/or solid state arrangement or drive. The local mass data storage device may have a capacity of at least 1 Gigabyte (GB), alternatively at least 32 GB, alternatively at least 64 GB, alternatively at least 128 GB, alternatively at least 512 GB, alternatively at least 1 terabyte (TB), alternatively at least 4 TB.
At least some of the assets may be in the form of resources available on the World Wide Web and beatable or identified by a respective Uniform Resource Locator (URL).
In some embodiments, a filtered sub-set or view of a larger set or collection of the resources may be pre-stored on the local mass data storage device together with their respective URL's. The browser may be operative to use the URL together with a prefix pointing to the local mass data storage device, to retrieve the pre-stored file relating to the user selected asset from the file system on the local mass data storage device.
The filtered sub-set may comprise a filtered sub-set of resources available on at least one website, such as YouTube, Netflix or other websites.
The media player may comprise a transceiver configured to cooperate with a second communications path which supports an Internet protocol, such as Internet Protocol (IP).
The browser and controller may be configured, in the event of a user requiring access to a resource which is not pre-stored on the local mass data storage device, to utilize the URL and second communications path to retrieve the resource from the World Wide Web.
Further according to the invention there is provided a method of making assets available at a user station, the method comprising:
- at a backend, receiving assets comprising resources available on a website;
- distributing by broadcasting or multicasting data files relating to the assets to a plurality of distributed media players;
- causing the distributed data files to be pre-stored locally in a file system on a local mass data storage device of each media player; and
- enabling a user to browse the pre-stored data files with a browser and to retrieve from the local mass data storage device a pre-stored file relating to a user selected asset.
At least some of the pre-stored data files may be associated with a respective Uniform Resource Locator (URL) which is the same as a URL by which the resource is locatable or identifiable on the World Wide Web. The method may comprise retrieving the selected asset utilizing the URL, but pointing at the file system on the local mass data storage device.
The method may comprise, before distributing the assets, generating a filtered sub-set of resources hosted by at least one website. The filter may use any suitable selection parameters), such as all resources with more than a predetermined number of online internet hits during a predetermined period of time.
The invention also includes within its scope a computer program which is configured, when being executed by at least one computer at a central backend, to perform the above method.
Yet further included within the scope of the present invention is a method of accessing assets at a user station and which assets are pre-stored in respective data files of a file system on a mass data storage device of a media player at the user station and derived from resources hosted on at least one website and being associated with a respective Uniform Resource Locator (URL), the method comprising:
- utilizing a browser application executing on a processor of the media player to browse the data files in the file system: and
- selecting an asset amongst the assets pre-stored in the file system for rendition on a Tenderer device which is connectable to the media player.
The method may comprise retrieving the file relating to the selected asset by causing a controller of the media player to utilize the URL associated with the asset, but pointing at the file system in the local mass data storage device.
In the event of a user requiring access to a resource which is not pre- stored on the local mass data storage device, the method may comprise utilizing the URL and a second communications path extending between the master device and the World Wide Web, to retrieve the resource from the World Wide Web.
Further included within the scope of the present invention is a computer program which is configured, when being executed by a processor of the media player, to perform the above method.
Still further included with the scope of the present invention is a system comprising a backend and at least one media player as herein defined and/or described. BRIEF DESCRIPTION OF THE ACCOMPANYING DIAGRAMS
The invention will now further be described, by way of example only, with reference to the accompanying diagrams wherein:
figure 1 is a high level block diagram of an example embodiment of a system comprising a central backend configured to receive data relating to assets from a physical data farm and to broadcast said data over a first communications path to be received by distributed media players at respective user stations and wherein the data is pre-stored locally on a respective mass data storage device of the media players; figure 2 is a diagrammatic representation of data objects comprising data relating to respective assets in the form of information resources stored in a relational database at the data farm; figure 3 is a diagrammatic representation of a method of retrieving from the data farm and then filtering data relating to all available assets to form a sub-set or view, before broadcasting data relating to the filtered sub-set; figure 4 is a diagrammatic representation of an example embodiment of the media player, a user interface (Ul) displayed on a
renderer device connected to the media player and a user operable input device;
figure 5 is a more detailed diagram illustrating retrieval of a pre- stored asset from the mass data storage device on the media player and playing out the asset on the renderer device; and
figure 6 is a flow diagram representing part of an algorithm executable by a processor of a controller of the media player for retrieving an asset from the local mass data storage device and, if not available on the local mass data storage device, to retrieve a corresponding resource from the data farm.
DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION
In figure 1 there is illustrated an example embodiment of a system 10 comprising a central backend 12 and a plurality of media players 14.1 to 14. n at respective distributed user stations. Each media player, which may for example be in the form of a set top box (STB), is connectable to a respective renderer device 16.1 to 16. n, such as, but not limited to a TV set.
The media player 14.1 comprises a controller 18 comprising a processor 20 hosting an operating system (OS) 22. The media player also comprises
a local mass data storage device 24, such as a hard disk drive HDD and/or solid state memory arrangement or drive, having a capacity of at least 1 Gigabyte. Also present on the media player is a receiver 26 configured for receiving via a first communications path comprising at least one of a broadcast and a multicast path, data files relating to assets. The first communications path may comprise a satellite link 28.1 or a digital terrestrial television (DTT) link 28.2 or a cable link supporting an Internet protocol, such as a fiber to the home (FTTH) link 28.3 supporting Internet Protocol (IP). The controller 18 is configured to pre-store the received data files as files in a file system on the mass data storage device 24. The media player device 14.1 further comprises a browser application 30 which is executable by the processor for retrieving from the HDD 24 a user selectable pre-stored asset and enabling the controller 18 to present same on the renderer device 16.1 , as will be described in more detail below.
Optionally, the media player 14.1 may comprise a transceiver 31 and be connectable via a second communications path 32 to the internet 34. The second communications path 32 may comprise an Asymmetric digital subscriber line (ADSL) or FTTH or Global System for Mobile Communications (GSM) and/or GPRS and/or 3G/4G, LTE, preferably utilizing Internet Protocol (IP).
It is known that data farms 36 comprising web servers are distributed across the globe to host and support a multiplicity of websites. Such websites may include video-sharing websites, such as YouTube. A video- sharing website allows users to upload, view, and share audio visual content also referred to as assets or resources. Available assets include video clips, TV clips, news clips, music videos, audio and other content such as video blogging, short original videos, and educational videos. The assets may be private or corporate generated assets. Referring to figure 1 , the content is ingested into the system 10 at 62. This content is then uploaded to the internet 34 and stored as resources at the data farm 36 with a respective uniform resource locator (URL) as is well known in the art.
Referring to figure 2, data relating to such assets or resources is stored in relational databases at the distributed data farms 36. The stored data is indexed or structured according to a set of rules and may comprise genre 40 (such as "music", "pets" etc), type 42 (such as "video", "audio"), a first parameter 44 (such as "artist#1", artist#2") etc. A Binary Large OBject (BLOB) 46 comprises the asset data which can be in various formats, such as but not limited to PDF, JPEG, IMG, PNG, WMA, AVI and MP4. As stated above each asset or resource is also associated in the database with a unique identification number (UID) 50, data 52 relating to a number of hits (which may refer to the number of times the asset has been viewed
online on the website and it may hence be an indication of the popularity of the asset) and the URL 54. The URL may typically be in the format of https://www.voutube.eom/TV#/watch7/qenre/music/video/artist#1/UNIQUE ID, with "UNIQUEJD" referring to UID 50.
Referring now to figures 1 to 3, there may for example and amongst many others be stored in the database of the data farm 36 resources having UID's S123, S456, S777 and D888. S123 may in this example be an audio visual asset of artist#1 . Other resources associated with artist#1 include S456 and S777. Resource D888 may be an audio visual asset associated with artist #2.
It is further well known that users can access the resources utilizing a personal computer (PC) or the like device with internet connectivity. However, as stated in the introduction of this specification, large parts of the world do not have internet access or adequate connectivity and therefore large parts of the world's population do not have access to video-sharing websites, such as YouTube and to other sites available on the internet, such as Netflix.
Referring to figure 3, since the entire body or collection of resources on YouTube, for example, may be too large to be stored on the local HDD 24 of the media players 14.1 to 14. n, a suitable filter 60 may be applied by a
content provider or at a backend to a table of all content to form a view 62, which is an intelligently filtered sub-set of all the available resources on the relevant website, such as You Tube. The filter 60 may have any suitable backend or content provider selectable parameter(s). The parameters may change over time and/or depend on the geographical location of targeted user stations and/or demographic data relating to targeted user stations. In this example embodiment, YouTube resources with an online hit rate higher than m hits are filtered to form the view 62. Hence, the view 62 comprises a copy of the above structure and all the data in the data objects, including URL, of the filtered resources. An index 64 of the view is also generated. In this example embodiment, it is assumed that S123, S456 and D888 form part of the view 62, but that S777 does not.
Each data object contained in the view 62 is fed to the backend 12 (shown in figure 1 ). At Content Management System (CMS) 70, the data objects are compressed into a respective ZIP file format, such as DATA.ZIP. The zipped files are broadcast according to a carousel mechanism, such as that disclosed in the applicant's South African provisional patent application 2014/06805 entitled "Dynamic control of content on distributed media player devices using a carousel mechanism" (the contents of which are hereby incorporated with this reference) via the first communications path 28.1 , for example. Broadcasting via the first communications path, depending on the path used, may utilize a single MPEG 2 (or later
standard) transport stream (combined with other streams from other sources) according to Digital Video Broadcasting standards (DVB S/T/S2/T2 or later standards) or pure IP packets.
Referring to figure 4, at each of the media players 14.1 to 14.n, the data objects broadcasted via first communications path 26.1 are received by receiver 26 comprising a demodulator. The controller 18 causes the received data objects to be stored on the HDD 24 in the same format and/or structure as at the data farm 36. Hence, each stored data object remains associated with the same URL. Accordingly, HDD 24 hosts a file system and directory according to which the filtered resources or assets (including URL's) are indexed and stored. LocaLfile://youtube/genre/music/video/artist#1/s123 is for example the location of asset S123 on the HDD 24. HDD 24 may be indexed according to a plurality of directories and subdirectories such as, but not limited to, the arrangement shown in figure 4.
In use and at the user station, the user may access the pre-stored assets utilizing an input device 74 and a user interface (Ul) 70 displayed on a screen 72 of the renderer device 16.1 . The OS 22 of the media player 14.1 is configured to cause the processor 20 to execute the browser application 30, which may for example be Google Chrome. The browser application comprises a searching functionality and has a search field 76. Still
referring to figure 4, the user can access a desired asset associated with artist#1 by, for example, entering into field 76 a keyword (s), such as keyword "ARTIST#1". A row 78 of images or icons relating to assets associated with artist#1 and pre-stored on the HDD 24 is then displayed on the Ul 70 and these include, as stated above, assets or resources
S123 and S456. A URL https://www.youtube.com/results?search_query=ARTIST#1 is associated with the search for artist#1 . In cases wherein the media players 14.1 to 14.n are connected via the second communications path 32 to the internet 34, the row 78 may also comprise images or icons of other assets associated with artist#1 , such as S777, which is not locally pre-stored, but available at the data farm via the second communications path 32 and the internet 34. Referring to figures 4 and 5, the user may, by means of the input device
74 and pointer 82 on screen 72, select any of the assets in the row 78. In the example shown in figure 4, the user is selecting asset S123. Once the user selects S123 from the list, controller 18 retrieves asset S123 from the file system on the local HDD 24 utilizing the original URL, but pointing at the local HDD 24 instead of at the data farm 36. The controller 18 quickly and efficiently retrieves the asset S123 from the local HDD 24. The asset S123 is accordingly played out on renderer device 16.1 as shown at 84 in figure 5. This limits or avoids undesirable delays before rendering and
delays and/or buffering (while downloading from the internet 34) during rendering and play-out. Hence the system, media player and associated methods are expected to provide for a better user experience.
However, the controller 18 may be configured to retrieve via the internet 34 and the second communications path 32 an asset associated with artist#1 (such as asset S777) which is not pre-stored on the HDD 24 and which may be selectable or required by the user. This is explained with reference to figure 6 below.
Software or firmware of the controller 18 may execute an algorithm such as that illustrated in figure 6. When the user requires to access an asset, the algorithm first determines at 90 whether said asset is pre-stored on HDD 24. If so, the controller 18 retrieves said asset at 92 from the HDD 24 as described above with reference to asset S123. In the event that the required asset (such as asset S777) is not present on the HDD 24, the user may be prompted at 94 to authorize retrieval (perhaps at a charge) of the required asset via the second communications path 32. Controller 18 is configured to use the URL https://www.voutube.eom/TV#/watch7/qenre/music/video/artist#1/S777 to retrieve the required asset or resource S777 from the website and data farm. This operation will require adequate internet bandwidth (with added cost implications to the user), but it is an optional addition to the primary
mechanism of downloading content into the media player via the first communications path 24 and pre-storing the media on the local HDD of the media layer, as described above.
It will be appreciated that the media player 14.1 and the browser 30 for accessing resources or assets stored locally instead of at a remote data farm 20, enables the user to enjoy a "TV-like" or "internet-like" "lean-back" experience. It is expected that retrieving assets in this manner is significantly faster and more cost effective than streaming said assets from the internet especially with inadequate broadband internet connectivity.
It will further be appreciated that there are many variations in detail on the invention as herein defined and/or described without departing from the scope and spirit of this disclosure. The pre-stored assets may originate from a variety of sources which is not limited to resources hosted on internet websites (for example, they may include movies, TV series or any other assets which may be obtained from content providers) and other suitable browser applications may be used without departing from the scope and spirit of the invention.