[go: up one dir, main page]

US20130136430A1 - System and methods for optimizing buffering heuristics in media - Google Patents

System and methods for optimizing buffering heuristics in media Download PDF

Info

Publication number
US20130136430A1
US20130136430A1 US13/752,302 US201313752302A US2013136430A1 US 20130136430 A1 US20130136430 A1 US 20130136430A1 US 201313752302 A US201313752302 A US 201313752302A US 2013136430 A1 US2013136430 A1 US 2013136430A1
Authority
US
United States
Prior art keywords
media
heuristics
playback
buffering
video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/752,302
Inventor
Nils B. Lahr
Garrick C. Barr
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US13/752,302 priority Critical patent/US20130136430A1/en
Publication of US20130136430A1 publication Critical patent/US20130136430A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2428Query predicate definition using graphical user interfaces, including menus and forms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • H04N21/44224Monitoring of user activity on external systems, e.g. Internet browsing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/87Regeneration of colour television signals

Definitions

  • Disclosure herein is generally directed to the field buffering heuristics in media assets.
  • the algorithms for selecting which fragment to download next into the media player are called the “heuristics” components.
  • Current Smooth Video heuristics are closed to end-user modifications, have been optimized for long form video, do not utilize any historical playback data and fail to provide a high quality end-user experience when playing multiple high quality short form media clips in a row.
  • the heuristics start over by playing the lowest bit rate video first and ramping up.
  • the user By playing the lowest quality bitrate video first, the user is presented with typically 2-3 fragments or more of video which plays at very low quality.
  • the media clip is short, perhaps only 4-30 fragments long, the user is presented with 2 seconds of low quality video, even if their connection to the Internet would normally support high quality video during long form video playback.
  • Disclosure below relates to enabling smooth video playback of a group of media files where the transition between each file be smooth and at have the highest quality available.
  • the present invention relates to selecting the best bitrate and to filling the playback buffer in the most optimized way so as to avoid quality loss, thus enhancing the end-user experience.
  • a new heuristics engine which sacrifices initial load time for quality of playback, while also utilizing previous user-based playback statistics as hints on how to optimize successive items. Additionally, in accordance to this invention, the heuristics system will continue to fill the media player's buffer across playlist elements without waiting for the current element to be finished.
  • Short form media and particularly sports or other high definition media, requires heuristics which optimize the end-user experience.
  • the quality of highlight reel playback e.g. custom reel playback consisting of short form video segments selected by end users, content providers or other means that yield assemblage of short form video segments
  • the systems and methods utilize a computer executable program having instructions to implement a method to smooth video playback of a media file.
  • the method includes selecting a media player, selecting a media file for smoothing, selecting at least one heuristics engine compatible with the media player, selecting a buffering engine compatible with the media file, buffering the media file, and creating a new heuristics engine to optimize playback of the buffered media file on the selected media player.
  • the particular embodiments utilizes an algorithm to analyze previous attempts by the same user and either presents the media player with all data, a subset of data or even just a simple hint, enabling the boot of the heuristics engine with the ability to custom-target the initial startup methods.
  • This may be handled in one of two ways. This provides for implementation of one heuristics engine per media element or utilizes one or more heuristics engines that is/are persistent across multiple media elements. The result is that the heuristics engine is responsible for correctly managing the system to optimize the end user's viewing experience.
  • the buffering engine driven by the heuristics sub-system, will continue to buffer data, even across media asset borders, regardless of where playback is inside the media player.
  • the buffering engine can also be configured to store each fragment locally in a database style cache.
  • the user can be presented with options on the size and aggressiveness of the disk caching system.
  • the buffering engine will either request a higher quality fragment, if one is available, and if the heuristics engine stats indicate there is time to do so, or alternately, will utilize the fragment previously cached.
  • a clip is done buffering, it may still be playing in the media player. The media player will then create a new heuristics system and buffering engine, yet transfer relevant data from the current media's components. In this fashion, buffering can occur across media boundaries and playback of the next clip is smooth and without the compromise of quality that current blank slate heuristics system exhibit that are standard in the industry today.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Social Psychology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

An algorithm to analyze previous attempts by the a user of a media player and either presents the media player with all data, a subset of data or even a hint, enabling the boot of the heuristics engine with the ability to custom-target initial startup methods of the media engine.

