EP2853075B1 - Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll - Google Patents
Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll Download PDFInfo
- Publication number
- EP2853075B1 EP2853075B1 EP13741931.3A EP13741931A EP2853075B1 EP 2853075 B1 EP2853075 B1 EP 2853075B1 EP 13741931 A EP13741931 A EP 13741931A EP 2853075 B1 EP2853075 B1 EP 2853075B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- asset
- attribute
- content
- mpd
- period
- 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.)
- Active
Links
- 230000003044 adaptive effect Effects 0.000 title claims description 10
- 238000012546 transfer Methods 0.000 title claims description 9
- 238000000034 method Methods 0.000 claims description 40
- 230000008569 process Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 3
- 238000012552 review Methods 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 230000006978 adaptation Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 230000037406 food intake Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 241001547070 Eriodes Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/764—Media network packet handling at the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/254—Management at additional data server, e.g. shopping server, rights management server
- H04N21/2541—Rights Management
Definitions
- a television viewer may desire to watch a television show that he or she missed during the show's regular air time on television.
- the viewer may download the show on demand over the Internet via a web browser or other application on a notebook computer, tablet computer, desktop computer, mobile telephone, or other device, then view that show in the browser or other application.
- a viewer may download a movie on demand.
- a viewer may participate in a videoconference with other viewers.
- Dynamic Adaptive Streaming over Hypertext Transfer Protocol is a standard developed to provide such media content and is partially described in International Organization for Standardization (ISO)/International Electrotechnical Commission (IEC) 23009-1, First Edition, 2012 (“23009-1"), and ISO/IEC 23009-1, Technical Corrigendum 1, 2013.
- ISO International Organization for Standardization
- IEC International Electrotechnical Commission
- 23009-1 First Edition
- ISO/IEC 23009-1 Technical Corrigendum 1
- DASH there are two main devices, the Hypertext Transfer Protocol (HTTP) server or servers that provide the content and the DASH client that downloads the content and is associated with the viewer, or user.
- DASH leaves control with the client, which can request content using the HTTP protocol.
- DASH is dynamic and adaptive because the client may choose from among multiple forms of content, or data, based on a variety of factors such as network conditions, device capability, and user choice.
- the HTTP server may inform the client of different download bit rates, the client may choose one of the bit rates, and the client may begin downloading segments of data at the chosen bit rate. If for some reason network conditions deteriorate, then the client may change to a lower bit rate and begin downloading segments of data at the new bit rate. DASH's adaptability therefore ensures that the client consumes less than the available bandwidth.
- the television show, movie, video conference, or other media content that the client desires to view may be referred to as the main content.
- the provider of the main content may desire to earn revenue for providing the main content.
- One way to earn revenue is to include advertisements with the main content.
- the advertisements may be referred to as ads or ad content.
- the HTTP server may direct the client to download ads from an ad server.
- the client may not be able to download or view the main content or portions of the main content until it downloads and views the ad content.
- certain restrictions may be placed on the browser or other application that the content is viewed through so that the ad content cannot be skipped while viewing.
- the provider of the ad content may pay the provider of the main content.
- US 2011/0238789 A1 discloses that a block-request streaming system is provided for improvements in the user experience and bandwidth efficiency of such systems, typically using an ingestion system that generates data in a form to be served by a conventional file server (HTTP, FTP, or the like), wherein the ingestion system intakes content and prepares it as files or data elements to be served by the file server.
- the system might include controlling the sequence, timing and construction of block requests, time based indexing, variable block sizing, optimal block partitioning, control of random access point placement, including across multiple presentation versions, dynamically updating presentation data, and/or efficiently presenting live content and time shifting.
- US 2011/231520 A1 discloses a streaming method and apparatus, in which information regarding a plurality of chapters of content is inserted into a media presentation description that includes information regarding a plurality of media data generated by encoding the content so as to have different qualities, and then, streaming is performed based on the information.
- the disclosure includes an apparatus comprising a processor configured to create a Dynamic Adaptive Streaming over Hypertext Transfer Protocol (DASH) media presentation description (MPD), wherein the MPD comprises an AssetIdentifier element associated with a period, wherein the AssetIdentifier element specifies that the period belongs to a certain asset, and wherein the asset is content including media and metadata together with the rights to use the content provided by a content provider, wherein the MPD further comprises a TrickModeRestriction element, wherein the TrickModeRestriction element comprises an @minSpeed attribute and an @maxSpeed attribute, wherein the @minSpeed attribute specifies a minimum allowed trick play speed, and wherein the @maxSpeed attribute specifies a maximum allowed trick play speed; and the AssetIdentifier element is unique for each asset, and a transmitter configured to transmit the MPD.
- DASH Dynamic Adaptive Streaming over Hypertext Transfer Protocol
- MPD Dynamic Adaptive Streaming over Hypertext Transfer Protocol
- the MPD comprises an AssetIdentifier element associated with a period, wherein
- the disclosure includes an apparatus comprising a receiver configured to receive a Dynamic Adaptive Streaming over Hypertext Transfer Protocol (DASH) media presentation description (MPD), wherein the MPD comprises an AssetIdentifier element associated with a period, wherein the Assetldentifier element specifies that the period belongs to a certain asset, and wherein the asset is content including media and metadata together with the rights to use the content provided by a content provider, wherein the MPD further comprises a TrickModeRestriction element, wherein the TrickModeRestriction element comprises an @minSpeed attribute and an @maxSpeed attribute, wherein the @minSpeed attribute specifies a minimum allowed trick play speed, and wherein the @maxSpeed attribute specifies a maximum allowed trick play speed; and the AssetIdentifier element is unique for each asset, and a processor configured to process the MPD.
- DASH Dynamic Adaptive Streaming over Hypertext Transfer Protocol
- MPD Dynamic Adaptive Streaming over Hypertext Transfer Protocol
- the MPD comprises an AssetIdentifier element associated with a period,
- the disclosure includes a method comprising receiving a Dynamic Adaptive Streaming over Hypertext Transfer Protocol (DASH) media presentation description (MPD), wherein the MPD comprises an AssetIdentifier element associated with a period, wherein the AssetIdentifer element specifies that the period belongs to a certain asset, and wherein the asset is content including media and metadata together with the rights to use the content provided by a content provider, wherein the MPD further comprises a TrickModeRestriction element, wherein the TrickModeRestriction element comprises an @minSpeed attribute and an @maxSpeed attribute, wherein the @minSpeed attribute specifies a minimum allowed trick play speed, and wherein the @maxSpeed attribute specifies a maximum allowed trick play speed; and the AssetIdentifier element is unique for each asset, and processing the MPD.
- DASH Dynamic Adaptive Streaming over Hypertext Transfer Protocol
- MPD Dynamic Adaptive Streaming over Hypertext Transfer Protocol
- the MPD comprises an AssetIdentifier element associated with a period, wherein the AssetIdentifer element specifies
- HTTP is a stateless protocol, meaning that it treats each request for data as an independent transaction unrelated to any previous request.
- an HTTP server cannot directly know which client downloaded which content.
- the client cannot directly know whether data it is downloading is main content or ad content. Rather, if the client is downloading from multiple HTTP servers, then the client knows only which HTTP server it is downloading from.
- DASH currently does not distinguish between main content and ad content.
- a progress bar may refer to a graphical indication of a user's temporal progress in viewing content.
- the progress bar may be viewable to the user in the client's web browser or other application.
- the issue may be best understood using an example. If a client is downloading a media presentation comprising one minute of ad content followed by five minutes of main content, then the client may implement a progress bar indicating that the fourth minute of the main content is downloading and being viewed when, in reality, only the third minute of the main content is downloading and being viewed because the client may include the first minute of the ad content in calculating the progress of the main content.
- the client may not be able to implement random access functionality, for instance properly seeking to a specific time to view the main content.
- the user may be in the fourth minute of the main content but desire to return to the third minute of the main content. Without a distinction between the main content and the ad content, a return to the third minute of the main content may be difficult.
- the HTTP server may not be able to associate additional information, such as a movie title, with the main content.
- trick modes may refer to rewind, fast forward, slow motion, pause, and other modes of playing or viewing content other than at normal speed.
- Trick mode restrictions are often used, especially for ad content.
- the ad provider may desire for such trick modes to be restricted or completely unavailable in order to ensure that the client downloads, and the user views, the ad content.
- Workarounds may exist for at least the first two issues, but those workarounds may be complicated and unreliable. A way to distinguish between main content and ad content is therefore desired.
- the disclosed technique may provide a way for DASH to uniquely identify content.
- the disclosed technique may therefore address each of the issues above.
- the disclosed technique may also apply to other standards and be implemented by other standards developing organizations (SDOs).
- SDOs standards developing organizations
- the disclosed technique is not limited to 23009-1 or even to other DASH standards.
- the disclosed technique is not limited to video on demand or videoconferencing, but may apply to other forms of media content as well.
- FIG. 1 is a schematic diagram of a DASH system 100 according to an embodiment of the disclosure.
- the system 100 may comprise a plurality of n HTTP servers 110, an ad server 140, a DASH client 150, and a network 180.
- the HTTP servers 110, ad server 140, and client 150 may be communicatively coupled to each other via the network 180 and other network components such as HTTP caches (not shown).
- the HTTP servers 110 may be any hardware computer servers configured to send and receive data via HTTP.
- the HTTP servers 110 may comprise server DASH modules (DMs) 120 configured to send and receive data via HTTP and according to the DASH standard.
- the HTTP servers may form a content delivery network (CDN) 130, which may refer to a distributed system of servers deployed in multiple data centers over multiple backbones for the purpose of delivering content.
- CDN 130 may comprise any number of HTTP servers 110 so that n may be any number. Typically, a CDN may comprise thousands of servers.
- the ad server 140 may be any hardware computer server configured to send and receive data via HTTP.
- the ad server 140 may receive requests for ads and send the requested ads to other network components.
- the client 150 may be any hardware device configured to send and receive data via HTTP.
- the client 150 may be a notebook computer, a tablet computer, a desktop computer, a mobile telephone, or another device.
- the client 150 may comprise a client DM 155, an application 170, and a graphical user interface (GUI) 175.
- GUI graphical user interface
- the client DM 155 may be configured to send and receive data via HTTP and according to the DASH standard.
- the client DM 155 may comprise a DASH access engine (DAE) 160 and a media output (ME) 165.
- DAE 160 may be the primary component for receiving raw data from the HTTP servers 110 and constructing that data in a format for viewing.
- the DAE 160 may format the data in Moving Picture Experts Group (MPEG) container formats along with timing data, then output the formatted data to the ME 165.
- the ME 165 may be responsible for initialization, playback, and other functions associated with content and may output that content to the application 170.
- MPEG Moving Picture Experts Group
- the application 170 may be a web browser or other application with an interface configured to download and present content.
- the application 170 may be coupled to the GUI 175 so that a user associated with the client 150 may view the various functions of the application 170.
- the application 170 may comprise a search function so that the user can search for content. For example, if the application 170 is a media player, then the application 170 may comprise a search bar so that the user may input a string of words to search for a movie.
- the application 170 may present a list of search hits, and the user may select the desired movie from among the hits.
- the application 170 may send instructions to the client DM 155 for downloading the movie.
- the DM 155 may download the movie and process the movie for outputting to the application 170.
- the application 170 may provide instructions to the GUI 175 for the GUI 175 to display the movie for viewing by the user.
- the application 170 may further provide instructions to the GUI 175 for the GUI 175 to display a progress bar showing the temp
- the GUI 175 may be any GUI configured to display functions of the application 170 so that the user may operate the application. As described above, the GUI 175 may display the various functions of the application 170 so that the user may select content to download. The GUI 175 may then display the content for viewing by the user.
- the network 180 may be any network configured to provide for communication among the HTTP servers 110, ad server 140, and client 150.
- the network 180 may be the Internet, a mobile telephone network, or another network.
- the network 180 may allow communication along wired or wireless channels.
- FIG. 2 is a schematic diagram of a network device 200 according to an embodiment of the disclosure.
- the device 200 may comprise a plurality of ingress ports 210 and/or receiver units (Rx) 220 for receiving data, a logic unit or processor 230 to process signals, a plurality of egress ports 240 and/or transmitter units (Tx) 250 for transmitting data to other components, and a memory 260.
- the device 200 may be suitable for implementing any of the disclosed features, methods, and devices.
- the device 200 may be suitable for implementing the HTTP servers 110, the ad server 140, and the client 150.
- the logic unit 230 which may be referred to as a central processing unit (CPU), may be in communication with the ingress ports 210, receiver units 220, egress ports 240, transmitter units 250, and memory 260.
- the logic unit 230 may be implemented as one or more CPU chips, cores (e.g., as a multi-core processor), field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), and/or digital signal processors (DSPs), and/or may be part of one or more ASICs.
- the memory 260 may be comprised of one or more disks, tape drives, optical disc drives, or solid-state drives; may be used for non-volatile storage of data and as an over-flow data storage device; may be used to store programs when such programs are selected for execution; and may be used to store instructions and data that are read during program execution.
- the memory 260 may be volatile and/or non-volatile and may be read-only memory (ROM), random-access memory (RAM), ternary content-addressable memory (TCAM), static random-access memory (SRAM), another suitable type of memory, or any combination thereof.
- the memory 260 may comprise a DM 270, which may be suitable for implementing the server DMs 120 or the client DM 155. While the memory 260 is shown as comprising the DM 270, the logic unit 230 or any combination of the logic unit 230 and the memory 260 may alternatively comprise the DM 270.
- FIG. 3 is a protocol diagram 300 for the DASH system 100 according to an embodiment of the disclosure.
- the client 150 may desire to download main content.
- the client 150 may send to the HTTP server 1 110 1 a request for an MPD, which may comprise instructions for downloading segments of the main content from any combination of HTTP servers 110.
- the MPD may require, and comprise instructions for, downloading segments of ad content from the ad server 140.
- MPDs are described more fully below.
- the HTTP server 1 110 1 may send to the client 150 an MPD.
- the client 150 may receive the MPD via the DAE 160, and the DAE 160 may process the MPD in order to construct and issue requests from the HTTP servers 110 for segments of the main content and ad content.
- the client 150 may send to the HTTP server 1 110 1 via the DAE 160 a first segment request for a first segment of the main content.
- the HTTP server 1 110 1 may send to the client 150 via the server DM 120 the first segment of the main content.
- the DAE 160 may receive, process, and format the first segment, then output the formatted data to the ME 165, which may perform various functions and output the data to the application 170.
- the application 170 may present the data for viewing via the GUI 175.
- the client 150 may send to the ad server 140 via the DAE 160 an ad content request.
- the ad server 140 may send to the client 150 the ad content.
- the MPD may require that the client 150 download and present the ad content before the client 150 proceeds with downloading additional segments of the main content.
- the client 150 may send requests for, and receive, additional segments of the main content as well as ad content until, at step 370, the client 150 may send to the HTTP server 2 110 2 via the DAE 160 a last segment request for a last segment of the main content.
- the HTTP server 2 110 2 may send to the client 150 via the server DM 120 the last segment of the main content.
- the DAE 160 may process and format that segment, then output the formatted data to the ME 165.
- the ME 165 may perform various functions and output the data to the application 170. After a buffering period, the application 170 may present the data for viewing via the GUI 175.
- the main content and ad content may be downloaded in any order as instructed by the MPD.
- the client 150 may download content while simultaneously displaying the content for viewing.
- the simultaneous downloading and displaying may be why the process is referred to as streaming.
- the process of requesting and receiving the MPD may be reiterative.
- the client 150 may request, or be instructed to request, an updated MPD for a variety of reasons.
- FIG. 4 is a diagram of an MPD 400 according to an embodiment of the disclosure.
- the MPD 400 may comprise Period 410, Adaptation Set 420, Representation 430, Segment 440, Sub-Representation 450, and Sub-Segment 460 elements.
- the elements may be distinguished by uppercase first letters or camel-casing, as well as bold face, though bold face is removed herein.
- the Segment 440 may be an element of the MPD 400 that is associated with a segment, the latter of which may be a unit of data as described more fully below.
- the Period 410 may be associated with a period of data.
- the MPD 400 may be referred to as a "formalized description for a [m]edia [p]resentation for the purpose of providing a streaming service.”
- a media presentation in turn, may be referred to as a "collection of data that establishes a...presentation of media content.”
- the MPD 400 may define formats to announce HTTP uniform resource locators (URLs), or network addresses, for downloading segments of data.
- a segment may be referred to as a unit of data associated with a URL.
- a segment may generally be the largest unit of data that can be retrieved with a single HTTP request using a single URL.
- the MPD 400 may be an Extensible Markup Language (XML) document.
- the MPD 400 may comprise a plurality of URLs, or metadata used by the client 150 to construct a plurality of URLs, pointing to one or more HTTP servers 110 for downloading segments of data.
- the client 150 may receive a plurality of URLs in the MPD at step 320.
- a first URL may be associated with the first segment and point to the HTTP server 1 110 1 so that the client 150 requests and receives the first segment from the HTTP server 1 110 1 .
- a second URL may be associated with the ad content and point to the ad server 140 so that the client 150 requests and receives the ad content from the ad server 140. The process may continue until the client 150 requests and receives content from the HTTP server 110 associated with the last URL.
- the MPD 400 is a hierarchical data model.
- the Period 410 may typically represent "a media content period during which a consistent set of encoded versions of the media content is available.” In other words, the "set of available bitrates, languages, captions, subtitles, etc. does not change during a [p]eriod.”
- the Representation 430 may describe "a deliverable encoded version of one or several media content components.”
- the client 150 may switch from Representation to Representation...in order to adapt to network conditions or other factors.” The adaptability of DASH therefore lies among a set of mutually interchangeable Representations 430.
- the client 150 may determine if it can support a specific Representation 430. If not, then the client 150 may select a different Representation 430 that it can support. The client 150 may then begin downloading each segment within the selected Representation until the client 150 ceases downloading or until the client 150 selects another Representation 430.
- the Period 410, Adaptation Set 420, Representation 430, Segment 440, Sub-Representation 450, and Sub-Segment 460 elements describe data.
- Each element may comprise one or more attributes, which are like properties of the element in that they provide further definition about the element. Elements and attributes are defined in Extensible Markup Language (XML) 1.0, Fifth Edition, 2008. In this text, attributes may be prefixed with the @ symbol.
- the Period 410 may comprise an @start attribute that may specify when on a presentation timeline a period associated with the Period 410 begins.
- the Period 410 may comprise an @duration attribute that may specify the duration of a period associated with the Period 410.
- the Adaptation Set 420, Segment 440, Sub-Representation 450, and Sub-Segment 460 elements are described in 23009-1 and do not need further explanation herein.
- FIG. 5 is a diagram 500 of a media presentation 510 according to an embodiment of the disclosure.
- the media presentation 510 may comprise nine periods, which may be described in nine Periods 410 in the MPD 400. Periods 1, 5, and 9 may be associated with a movie, or main content. Periods 2-4 and 6-8 may be associated with ads, or ad content.
- the diagram 500 is one example of a media presentation.
- a media presentation may include pre-roll, mid-roll, and post-roll ad content, meaning that ad content may be included before, in the middle of, and after main content, respectively.
- Ads may typically be associated with a single period, though a series of ads, for instance ads 1-3, may be associated with a single period.
- the Period 410 may comprise @start and @duration attributes.
- the client 150 may be able to calculate the presentation timeline 510.
- the presentation timeline contemplates both the main content and the ad content because the MPD 400 does not uniquely identify content. Consequently, when the client 150 downloads and presents the media presentation 510, the movie may be at time 00:20:00 (i.e., the 20th minute of the movie), though a progress bar may show time 00:35:00.
- the client 150 may not be able to, for instance, properly seek to time 00:20:00 in the movie.
- An asset may refer to media content, for instance a movie.
- an asset may refer to content including media and metadata together with the rights to use the content by the content provider.
- An asset may be uniquely identified by an element.
- the element may be an XML element named, for instance, AssetIdentification or AssetIdentifier.
- the AssetIdentifier element may be used to identify an asset on the period level and specify that a period belongs to a certain asset. In other words, if two different Periods contain equivalent AssetIdentifiers, then the two associated periods may belong to the same asset. Alternatively, the AssetIdentifier element may be used to identify an asset at other levels as well.
- the AssetIdentifier element may be unique for each asset, not for each MPD.
- the AssetIdentifier element may comprise the attributes shown in Table 1.
- Table 1 AssetIdentifier element and corresponding attributes Element or Attribute Name Use Description
- AssetIdentifier @assetId M Unique identifier for the asset. This value corresponds to unique content (e.g. movie asset, ad spot). Use of standardized and resolvable identifiers is recommended (see examples below).
- @start O If provided, specifies the time on the asset timeline which corresponds to the start time of the period.
- @type OD Defines the type of content.
- Options may be "main” (main content), "ad-spot” (inserted ad), etc. If absent, "main” is the default value.
- the AssetIdentifier element may comprise @assetId, @start, and @type attributes.
- the @assetId attribute may uniquely identify an asset.
- the @assetId attribute may be, for instance, an International Standard Audiovisual Number (ISAN), an Entertainment Identifier Registry (EIDR), or a Digital Object Identifier (DOI).
- the @start attribute may specify the time on an asset timeline which corresponds to the start time of the Period. Asset timelines are described more fully below.
- the @type attribute may define the type of content, for instance main content or ad content, associated with the asset.
- the XML syntax corresponding to the AssetIdentifier element may be as follows:
- An example XML document incorporating the AssetIdentifier element may be as follows:
- the client 150 may properly calculate an asset timeline. For example, if an asset is the movie in periods 1, 5, and 9 in FIG. 5 , then an asset timeline may correspond to the movie timeline in FIG. 5 . An asset timeline may therefore be equivalent to a presentation timeline of the movie. The asset timeline may be identical to the presentation timeline in a single period. While the presentation timeline may span across all periods, the asset timeline may correlate to all periods related to the movie. The AssetIdentifier may therefore allow the client 150 to translate between the presentation timeline and the asset timeline.
- the client 150 may calculate the asset timeline in at least three ways.
- the MPD 400 may comprise an AssetIdentifier element for Period 1 that uniquely identifies period 1 as comprising the movie.
- An @duration attribute for Period 1 may identify that period 1 lasts for 10 minutes.
- the client 150 may therefore determine that the asset timeline for the movie should include 10 minutes for period 1.
- the AssetIdentifier elements for Periods 2-4 may identify that periods 2-4 comprise assets different from the movie and the @duration attributes for Periods 2-4 may identify that periods 2-4 last for 15 minutes, so the client 150 may determine that the asset timeline for the movie should not include the 15 minutes for periods 2-4.
- the AssetIdentifier element for Period 5 may identify that period 5 comprises the movie and the @duration attribute for Period 5 may identify that period 5 lasts for 10 minutes, so the client 150 may determine that the asset timeline for the movie should include the 10 minutes for Period 5.
- the AssetIdentifier elements for Periods 6-8 may identify that periods 6-8 comprise assets different from the movie and the @duration attributes for Periods 6-8 may identify that periods 6-8 last for 15 minutes, so the client 150 may determine that the asset timeline for the movie should not include the 15 minutes for periods 6-8.
- the AssetIdentifier element for Period 9 may identify that period 9 comprises the movie and the @duration attribute for Period 9 may identify that period 9 lasts for 10 minutes, so the client 150 may determine that the asset timeline for the movie should include the 10 minutes for period 9. By adding the 10-minute periods for the movie, the client 150 may determine that the movie lasts for 30 minutes, so the client 150 may be able to determine an asset timeline for the movie.
- the MPD 400 may comprise an AssetIdentifier element for Period 1 that uniquely identifies period 1 as comprising the movie, and an @start attribute for Period 1 may identify that period 1 begins at 0 minutes on the presentation timeline.
- the AssetIdentifier element for Periods 2-4 may identify that periods 2-4 comprise assets different from the movie, and an @start attribute for Period 2 may identify that period 2 begins at 10 minutes on the presentation timeline, so the client 150 may determine that the asset timeline for the movie should include only 10 minutes for period 1.
- the AssetIdentifier element for Period 5 may identify that period 5 comprises the movie and the @start attribute for Period 5 may identify that period 5 begins at 25 minutes on the presentation timeline.
- the AssetIdentifier element for Periods 6-8 may identify that period 6-8 comprise assets different from the movie, and an @start attribute for Period 6 may identify that period 6 begins at 35 minutes on the presentation timeline, so the client 150 may determine that the asset timeline for the movie should include only 10 minutes for period 5.
- the AssetIdentifier element for Period 9 may identify that period 9 comprises the movie and the @start attribute for Period 9 may identify that period 9 begins at 50 minutes on the presentation timeline.
- There are no further Periods so the client 150 may determine that the asset timeline for the movie should include the 10 minutes for Period 9.
- the client 150 may determine that the movie lasts for 30 minutes, so the client 150 may be able to determine an asset timeline for the movie.
- the MPD 400 may comprise AssetIdentifier elements for Periods 1, 5, and 9 that uniquely identify periods 1, 5, and 9 as comprising the movie.
- the AssetIdentifier elements for Periods 1, 5, and 9 may comprise @start attributes that directly specify times on an asset timeline, as opposed to on a presentation timeline, which corresponds to the start times of periods 1, 5, and 9.
- the client 150 may therefore directly determine an asset timeline for the movie.
- the element may be an AssetIdentifier element of the type DescriptorType.
- the AssetIdentifier element in the second embodiment may be used to identify an asset on the period level and specify that a period belongs to a certain asset. Alternatively, the AssetIdentifier element may be used to identify an asset at other levels as well. If the client 150 does not recognize the AssetIdentifier element, then the client 150 may ignore the AssetIdentifier element.
- the AssetIdentifier element may be unique for each asset, not for each MPD.
- the AssetIdentifier element may comprise an @schemeIdUri attribute and an @value attribute.
- the @schemeIdUri attribute may specify a uniform resource identifier (URI) to identify a scheme.
- the @value attribute may be used to indicate whether the asset comprises main content or inserted content. Inserted content may refer to ad content or any other content that is not main content.
- An example of the XML syntax corresponding to the AssetIdentifier element may be as follows:
- the @schemeIdUri attribute may specify a URI to identify a scheme that indicates that the @value attribute and the element content are to be interpreted as described in the second embodiment, the @value attribute may indicate that the asset is main content, and the element content may indicate an EIDR of an associated asset. Because the AssetIdentifier element does not comprise an @start attribute, the client 150 may not use the second or third method for calculating an asset timeline described above. Rather, the client 150 may use the first method for calculating an asset timeline described above.
- the client 150 may be able to properly implement a progress bar for the movie and random access functionality on the asset timeline. Furthermore, by identifying ads by the @type attribute of the AssetIdentifier element, the client 150 may be able to determine when it downloads ads and may therefore report to the HTTP server 110 or the ad server 140 when it does so. Alternatively, by identifying ads by the @type attribute of the AssetIdentifier element, the HTTP server 110 may be able to determine when it uploads the MPD 400 associated with ads and may therefore report to the ad server 140 when it does so.
- the client 150 may access additional information about those assets, for instance a title, a summary, an actor, an actress, a rating, trivia, a review, social media data, and information about a product or service being advertised.
- the TrickModeRestriction element may comprise the attributes shown in Table 2.
- the TrickModeRestriction element may comprise @minSpeed and @maxSpeed attributes.
- the @minSpeed attribute may define the minimum allowed trick play speed.
- the @maxSpeed attribute may define the maximum allowed trick play speed.
- Speed may be referred to as the factor which the presentation rate is multiplied by for trick mode purposes. Speed may be identical to the Speed header defined in section 12.35 of Internet Engineering Task Force (IETF) Request for Comments (RFC) 2326, Real Time Streaming Protocol (RTSP), 1998, which is incorporated in its entirety.
- Speeds less than zero may represent rewind speeds, a speed of zero may represent a pause, speeds between zero and one may represent slow-motions speeds, a speed of one may represent normal speed, and speeds greater than one may represent fast forward speeds.
- trick mode restrictions may be behavioral restrictions that regulate client 150 behavior and may be unrelated to whether there are, for instance, SubRepresentations that support such trick modes.
- the trick mode restrictions may be implemented in multiple ways. For example, they may be implemented via a dedicated client 150-specific descriptor and an element at the Period level. Alternatively, they may be implemented via elements of the SCTE 130-10 schema defined in Society of Cable Telecommunications Engineers (SCTE) Digital Program Insertion - Advertising Systems Interfaces, Part 10, Stream Restriction Data Model (SRDM), 2013, which is incorporated in its entirety. Such alternative implementation may comprise using an element of the type DescriptorType which contains an @schemeIdUri attribute indicating that SRDM elements are contained within it and contains XML elements and attributes defined in SRDM.
- SCTE Society of Cable Telecommunications Engineers
- SRDM Stream Restriction Data Model
- the MPD 400 may associate a TrickModeRestriction element with a specific Period. For example, because Periods 2-4 and 6-8 are associated with ads, the MPD 400 may provide a TrickModeRestriction element for Periods 2-4 and 6-8. Accordingly, trick modes may be limited or completely unavailable for Periods 2-4 and 6-8 to ensure that the client 150 downloads, and the user views, the ad content associated with those Periods.
- An ad provider may determine the TrickModeRestriction element, the @minSpeed attribute, and the @maxSpeed attribute.
- FIG. 6 is a flowchart illustrating a method 600 according to an embodiment of the disclosure.
- the method 600 may be implemented, for instance, in the client 150.
- a DASH MPD may be received.
- the DASH MPD may be the MPD 400.
- the MPD may comprise an AssetIdentifier element associated with a period.
- the AssetIdentifier element may specify that the period belongs to a certain asset.
- the asset may be content including media and metadata together with the rights to use the content by a content provider.
- the MPD may be processed.
- the client 150 may process the MPD 400 and, for instance, implement a progress bar and random access functionality on an asset timeline.
- R R 1 + k * (R u - R 1 ), wherein k is a variable ranging from 1 percent to 100 percent with a 1 percent increment, i.e., k is 1 percent, 2 percent, 3 percent, 4 percent, 5 percent, ..., 50 percent, 51 percent, 52 percent, ..., 95 percent, 96 percent, 97 percent, 98 percent, 99 percent, or 100 percent.
- any numerical range defined by two R numbers as defined in the above is also specifically disclosed.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Claims (15)
- Vorrichtung (200), die Folgendes umfasst:einen Prozessor (230), der konfiguriert ist, eine Mediendarstellungsbeschreibung, MPD, eines dynamischen adaptiven "Streaming"-über-Hypertext-Übertragungsprotokolls, DASH, zu erzeugen, wobei die MPD ein AssetIdentifier-Element, das einem Zeitraum zugeordnet ist, umfasst, wobei das AssetIdentifier-Element spezifiziert, dass der Zeitraum zu einem bestimmten Vermögenswert gehört, und wobei der Vermögenswert ein Inhalt ist, der Medien und Metadaten zusammen mit den Rechten, den durch einen Inhaltsanbieter bereitgestellten Inhalt zu verwenden, enthält, und das AssetIdentifier-Element für jeden Vermögenswert eindeutig ist;wobei die MPD ferner ein TrickModeRestriction-Element umfasst, wobei das TrickModeRestriction-Element ein @minSpeed-Attribut und ein @maxSpeed-Attribut umfasst, wobei das @minSpeed-Attribut eine minimale zulässige Trickabspielgeschwindigkeit spezifiziert und wobei das @maxSpeed-Attribut eine maximale zulässige Trickabspielgeschwindigkeit spezifiziert;
undeinen Sender (250), der konfiguriert ist, die MPD zu senden. - Vorrichtung nach Anspruch 1, wobei das AssetIdentifier-Element ein @assetId-Attribut, ein @start-Attribut und ein @type-Attribut umfasst, wobei das @assetId-Attribut ein eindeutiger Identifizierer für den Vermögenswert ist, wobei das @start-Attribut einen Zeitpunkt auf einer Vermögenswert-Zeitachse spezifiziert, der einem Anfangszeitpunkt des Zeitraums, der dem Vermögenswert zugeordnet ist, entspricht, und wobei das @type-Attribut einen Typ des Inhalts definiert, der dem Vermögenswert zugeordnet ist.
- Vorrichtung nach Anspruch 1, wobei das AssetIdentifier-Element spezifiziert, dass der Zeitraum zu einer Werbung gehört.
- Vorrichtung nach Anspruch 1, wobei der Prozessor ferner konfiguriert ist, die Übertragung des MPD zu melden, wenn das AssetIdentifier-Element spezifiziert, dass der Zeitraum zu einer Werbung gehört.
- Vorrichtung (200), die Folgendes umfasst:einen Empfänger (220), der konfiguriert ist, eine Mediendarstellungsbeschreibung, MPD, eines dynamischen adaptiven "Streaming"-über-Hypertext-Übertragungsprotokolls, DASH, zu empfangen, wobei die MPD ein AssetIdentifier-Element, das einem Zeitraum zugeordnet ist, umfasst, wobei das AssetIdentifier-Element spezifiziert, dass der Zeitraum zu einem bestimmten Vermögenswert gehört, und wobei der Vermögenswert ein Inhalt ist, der Medien und Metadaten zusammen mit den Rechten, den durch einen Inhaltsanbieter bereitgestellten Inhalt zu verwenden, enthält, und das AssetIdentifier-Element für jeden Vermögenswert eindeutig ist;wobei die MPD ferner ein TrickModeRestriction-Element umfasst, wobei das TrickModeRestriction-Element ein @minSpeed-Attribut und ein @maxSpeed-Attribut umfasst, wobei das @minSpeed-Attribut eine minimale zulässige Trickabspielgeschwindigkeit spezifiziert und wobei das @maxSpeed-Attribut eine maximale zulässige Trickabspielgeschwindigkeit spezifiziert;
undeinen Prozessor (230), der konfiguriert ist, die MPD zu verarbeiten. - Vorrichtung nach Anspruch 5, wobei das AssetIdentifier-Element ein Element einer erweiterbaren Auszeichnungssprache, XML-Element, ist, das ein @assetId-Attribut, ein @start-Attribut und ein @type-Attribut umfasst, wobei das @assetId-Attribut ein eindeutiger Identifizierer für den Vermögenswert ist, wobei das @start-Attribut einen Zeitpunkt auf einer Vermögenswert-Zeitachse spezifiziert, der einem Anfangszeitpunkt des Zeitraums, der dem Vermögenswert zugeordnet ist, entspricht, und wobei das @type-Attribut einen Typ des Inhalts definiert, der dem Vermögenswert zugeordnet ist.
- Vorrichtung nach Anspruch 5, wobei das AssetIdentifier-Element ein Element des DescriptorType-Typs ist und den Inhalt, ein @schemeIdUri-Attribut und ein @value-Attribut umfasst, wobei das @schemeIdUri-Attribut einen einheitlichen Betriebsmittel-Identifizierer, URI, spezifiziert, um ein Schema zu identifizieren, wobei entweder der Inhalt oder das @value-Attribut einen eindeutigen ID spezifiziert und wobei entweder der Inhalt oder das @value-Attribut spezifiziert, ob der Vermögenswert ein Hauptinhalt oder ein eingefügter Inhalt ist.
- Vorrichtung nach Anspruch 7, wobei der Prozessor ferner konfiguriert ist, eine Vermögenswert-Zeitachse basierend auf dem AssetIdentifier-Element zu bestimmen.
- Vorrichtung nach Anspruch 8, wobei der Prozessor ferner konfiguriert ist, einen Fortschrittsbalken des Vermögenswerts basierend auf der Vermögenswert-Zeitachse zu implementieren.
- Verfahren, das Folgendes umfasst:Empfangen einer Mediendarstellungsbeschreibung, MPD, eines dynamischen adaptiven "Streaming"-über-Hypertext-Übertragungsprotokolls, DASH, wobei die MPD ein AssetIdentifier-Element, das einem Zeitraum zugeordnet ist, umfasst, wobei das AssetIdentifier-Element spezifiziert, dass der Zeitraum zu einem bestimmten Vermögenswert gehört, und wobei der Vermögenswert ein Inhalt ist, der Medien und Metadaten zusammen mit den Rechten, den durch einen Inhaltsanbieter bereitgestellten Inhalt zu verwenden, enthält, und das AssetIdentifier-Element für jeden Vermögenswert eindeutig ist, (S610);wobei die MPD ferner ein TrickModeRestriction-Element umfasst, wobei das TrickModeRestriction-Element ein @minSpeed-Attribut und ein @maxSpeed-Attribut umfasst, wobei das @minSpeed-Attribut eine minimale zulässige Trickabspielgeschwindigkeit spezifiziert und wobei das @maxSpeed-Attribut eine maximale zulässige Trickabspielgeschwindigkeit spezifiziert;
undVerarbeiten der MPD (S620). - Verfahren nach Anspruch 10, wobei das erste Element ein @assetId-Attribut, ein @start-Attribut und ein @type-Attribut umfasst, wobei das @assetId-Attribut ein eindeutiger Identifizierer für den Vermögenswert ist, wobei das @start-Attribut einen Zeitpunkt auf einer Vermögenswert-Zeitachse spezifiziert, der einem Anfangszeitpunkt des Zeitraums, der dem Vermögenswert zugeordnet ist, entspricht, und wobei das @type-Attribut einen Typ des Inhalts definiert, der dem Vermögenswert zugeordnet ist.
- Verfahren nach Anspruch 10, das ferner Folgendes umfasst:Bestimmen eines einheitlichen Betriebsmittel-Lokalisierers, URL, der dem Vermögenswert zugeordnet ist;Anfordern eines Segments des Vermögenswerts, der dem URL zugeordnet ist;Empfangen des Segments; undMelden des Empfangs des Segments.
- Verfahren nach Anspruch 10, das ferner das Bestimmen einer Vermögenswert-Zeitachse basierend auf dem AssetIdentifier-Element umfasst.
- Verfahren nach Anspruch 13, das ferner Folgendes umfasst:Implementieren eines Fortschrittsbalkens des Vermögenswerts basierend auf der Vermögenswert-Zeitachse; undImplementieren einer Direktzugriffsfunktionalität auf die Vermögenswert-Zeitachse.
- Verfahren nach Anspruch 10, das ferner das Empfangen zusätzlicher Informationen über den Vermögenswert umfasst, wobei die zusätzlichen Informationen wenigstens eines von Titel, Zusammenfassung, Schauspieler, Schauspielerin, Bewertung, Trivia, Überblick, Daten sozialer Medien und Informationen über ein Produkt oder einen Dienst, das bzw. der beworben wird, sind.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16175872.7A EP3091711B1 (de) | 2012-07-09 | 2013-07-09 | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261669510P | 2012-07-09 | 2012-07-09 | |
US13/937,058 US10616297B2 (en) | 2012-07-09 | 2013-07-08 | Content-specific identification and timing behavior in dynamic adaptive streaming over hypertext transfer protocol |
PCT/US2013/049644 WO2014011584A1 (en) | 2012-07-09 | 2013-07-09 | Content-specific identification and timing behavior in dynamic adaptive streaming over hypertext transfer protocol |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP16175872.7A Division EP3091711B1 (de) | 2012-07-09 | 2013-07-09 | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll |
EP16175872.7A Division-Into EP3091711B1 (de) | 2012-07-09 | 2013-07-09 | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll |
Publications (2)
Publication Number | Publication Date |
---|---|
EP2853075A1 EP2853075A1 (de) | 2015-04-01 |
EP2853075B1 true EP2853075B1 (de) | 2016-10-26 |
Family
ID=49879384
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP16175872.7A Active EP3091711B1 (de) | 2012-07-09 | 2013-07-09 | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll |
EP13741931.3A Active EP2853075B1 (de) | 2012-07-09 | 2013-07-09 | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP16175872.7A Active EP3091711B1 (de) | 2012-07-09 | 2013-07-09 | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll |
Country Status (6)
Country | Link |
---|---|
US (1) | US10616297B2 (de) |
EP (2) | EP3091711B1 (de) |
JP (1) | JP6172688B2 (de) |
KR (1) | KR101611383B1 (de) |
CN (2) | CN104471914B (de) |
WO (1) | WO2014011584A1 (de) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6064249B2 (ja) | 2012-07-09 | 2017-01-25 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 動的適応ストリーミングオーバーハイパーテキスト転送プロトコルクライアント挙動フレームワークおよびセッション管理の実装 |
MX2015014412A (es) * | 2013-04-16 | 2016-02-16 | Lg Electronics Inc | Dispositivo de transmision de radiodifusion, dispositivo de recepcion de radiodifusion, metodo de operacion del dispositivo de transmision de radiodifusion y metodo de operacion de dispositivo de recepcion de radiodifusion. |
EP2819013B1 (de) * | 2013-06-24 | 2019-11-27 | Alcatel Lucent | Automatisierte Anpassung eines Codec |
CN105379294A (zh) * | 2013-07-15 | 2016-03-02 | 华为技术有限公司 | 基于超文本传输协议的动态自适应流媒体中的远程元素的即时性间接引用 |
WO2015081218A1 (en) | 2013-11-27 | 2015-06-04 | Interdigital Patent Holdings, Inc. | Media presentation description |
US9699229B2 (en) * | 2014-01-16 | 2017-07-04 | Qualcomm Incorporated | Robust live operation of dash |
EP2953313A1 (de) | 2014-06-05 | 2015-12-09 | Thomson Licensing | Verfahren zum Betreiben eines Zwischenspeichers entlang eines Übertragungsweges zwischen Client-Endgeräten und mindestens einem Server und entsprechender Zwischenspeicher |
US10033824B2 (en) * | 2014-06-30 | 2018-07-24 | Samsung Electronics Co., Ltd. | Cache manifest for efficient peer assisted streaming |
TW201618517A (zh) * | 2014-07-01 | 2016-05-16 | Vid衡器股份有限公司 | 藉由媒體播放器裝置在媒體串流中伺服器端通信期控制 |
GB2528039A (en) * | 2014-07-01 | 2016-01-13 | Canon Kk | Method for identifying objects across time periods and corresponding device |
US10565530B1 (en) * | 2014-09-29 | 2020-02-18 | Amazon Technologies, Inc. | Viewing segments of event media |
EP3249873B1 (de) * | 2015-02-15 | 2018-09-12 | Huawei Technologies Co., Ltd. | Medienpräsentationsführungsverfahren auf der grundlage von http-mediendatenstrom und zugehörige vorrichtung |
CN107534798A (zh) * | 2015-04-22 | 2018-01-02 | Lg 电子株式会社 | 广播信号发送设备、广播信号接收设备、广播信号发送方法和广播信号接收方法 |
CN117596232A (zh) * | 2016-05-25 | 2024-02-23 | 中兴通讯股份有限公司 | 流媒体快速启动方法、装置和系统 |
US10432690B1 (en) * | 2016-06-03 | 2019-10-01 | Amazon Technologies, Inc. | Manifest partitioning |
CN109640154B (zh) * | 2018-12-14 | 2019-09-10 | 苏州好玩友网络科技有限公司 | 网页弹幕显示方法、装置、设备及存储介质 |
US11461535B2 (en) * | 2020-05-27 | 2022-10-04 | Bank Of America Corporation | Video buffering for interactive videos using a markup language |
KR20240052834A (ko) * | 2021-10-01 | 2024-04-23 | 바이트댄스 아이엔씨 | 비디오 처리 방법, 장치 및 매체 |
US11799943B2 (en) | 2021-10-06 | 2023-10-24 | Tencent America LLC | Method and apparatus for supporting preroll and midroll during media streaming and playback |
US20230224557A1 (en) * | 2022-01-12 | 2023-07-13 | Tencent America LLC | Auxiliary mpds for mpeg dash to support prerolls, midrolls and endrolls with stacking properties |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7895634B2 (en) | 2002-11-15 | 2011-02-22 | Sony Corporation | Data processing method, data processing apparatus, and program and data recording medium therefor |
JP4518778B2 (ja) | 2002-11-15 | 2010-08-04 | ソニー株式会社 | 再生装置と再生方法とプログラムおよび記録媒体 |
US20050033700A1 (en) | 2003-08-04 | 2005-02-10 | Vogler Dean H. | Method and apparatus for creating and rendering an advertisement |
JP2007129500A (ja) | 2005-11-03 | 2007-05-24 | Usen Corp | Cm付コンテンツ視聴システム |
US9432433B2 (en) * | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US8798085B2 (en) * | 2006-06-20 | 2014-08-05 | Intel Corporation | Techniques to process network protocol units |
US20080066107A1 (en) | 2006-09-12 | 2008-03-13 | Google Inc. | Using Viewing Signals in Targeted Video Advertising |
US20090163281A1 (en) * | 2007-12-19 | 2009-06-25 | Feng Chi Wang | Handheld video player and optical storage disc with advertising data for use therewith |
EP2350988A4 (de) * | 2008-10-22 | 2015-11-18 | Newzoom Inc | System zur verwaltung und meldung von geschäftsinventar |
US8464325B2 (en) | 2009-01-26 | 2013-06-11 | Apple Inc. | Method and system for verifying entitlement to access content by URL validation |
CN102055773B (zh) * | 2009-11-09 | 2013-10-09 | 华为技术有限公司 | 实现基于http的流媒体业务的方法、系统和网络设备 |
KR101750048B1 (ko) * | 2009-11-13 | 2017-07-03 | 삼성전자주식회사 | 변속 재생 서비스 제공 방법 및 장치 |
KR101737084B1 (ko) * | 2009-12-07 | 2017-05-17 | 삼성전자주식회사 | 메인 콘텐트에 다른 콘텐트를 삽입하여 스트리밍하는 방법 및 장치 |
KR101802273B1 (ko) | 2010-03-05 | 2017-11-28 | 삼성전자주식회사 | 복수 개의 스트림으로 구성된 컨텐츠 파일 송수신 장치 및 방법 |
KR20110105710A (ko) | 2010-03-19 | 2011-09-27 | 삼성전자주식회사 | 복수의 챕터를 포함하는 콘텐트를 적응적으로 스트리밍하는 방법 및 장치 |
US9615119B2 (en) * | 2010-04-02 | 2017-04-04 | Samsung Electronics Co., Ltd. | Method and apparatus for providing timeshift service in digital broadcasting system and system thereof |
KR101768219B1 (ko) * | 2010-04-05 | 2017-08-14 | 삼성전자주식회사 | 방송시스템에서의 광고 삽입장치 및 방법 |
KR20120034550A (ko) | 2010-07-20 | 2012-04-12 | 한국전자통신연구원 | 스트리밍 컨텐츠 제공 장치 및 방법 |
KR101768222B1 (ko) * | 2010-07-20 | 2017-08-16 | 삼성전자주식회사 | 적응적 스트리밍 방식의 컨텐트 송수신 방법 및 장치 |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
KR20120060134A (ko) * | 2010-08-16 | 2012-06-11 | 삼성전자주식회사 | 광고 재생 방법 및 장치 |
US8677428B2 (en) | 2010-08-20 | 2014-03-18 | Disney Enterprises, Inc. | System and method for rule based dynamic server side streaming manifest files |
CN102137137B (zh) | 2010-09-17 | 2013-11-06 | 华为技术有限公司 | 基于http流的媒体内容动态插播方法、装置及系统 |
US9986009B2 (en) | 2010-10-06 | 2018-05-29 | Electronics And Telecommunications Research Institute | Apparatus and method for providing streaming content |
KR101206698B1 (ko) | 2010-10-06 | 2012-11-30 | 한국항공대학교산학협력단 | 스트리밍 콘텐츠 제공 장치 및 방법 |
CN103229186B (zh) | 2010-10-07 | 2016-04-20 | 三星电子株式会社 | 数字权利管理服务提供方法和设备 |
GB2486002A (en) * | 2010-11-30 | 2012-06-06 | Youview Tv Ltd | Media Content Provision |
US20120166667A1 (en) * | 2010-12-22 | 2012-06-28 | Edward Hall | Streaming media |
US9357275B2 (en) * | 2011-09-06 | 2016-05-31 | Qualcomm Incorporated | Network streaming of coded video data |
US9843844B2 (en) * | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
US9401968B2 (en) * | 2012-01-20 | 2016-07-26 | Nokia Techologies Oy | Method and apparatus for enabling pre-fetching of media |
-
2013
- 2013-07-08 US US13/937,058 patent/US10616297B2/en active Active
- 2013-07-09 KR KR1020157000599A patent/KR101611383B1/ko active IP Right Grant
- 2013-07-09 CN CN201380036135.7A patent/CN104471914B/zh active Active
- 2013-07-09 WO PCT/US2013/049644 patent/WO2014011584A1/en active Application Filing
- 2013-07-09 EP EP16175872.7A patent/EP3091711B1/de active Active
- 2013-07-09 EP EP13741931.3A patent/EP2853075B1/de active Active
- 2013-07-09 JP JP2015521707A patent/JP6172688B2/ja active Active
- 2013-07-09 CN CN201710959173.XA patent/CN107835156B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104471914A (zh) | 2015-03-25 |
CN107835156B (zh) | 2021-04-20 |
US10616297B2 (en) | 2020-04-07 |
EP3091711B1 (de) | 2019-01-30 |
CN104471914B (zh) | 2017-11-28 |
KR20150023700A (ko) | 2015-03-05 |
JP2015527816A (ja) | 2015-09-17 |
JP6172688B2 (ja) | 2017-08-02 |
EP3091711A1 (de) | 2016-11-09 |
KR101611383B1 (ko) | 2016-04-11 |
CN107835156A (zh) | 2018-03-23 |
US20140013003A1 (en) | 2014-01-09 |
EP2853075A1 (de) | 2015-04-01 |
WO2014011584A1 (en) | 2014-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2853075B1 (de) | Inhaltsspezifische identifizierung und synchronisationsverhalten in dynamischem adaptivem streaming über ein hypertext-übertragungsprotokoll | |
US10313758B2 (en) | Scheduling video content from multiple sources for presentation via a streaming video channel | |
US10270829B2 (en) | Specifying client behavior and sessions in dynamic adaptive streaming over hypertext transfer protocol (DASH) | |
US11321391B2 (en) | Selecting and sharing content | |
KR101685515B1 (ko) | 다운로딩 및 스트리밍을 위한 저장 및 전송 콘텐츠 | |
US9804668B2 (en) | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution | |
US9591361B2 (en) | Streaming of multimedia data from multiple sources | |
US10591984B2 (en) | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution | |
US20170332113A1 (en) | System for measuring video playback events using a server generated manifest/playlist | |
US20120116883A1 (en) | Methods and systems for use in incorporating targeted advertising into multimedia content streams | |
US20200280760A1 (en) | Capturing border metadata while recording content | |
KR20200135324A (ko) | 정보 처리 장치, 정보 처리 장치 및 프로그램 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20141222 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
17Q | First examination report despatched |
Effective date: 20150604 |
|
DAX | Request for extension of the european patent (deleted) | ||
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
INTG | Intention to grant announced |
Effective date: 20160504 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 840722 Country of ref document: AT Kind code of ref document: T Effective date: 20161115 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602013013237 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20161026 |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 840722 Country of ref document: AT Kind code of ref document: T Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170126 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170127 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170226 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170227 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: BE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 5 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602013013237 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170126 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20170727 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: MM4A |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170731 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170731 Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170709 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 6 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170709 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170709 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20130709 Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161026 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Ref document number: 602013013237 Country of ref document: DE Free format text: PREVIOUS MAIN CLASS: H04L0029060000 Ipc: H04L0065000000 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20240530 Year of fee payment: 12 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20240611 Year of fee payment: 12 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240604 Year of fee payment: 12 |