Description

    CROSS REFERENCE To RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 13/085,363 filed on Apr. 12, 2011 which claims the benefit of priority to and incorporates by reference in their entireties U.S. Provisional Patent Application No. 61/323,790 filed Apr. 13, 2010 and to U.S. Provisional Patent Application No. 61/323,800 filed Apr. 13, 2010. All of the aforementioned applications are hereby incorporated by reference in their entireties as if fully set forth herein.
  • FIELD OF THE INVENTION
  • Disclosure herein is generally directed to the field buffering heuristics in media assets.
  • BACKGROUND OF THE INVENTION
  • Recently a new type of digital media encoding has become available. The encoding process, tag named “Smooth” or “Smooth Video,” means that video is encoded in more than one bitrate and that every 2-3 seconds of video in each bitrate can be grouped together. These groupings are called “fragments”. By enabling such encoding to exist, playback within a network viewing system can select the best possible fragment based on available bandwidth, quality of service or QOS settings, central processing unit or CPU utilization and other factors. Additionally, if the media player changes bitrates between fragments, the playback is smooth—video playback isn't halted, jerky or display other artifacts during transition between the borders of each fragment. The algorithms for selecting which fragment to download next into the media player are called the “heuristics” components. Current Smooth Video heuristics are closed to end-user modifications, have been optimized for long form video, do not utilize any historical playback data and fail to provide a high quality end-user experience when playing multiple high quality short form media clips in a row.
  • Previously, where there is only one bitrate available (such as with YouTube and other such video solutions), there are no heuristics. These systems simply download the single available bitrate content as fast as conditions permit. The only heuristics for Smooth Video released thus far have been by Microsoft Corporation. Microsoft's heuristics have made certain tradeoffs resulting in compromised performance when handling short form video. The existing heuristics assume that the media being played back is long form; they start from the lowest bitrate video and increase, per fragment, until the proper optimized bitrate video matching current end user conditions is found. Every time a new clip is loaded, the heuristics, being driven by the statistics of playback, are cleared and reset. With each new clip, the heuristics start over by playing the lowest bit rate video first and ramping up. By playing the lowest quality bitrate video first, the user is presented with typically 2-3 fragments or more of video which plays at very low quality. When the media clip is short, perhaps only 4-30 fragments long, the user is presented with 2 seconds of low quality video, even if their connection to the Internet would normally support high quality video during long form video playback.
  • In brief, current methods utilize no historical data, either per-network, per-application or per-user, and, as such, information from previous playback is ignored during subsequent playback. Additionally, load time is sacrificed for quality. The results are that Smooth Video does not work satisfactorily with highlight reels inside of a network player.
  • DETAILED DESCRIPTION OF THE PARTICULAR EMBODIMENTS
  • Disclosure below relates to enabling smooth video playback of a group of media files where the transition between each file be smooth and at have the highest quality available. The present invention relates to selecting the best bitrate and to filling the playback buffer in the most optimized way so as to avoid quality loss, thus enhancing the end-user experience.
  • In accordance with the particular embodiments of the present invention, there is provided a new heuristics engine which sacrifices initial load time for quality of playback, while also utilizing previous user-based playback statistics as hints on how to optimize successive items. Additionally, in accordance to this invention, the heuristics system will continue to fill the media player's buffer across playlist elements without waiting for the current element to be finished. Short form media, and particularly sports or other high definition media, requires heuristics which optimize the end-user experience. The quality of highlight reel playback (e.g. custom reel playback consisting of short form video segments selected by end users, content providers or other means that yield assemblage of short form video segments) is critical to an acceptable end-user experience.
  • In one particular embodiment for optimizing the buffering heuristics in microprocessor executable or computer media, the systems and methods utilize a computer executable program having instructions to implement a method to smooth video playback of a media file. The method includes selecting a media player, selecting a media file for smoothing, selecting at least one heuristics engine compatible with the media player, selecting a buffering engine compatible with the media file, buffering the media file, and creating a new heuristics engine to optimize playback of the buffered media file on the selected media player.
  • The particular embodiments utilizes an algorithm to analyze previous attempts by the same user and either presents the media player with all data, a subset of data or even just a simple hint, enabling the boot of the heuristics engine with the ability to custom-target the initial startup methods. This may be handled in one of two ways. This provides for implementation of one heuristics engine per media element or utilizes one or more heuristics engines that is/are persistent across multiple media elements. The result is that the heuristics engine is responsible for correctly managing the system to optimize the end user's viewing experience. The buffering engine, driven by the heuristics sub-system, will continue to buffer data, even across media asset borders, regardless of where playback is inside the media player. The buffering engine can also be configured to store each fragment locally in a database style cache. The user can be presented with options on the size and aggressiveness of the disk caching system. When utilizing the cache, the buffering engine will either request a higher quality fragment, if one is available, and if the heuristics engine stats indicate there is time to do so, or alternately, will utilize the fragment previously cached. When a clip is done buffering, it may still be playing in the media player. The media player will then create a new heuristics system and buffering engine, yet transfer relevant data from the current media's components. In this fashion, buffering can occur across media boundaries and playback of the next clip is smooth and without the compromise of quality that current blank slate heuristics system exhibit that are standard in the industry today.
  • While the preferred embodiment of the invention has been illustrated and described, as noted above, many changes can be made without departing from the spirit and scope of the invention. Accordingly, the scope of the invention is not limited by the disclosure of the preferred embodiment. Instead, the invention should be determined entirely by reference to the claims that follow.

Claims (1)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
1. A computer executable program having instructions to implement a method to smooth video playback of a media file, the method comprising:
selecting a media player;
selecting a media file for smoothing;
selecting at least one heuristics engine compatible with the media player;
selecting a buffering engine compatible with the media file;
buffering the media file; and
creating a new heuristics engine to optimize playback of the buffered media file on the selected media player.
US13/752,302 2010-04-13 2013-01-28 System and methods for optimizing buffering heuristics in media Abandoned US20130136430A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/752,302 US20130136430A1 (en) 2010-04-13 2013-01-28 System and methods for optimizing buffering heuristics in media

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US32379010P 2010-04-13 2010-04-13
US32380010P 2010-04-13 2010-04-13
US13/085,363 US20110262102A1 (en) 2010-04-13 2011-04-12 System and methods for optimizing buffering heuristics in media
US13/752,302 US20130136430A1 (en) 2010-04-13 2013-01-28 System and methods for optimizing buffering heuristics in media

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/085,363 Continuation US20110262102A1 (en) 2010-04-13 2011-04-12 System and methods for optimizing buffering heuristics in media

Publications (1)

Publication Number Publication Date
US20130136430A1 true US20130136430A1 (en) 2013-05-30

Family

ID=44815858

Family Applications (5)

Application Number Title Priority Date Filing Date
US13/085,326 Active 2032-02-05 US9282307B2 (en) 2010-04-13 2011-04-12 System and methods for searching and displaying ontology-based data structures
US13/085,363 Abandoned US20110262102A1 (en) 2010-04-13 2011-04-12 System and methods for optimizing buffering heuristics in media
US13/752,302 Abandoned US20130136430A1 (en) 2010-04-13 2013-01-28 System and methods for optimizing buffering heuristics in media
US15/043,161 Abandoned US20160162540A1 (en) 2010-04-13 2016-02-12 System and methods for searching and displaying ontology-based data structures
US16/569,260 Pending US20200004745A1 (en) 2010-04-13 2019-09-12 System and methods for searching and displaying ontology-based data structures

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US13/085,326 Active 2032-02-05 US9282307B2 (en) 2010-04-13 2011-04-12 System and methods for searching and displaying ontology-based data structures
US13/085,363 Abandoned US20110262102A1 (en) 2010-04-13 2011-04-12 System and methods for optimizing buffering heuristics in media

Family Applications After (2)

Application Number Title Priority Date Filing Date
US15/043,161 Abandoned US20160162540A1 (en) 2010-04-13 2016-02-12 System and methods for searching and displaying ontology-based data structures
US16/569,260 Pending US20200004745A1 (en) 2010-04-13 2019-09-12 System and methods for searching and displaying ontology-based data structures

Country Status (1)

Country Link
US (5) US9282307B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2836920A4 (en) 2012-04-09 2015-12-02 Vivek Ventures Llc Clustered information processing and searching with structured-unstructured database bridge
US9665615B2 (en) 2012-10-24 2017-05-30 Microsoft Technology Licensing, Llc Search-as-you-type on a relational database
US9720972B2 (en) * 2013-06-17 2017-08-01 Microsoft Technology Licensing, Llc Cross-model filtering
CN104159251A (en) * 2014-08-18 2014-11-19 重庆邮电大学 Sensor network fault link inference method based on passive end-to-end
US10454987B2 (en) * 2016-10-28 2019-10-22 Google Llc Bitrate optimization for multi-representation encoding using playback statistics
US12141179B2 (en) 2021-07-28 2024-11-12 OntagenAI, Inc. System and method for generating ontologies and retrieving information using the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100115060A1 (en) * 2005-01-03 2010-05-06 Luc Julia System and method for delivering content to users on a network

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208339B1 (en) * 1998-06-19 2001-03-27 International Business Machines Corporation User-interactive data entry display system with entry fields having distinctive and changeable autocomplete
US20040078236A1 (en) * 1999-10-30 2004-04-22 Medtamic Holdings Storage and access of aggregate patient data for analysis
US20010034734A1 (en) * 2000-02-16 2001-10-25 Whitley Craig A. Multimedia sports recruiting portal
US6757673B2 (en) * 2000-10-09 2004-06-29 Town Compass Llc Displaying hierarchial relationship of data accessed via subject index
US20050001837A1 (en) * 2002-03-01 2005-01-06 Shannon Michael P. Method and internet based software for graphing sport statistics
US20040162803A1 (en) * 2003-02-15 2004-08-19 Rhoads Jeffrey S. Method and system to enable a single sports software application's use across multiple sports
US7299222B1 (en) * 2003-12-30 2007-11-20 Aol Llc Enhanced search results
US8880677B2 (en) * 2005-01-03 2014-11-04 Qualcomm Connected Experiences, Inc. System and method for delivering content to users on a network
US20110055188A1 (en) * 2009-08-31 2011-03-03 Seaton Gras Construction of boolean search strings for semantic search
US20070021165A1 (en) * 2005-07-21 2007-01-25 Ma Jeffrey K Graphical user interface for a fantasy sports application
JP2007110064A (en) * 2005-09-14 2007-04-26 Ishikawajima Harima Heavy Ind Co Ltd Laser annealing method and device thereof
US8201107B2 (en) * 2006-09-15 2012-06-12 Emc Corporation User readability improvement for dynamic updating of search results
US7987176B2 (en) * 2007-06-25 2011-07-26 Sap Ag Mixed initiative semantic search
NO331587B1 (en) * 2007-10-26 2012-01-30 Bmenu As Sok in menus
US20090210395A1 (en) * 2008-02-12 2009-08-20 Sedam Marc C Methods, systems, and computer readable media for dynamically searching and presenting factually tagged media clips
US20090241066A1 (en) * 2008-03-18 2009-09-24 Cuill, Inc. Apparatus and method for displaying search results with a menu of refining search terms
US8051370B2 (en) * 2008-04-23 2011-11-01 Microsoft Corporation Intelligent autocompletion
CN101727454A (en) * 2008-10-30 2010-06-09 日电(中国)有限公司 Method for automatic classification of objects and system
US8875055B1 (en) * 2008-11-28 2014-10-28 Google Inc. Interface for creating and viewing medical decision support rules
US9129012B2 (en) * 2010-02-03 2015-09-08 Google Inc. Information search system with real-time feedback
US8622797B2 (en) * 2010-03-29 2014-01-07 Jaime Brian Noonan Apparatus and method for recommending roster moves in fantasy sports systems
WO2012116312A1 (en) * 2011-02-25 2012-08-30 Vasco Data Security, Inc. Method and apparatus for encoding and decoding data transmitted to an authentication token

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100115060A1 (en) * 2005-01-03 2010-05-06 Luc Julia System and method for delivering content to users on a network

Also Published As

Publication number Publication date
US20200004745A1 (en) 2020-01-02
US20110264680A1 (en) 2011-10-27
US9282307B2 (en) 2016-03-08
US20160162540A1 (en) 2016-06-09
US20110262102A1 (en) 2011-10-27

Similar Documents

Publication Publication Date Title
US9510043B2 (en) Pre-buffering audio streams
US10972772B2 (en) Variable bit video streams for adaptive streaming
US20130136430A1 (en) System and methods for optimizing buffering heuristics in media
US8689267B2 (en) Variable bit video streams for adaptive streaming
US10033787B2 (en) Dynamic virtual chunking of streaming media content
US9280540B2 (en) Content-driven download speed
US9646141B2 (en) Fast start of streaming digital media playback with deferred license retrieval
CN110198495B (en) Method, device, equipment and storage medium for downloading and playing video
US20140025710A1 (en) Storage Optimizations for Multi-File Adaptive Bitrate Assets
AU2012207151A1 (en) Variable bit video streams for adaptive streaming
US10425500B2 (en) Web server constraint support
US20110307900A1 (en) Changing streaming media quality level based on current device resource usage
US20160072864A1 (en) Method and client terminal for receiving a multimedia content split into at least two successive segments, and corresponding computer program product and computer readable mediium
US9712580B2 (en) Pipelining for parallel network connections to transmit a digital content stream
JP2017204754A (en) Moving picture playback apparatus, moving picture playback method, and program

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION