A sending method, receiving method and interaction method of media resources based on an HTTP server

By generating and transmitting media description information files on an HTTP server, the problem of SMT inaccessibility was solved, enabling dynamic acquisition and adaptive transmission of media content and improving the user experience.

CN119520491BActive Publication Date: 2026-02-17SHANGHAI JIAOTONG UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202311067040.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-23
Publication Date
2026-02-17
Estimated Expiration
2043-08-23

AI Technical Summary

Technical Problem

The next-generation media transport protocol (SMT) cannot access media description information on the HTTP server, making it impossible to dynamically acquire and adaptively transport media content.

Method used

A media description information file corresponding to a general encapsulation unit of media resources is generated on the HTTP server. This file contains media consumption signaling information. The resources of the general encapsulation unit requested by the user are transmitted via the HTTP protocol. Data interaction between the client and the server is realized using the PA message description file.

Benefits of technology

It enables dynamic acquisition and adaptive transmission of media content based on an HTTP server, improving user experience and meeting the needs of CDN services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119520491B_ABST
    Figure CN119520491B_ABST
Patent Text Reader

Abstract

This invention relates to the field of multimedia content technology, and more particularly to a method for sending and receiving media resources based on HTTP. The invention proposes a method for sending media resources based on an HTTP server: generating media description information files corresponding to all common encapsulation units in the media resource on the HTTP server, wherein the media description information files contain media consumption signaling information corresponding to each common encapsulation unit; selecting and transmitting the media description information files corresponding to the common encapsulation units requested by the user from the HTTP server according to received first instruction information; and selecting and transmitting the resources of the common encapsulation units requested by the user from the HTTP server according to received second instruction information. This invention implements HTTP service based on a new generation media transmission protocol, and utilizes media description information files to describe and interact with media consumption information, thereby achieving dynamic acquisition and adaptive transmission of media content.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of multimedia content technology, and in particular to a method for transmitting media resources based on HTTP. Background Technology

[0002] With the rapid development of the internet, the demand for network transmission is constantly increasing, especially the volume of media content such as video and audio. However, traditional network architectures face bottlenecks and challenges in handling large-scale media content transmission, such as network congestion, high latency, and insufficient bandwidth. These problems directly lead to a decline in user experience, especially under high load. To overcome these challenges, Content Delivery Network (CDN) technology emerged. The concept of CDN was first proposed in the 1990s when the number of internet users began to grow rapidly, but network infrastructure was not yet perfect, so users often encountered latency and congestion when accessing websites. The main goal of CDN is to quickly transmit content from the origin server to servers closer to the user by deploying distributed servers globally, thereby reducing the distance and time of data transmission and improving access speed and response time.

[0003] To adapt to CDN architecture, protocols such as Dynamic Adaptive Streaming over HTTP (DASH) and HTTP Live Streaming (HLS) have undertaken a series of related efforts to achieve more efficient media content delivery and data interaction between clients and CDNs. DASH introduced the concept of Media Presentation Description (MPD), a description file that provides details such as the structure, segmentation information, and bitrate adaptation strategies of the media content. Through the MPD file, clients can select appropriate bitrates and media segments based on current network conditions and device capabilities to ensure a smooth media playback experience. This design allows clients to dynamically select suitable content on the CDN, thereby reducing network congestion and improving user experience. Similarly, the HLS protocol employs a similar mechanism, introducing the concepts of Media Playlist and Media Segment. In this way, HLS allows clients to automatically switch between different bitrates and retrieve media segments from different servers based on network conditions, thus achieving high-quality media playback.

[0004] In recent years, next-generation media transport protocols (Smart Media Transport, SMT; MPEG Media Transport, MMT) have made rapid progress in technological evolution and innovation, attracting widespread attention from academia and industry. Compared to traditional DASH and HLS, next-generation media transport protocols possess unique advantages in several aspects. They not only support diverse media types but also introduce fine-grained functional partitioning, making the protocol's functional modules more modular and easier to maintain, allowing for configuration and combination according to different scenarios. However, currently, next-generation media transport protocols do not yet support media description access required for CDN services like DASH and HLS. Summary of the Invention

[0005] To address the current issue that SMT cannot be accessed on HTTP servers, this invention provides a method for sending, receiving, and interacting with media resources based on an HTTP server.

[0006] The technical solution adopted by this invention to solve the technical problem is as follows:

[0007] A method for sending media resources based on an HTTP server, the method comprising:

[0008] On the HTTP server, a media description information file is generated corresponding to all the common encapsulation units in the media resource, wherein the media description information file contains media consumption signaling information corresponding to each common encapsulation unit;

[0009] Based on the received first instruction information, the media description information file corresponding to the general encapsulation unit requested by the user is selected from the HTTP server and transmitted.

[0010] Based on the received second instruction information, the resources of the general encapsulation unit requested by the user are selected from the HTTP server and transmitted.

[0011] Preferably, the media description information file includes at least one of the following signaling structures:

[0012] Signaling structure used to indicate resource identifiers for media resources; and / or

[0013] Signaling structures used to indicate the type of each media resource; and / or

[0014] Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or

[0015] Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or

[0016] A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

[0017] Preferably, the method for selecting the resources of the general-purpose encapsulation unit requested by the user includes:

[0018] Based on the HTTP protocol, resources under the URL of the general encapsulation unit requested by the user are selected from the HTTP server; wherein, the URL corresponding to the general encapsulation unit is obtained by the receiving end based on the URL template, sequence number or consumption presentation time of the general encapsulation unit in the media consumption signaling.

[0019] Preferably, the first indication information is used to indicate a user's request for a media description information file;

[0020] The second indication information is determined based on the media consumption signaling information corresponding to each general encapsulation unit, and is used to indicate the user's request for resources of the general encapsulation unit;

[0021] The first indication information and the second indication information can be distinguished based on the parameters they contain.

[0022] A method for receiving media resources based on an HTTP server, the method comprising:

[0023] The receiving end obtains the media description information file corresponding to all general encapsulation units in the media resource from the HTTP server based on the first indication information;

[0024] The receiving end parses the media description information file to obtain the media consumption signaling information corresponding to each general encapsulation unit;

[0025] The receiving end determines the second indication information based on the media consumption signaling information in order to obtain the resources of the general encapsulation unit from the HTTP server;

[0026] Decode and present the resources of the general encapsulation unit.

[0027] Preferably, the media description information file includes at least one of the following signaling structures:

[0028] Signaling structure used to indicate resource identifiers for media resources; and / or

[0029] Signaling structures used to indicate the type of each media resource; and / or

[0030] Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or

[0031] Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or

[0032] A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

[0033] Preferably, the method for requesting the desired general encapsulation unit resources from the HTTP server includes:

[0034] Based on the media consumption signaling information, the URL template, serial number or consumption presentation time corresponding to each general encapsulation unit is obtained;

[0035] The URL of the generic encapsulation unit that the user wants to obtain is determined based on the URL template, serial number, or consumption presentation time, and the resource corresponding to the generic encapsulation unit is requested from the HTTP server based on the URL.

[0036] Preferably, the first indication information is used to indicate a user's request for a media description information file;

[0037] The second indication information is determined based on the media consumption signaling information corresponding to each general encapsulation unit, and is used to indicate the user's request for resources of the general encapsulation unit;

[0038] The first indication information and the second indication information can be distinguished based on the parameters they contain.

[0039] An interactive method for media resources based on an HTTP server, the interactive method comprising:

[0040] On the HTTP server, generate media description information files corresponding to all common encapsulation units in the media resources;

[0041] The receiving end sends a first indication message to the HTTP server to request the media description information file;

[0042] The HTTP server selects and transmits the corresponding media description information file to the receiving end;

[0043] The receiving end receives and parses the media description information file to obtain the media consumption signaling information corresponding to each general encapsulation unit. Based on the media consumption signaling information, the receiving end determines and sends the second indication information to request the resources of the general encapsulation unit that it wants to obtain.

[0044] The HTTP server receives the second instruction information, locates and transmits the resources of the general encapsulation unit that the user wants to obtain from the HTTP server.

[0045] The receiving end receives, decodes, and presents the resources of the general encapsulation unit.

[0046] Preferably, the media description information file includes at least one of the following signaling structures:

[0047] Signaling structure used to indicate resource identifiers for media resources; and / or

[0048] Signaling structures used to indicate the type of each media resource; and / or

[0049] Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or

[0050] Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or

[0051] A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

[0052] Preferably, the method for requesting the resources of the desired general-purpose packaging unit includes:

[0053] Based on the media consumption signaling information, the URL template, serial number or consumption presentation time corresponding to each general encapsulation unit is obtained;

[0054] Generate the URL of the generic encapsulation unit that the user wants to obtain based on the URL template, serial number, or consumption presentation time, and request the resource corresponding to the generic encapsulation unit from the HTTP server based on the URL.

[0055] The beneficial effects of this invention are as follows: This invention implements CDN or HTTP services based on a new generation of media transmission protocols, and utilizes media description information files to describe and interact with media consumption information. This media description information file allows data exchange between the client and the HTTP server to achieve dynamic acquisition and adaptive transmission of media content. Attached Figure Description

[0056] Figure 1 The diagram shown is a flowchart of a sending method according to an embodiment of the present invention;

[0057] Figure 2 The diagram shown is a schematic representation of an embodiment of a media description information file according to the present invention.

[0058] Figure 3 The diagram shown is a flowchart of a receiving method according to an embodiment of the present invention;

[0059] Figure 4 The diagram shown is a flowchart of an interaction method according to an embodiment of the present invention. Detailed Implementation

[0060] The present invention will be further described below with reference to the accompanying drawings and specific embodiments, but this is not intended to limit the scope of the invention.

[0061] To gain a deeper understanding of the technical solution of this invention, relevant technical terms will first be explained. A media resource (Asset) refers to any multimedia data used to establish multimedia presentation; it is a logical collection of content fragments that encapsulate encoded media data and have the same media resource identifier. Content fragments are named Common Encapsulation Units (CEUs), and the encoded media data they contain can be temporal or non-temporal. Temporal data refers to encoded media data with an inherent timeline, requiring data units to be decoded and presented synchronously at specified times, such as audio and video content. Conversely, non-temporal data refers to data types that do not have an inherent timeline when decoding and presenting media content, such as text and image information. Furthermore, within the same media resource, CEUs containing temporal data cannot overlap in presentation time.

[0062] In current SMT / MMT protocols, PA messages (media resource information files) are used to describe the consumption signaling related to media resources for transmitting media content. SMTP / MMTP data packets containing PA messages or CEU content are transmitted via UDP. However, CDN services or HTTP services do not support retrieving this consumption signaling based on the SMT / MMT protocol, thus preventing the acquisition of CEU resources. Therefore, to solve this problem, this invention proposes a method for sending media resources based on the HTTP protocol. This method utilizes PA message description files to store relevant signaling information of general encapsulation units / media processing units, allowing the client to parse these PA message description files. Based on the parsed information, the client can obtain the URL link of the desired CEU resource and finally request it from the HTTP server using that URL link.

[0063] like Figure 1 As shown, this invention proposes a method for sending media resources based on an HTTP server, the method comprising:

[0064] On the HTTP server, media description information files are generated corresponding to all common encapsulation units in the media resource. The media description information files contain media consumption signaling information corresponding to each common encapsulation unit.

[0065] Based on the received first instruction information, select and transmit the media description information file corresponding to the general encapsulation unit requested by the user from the HTTP server;

[0066] Based on the received second instruction information, the resources of the general encapsulation unit requested by the user are selected from the HTTP server and transmitted.

[0067] This embodiment implements CDN or HTTP services based on next-generation media transmission protocols, utilizing media description information files to describe and interact with media consumption information. This media description information file allows data exchange between the client and the HTTP server, thereby enabling dynamic acquisition and adaptive transmission of media content.

[0068] In one embodiment of the present invention, a CDN server can be used instead of an HTTP server. Therefore, any HTTP server mentioned herein can be implemented using a CDN server or other servers capable of implementing the HTTP protocol; each server will not be described in detail here.

[0069] The following is a detailed description of an embodiment of the above-described sending method: A method for sending media resources based on an HTTP server, the method comprising:

[0070] A media description information file is generated on the HTTP server, corresponding to all common encapsulation units in the media resource. The media description information file contains media consumption signaling information corresponding to each common encapsulation unit.

[0071] Specifically, the Media Description Information (PA) file, or PA message description file, is stored in binary form on the HTTP server, and the resources corresponding to the CEU are also stored on the HTTP server. The design of the PA file is based on the PA message signaling defined within the SMT / MMT protocol, constructing a structured description mechanism to present the media consumption signaling information corresponding to media resources. The media consumption signaling describes the signaling messages related to SMT data packet consumption. A PA message description file contains a complete PA message, and a PA message contains a PA table, an MP table, and a Media Presentation Layer (MPL) information table. The PA table contains the signaling tables of all other tables, and each signaling table carries information related to the media data packets, such as the composition, storage location, type, internal media resource attributes, and presentation information description of the media resources. The MP table is used to transmit other messages related to processing media data packets.

[0072] PA messages use the HTTP protocol as a carrier to facilitate the effective integration of Content Delivery Network (CDN) services or HTTP services. Theoretically, HTTP protocol transmission can cover all signaling carried in the PA message description file. It is worth noting that this implementation primarily demonstrates an example based on the SMT protocol, but a similar PA message signaling structure exists in the MMT protocol. Unless otherwise specified, the same PA message description file can be used in MMT scenarios.

[0073] In the aforementioned generation steps, the server generates PA message description files corresponding to all CEUs in the media resources, and stores the PA message description files and all CEUs of the assets in an HTTP server (such as a CDN server). Specifically, the syntax of the PA message is shown in Table 1. The PA message contains multiple tables, such as the PA table and the MP table.

[0074] Table 1 PA Message Syntax

[0075]

[0076] Syntax definition:

[0077] message_id: Indicates the identifier of the PA message.

[0078] version: Indicates the version of the PA message.

[0079] length: Indicates the length of the PA message in bytes. This length is calculated from the beginning of the next field to the last byte of the PA message.

[0080] number_of_tables: Indicates the number of signaling tables contained in the PA message.

[0081] table_id: Indicates the table identifier contained in the PA message. This is a copy of the table_id field contained in the payload of the PA message.

[0082] table_version: Indicates the version of the table contained in the PA message.

[0083] table_length: A copy of the table length field contained in the payload of the PA message.

[0084] `table()`: An SMTP signaling table entity. This table appears in the payload in the same order as the `table_id` in the extended domain. A PA table can be used as an instance of `table()`.

[0085] In the transmission method, based on the received first instruction information, the media description information file corresponding to the general encapsulation unit requested by the user is selected from the HTTP server and transmitted.

[0086] In one embodiment, the receiving end sends a first indication message to the HTTP server based on the HTTP protocol, requesting the media description information file (PA message description file) to which the generic encapsulation unit belongs. After receiving the indication message containing the URL, the HTTP server responds to the URL and sends the corresponding media description information file to the receiving end.

[0087] In another embodiment, the first instruction information is used to instruct the user to request a media description information file; the first instruction information may be an instruction message in URL format, such as "https: / / example.com / pa.bin"; or it may be other formats that can obtain media description information files based on the HTTP protocol, which are not limited here.

[0088] In the transmission method, based on the received second indication information, the resource of the general encapsulation unit requested by the user is selected from the HTTP server and transmitted. After the receiving end requests the corresponding PA message description file from the server based on the first indication information, it parses the PA message in the PA message description file to obtain the PA table as shown in Table 2 below. Other signaling tables, such as the MP table, can be parsed from the PA table. The MP table contains information about media data packets containing all media resources. Based on the information of the signaling table related to the CEU in the parsed MP table, the receiving end determines and sends the second indication information to the server to obtain the desired CEU resource.

[0089] Syntax of Table 2PA

[0090]

[0091]

[0092] Syntax definition:

[0093] table_id: The identifier of table PA.

[0094] version: The version in the PA table. Once it is received, the newer version overwrites the old one.

[0095] length: Contains the length of the PA table in bytes, from the next field up to the last byte of the MP table. A value of '0' is invalid in this field.

[0096] number_of_table: The number of tables that provide information for the current PA table.

[0097] signalling_information_table_id: The identifier of the table that provides information for the current PA table.

[0098] signalling_information_table_version: The version of the table that provides information for the current PA table.

[0099] SMT_general_location_info: When SMT_general_location_info is in a location, it provides information about the location of the resource; when SMT_general_location_info is in an alternative_location, it provides information about the location of alternative resources.

[0100] alternative_location_flag: A value of '1' indicates that the receiving entity can obtain the address of the alternative resource.

[0101] location_type: Indicates the type of location information for the SMT data stream.

[0102] A media resource asset is a logical collection of content fragments that encapsulate encoded media data and share the same media resource identifier. These content fragments typically refer to Common Encapsulation Units (CEUs). The resource ID syntax element groups in Table 3 provide the identifiers for media resource assets.

[0103] Table 3 Resource ID Syntax

[0104]

[0105] Syntax definition:

[0106] asset_id_scheme: Provides an asset identifier mechanism; specific values ​​are yet to be defined.

[0107] asset_id_length: Provides the length in bytes of asset_id.

[0108] asset_id_byte: One byte in asset_id.

[0109] As mentioned above, the PA table in Table 2 contains the relevant signaling information for the MP table in Table 4 below. A complete MP table contains information about media data packets containing all media resources. The syntax of the MP table is as follows:

[0110] Table 4. Syntax of MP Table

[0111]

[0112]

[0113] Syntax definition:

[0114] `table_id`: The identifier for the MP table. A complete MP table and its subsets should use different table identifiers. The subset number of the MP table is implicitly represented by this field.

[0115] version: The version in the MP table. Once it is received, the newer version overwrites the old one.

[0116] length: Contains the length of the MP table in bytes, from the next field up to the last byte of the MP table. A value of '0' is invalid in this field.

[0117] MP_table_mode: This indicates the mode in which MP table subsets are processed when they are used.

[0118] asset_id: The resource identifier for the media resource.

[0119] asset_type: The type of media resource. This is described in the four-character encoding (“4CC”) type registered on MP4REG (http: / / www.mp4ra.org).

[0120] asset_size: Describes the size of the media resource.

[0121] MP_table_descriptors: Provides descriptors for MP tables.

[0122] MP_table_descriptors_length: The length of the descriptor syntax loop.

[0123] MP_table_descriptors_byte: Represents a byte in the descriptor cycle.

[0124] number_of_assets: Indicates the number of resources for which information is provided by the MP table.

[0125] packet_id: Indicates the identifier of the SMTP session in the SMTP packet header.

[0126] asset_clock_relation_id: Provides a clock relation identifier for this media resource.

[0127] asset_timescale_flag: Indicates whether "asset-timescale" information is provided. If this flag is set to '1', the resource time scale field is included; if this flag is set to '0', the resource time scale is 90000 (90kHz).

[0128] asset_timescale: Provides unit time information for all timestamps, which are used to represent the number of units of a resource within one second.

[0129] `location_count`: The number of resource location information provided. Set to '1' when a resource is delivered via a single location. Instead of setting to '1', when distribution is complete and the microprocessor units contained in an asset have been delivered via multiple channels. When a resource is sent to multiple locations, the SMTP receiving entity should receive all CEUs for that resource from all indicated locations.

[0130] SMT_general_location_info: Provides information about the location of resources.

[0131] asset_descriptors_length: The number of bytes is calculated starting from the next field and ending at the end of the resource descriptor statement loop.

[0132] asset_descriptors_byte: A byte in the resource descriptor.

[0133] The MP table contains multiple media assets, each of which can be identified using the Identifier_mapping in Table 5. The Identifier_mapping syntax group element provides a mapping between content identifiers and SMTP packet substreams. An SMTP packet substream refers to a subset of SMTP packet streams that share the same packet_id. Content identifiers can be provided in different formats, such as media resource identifiers, Uniform Resource Locators (URLs), etc.

[0134] In SMT signaling transmission under the HTTP protocol, the identifier_type in Identifier_mapping is generally set to 0x00, indicating that the asset_id structure in Table 3 is used to identify the asset. The asset_type can be used to indicate the type of each media resource asset, such as audio, video, and the corresponding encoding method.

[0135] The identifier mapping syntax is shown in the table below:

[0136] Table 5 Identifier Mapping Syntax

[0137]

[0138] Syntax definition:

[0139] identifier_type: Occupies 8 bits and indicates the type of identifier used to map packet_id. See Table 6 for allowed mapping types:

[0140] Table 6 allows for the mapping of identifier types.

[0141]

[0142]

[0143] Furthermore, the SMT_general_location_info field in the MP table represents general location information for smart media, used to provide location information for the payload data of a specified data item. It indicates the data type and transmission method carried in the data stream, such as one-way broadcast network, IP network, and corresponding port number. In other words, the URL template for the CEU under each Asset can be defined through the SMT_general_location_info field in the MP table.

[0144] In one embodiment of the present invention, during SMT signaling transmission under the HTTP protocol, the location_type value of '0x05' in the SMT_general_location_info table is defined as a Uniform Resource Locator (URL), meaning that the user can obtain the specific storage location of the CEU on the HTTP server based on this URL. The syntax of SMT_general_location_info is shown in Table 7 below:

[0145] Table 7 SMT_general_location_info Syntax

[0146]

[0147]

[0148] The meanings of some fields in the syntax structure are as follows:

[0149] location_type: The location type field indicates the location information of the SMT data stream. Some of its values ​​are shown in Table 8 below.

[0150] Table 8 Values ​​of location_type

[0151]

[0152] URL_length: The length of the URL in bytes. Terminating null bytes should not be counted. SMTP is an application layer protocol, similar to HTTP, and can use Uniform Resource Locators (URLs) to fetch data.

[0153] URL_byte: One byte of URL data. Terminating null bytes should not be counted.

[0154] In one embodiment of the present invention, after parsing the PA message description file, the receiving end can obtain the specific URL based on the URL template in SMT_general_location_info and the ceu_sequence_number corresponding to the requested CEU. The user can then use this URL to determine the second instruction information to request the required CEU resource from the server. Specifically, each Asset contains multiple CEU resources, each CEU represents a segment of audio or video data, and the sequence number of each CEU can be identified by ceu_sequence_number.

[0155] To meet the demands of personalized consumption, media resources can be categorized based on characteristics such as content type and importance. Therefore, the MUR (media unit relationship) descriptor was proposed. This invention utilizes the MUR_descriptor shown in Table 9 to provide media resource categorization information, which includes the sequence number of each CEU under each categorization, denoted by ceu_sequence_number. Clients can request the corresponding CEU resources from the HTTP server based on this descriptor and their own needs.

[0156] Table 9 MUR Descriptor Syntax

[0157]

[0158]

[0159] descriptor_tag: Identifier used to identify the type of descriptor.

[0160] descriptor_length: The length of the identifier in bytes.

[0161] edit_id: A flag indicating the rating of a media resource.

[0162] edit_id_number: The number of CEUs contained under this media resource category.

[0163] ceu_sequence_number: The sequence number of the CEU, indicating the CEU corresponding to the edit id flag.

[0164] In one embodiment, if a user wants to consume all CEU resources under a certain media category described by MUR_descriptor, the client can obtain the URL of each CEU based on all CEU_sequence_numbers and URL templates under that category, and then request CEU resources from the server in sequence through the second instruction information. That is, each time the second instruction information is sent, the corresponding CEU resource can be requested and obtained.

[0165] In another embodiment, for a CEU that a user wants to obtain, the presentation time of the first AU of the corresponding CEU can be provided using the CEU timestamp descriptor. Specifically, the presentation time of the first AU of each CEU and the ceu_sequence_number can be determined according to the CEU_timestamp_descriptor in Table 10 below. For example, when a user wants to consume CEU resources with presentation times within a certain time period, the user can obtain the URL of each CEU based on all the ceu_sequence_numbers within that time period and the URL template defined in SMT_general_location_info, and determine the second indication information based on the URL to request the corresponding CEU resources from the server in sequence.

[0166] Table 10 CEU Timestamp Descriptor Syntax

[0167]

[0168] descriptor_tag: Identifier used to identify the type of descriptor.

[0169] descriptor_length: The length of the identifier in bytes.

[0170] ceu_sequence_number: Represents the sequence number of the CEU corresponding to the descriptor.

[0171] ceu_presentation_time: Specifies the presentation time of the first AU of the specified CEU, expressed in 64-bit NTP timestamp format.

[0172] In one embodiment, based on Tables 1-10 above, a media description information file is proposed, which includes at least one of the following signaling structures:

[0173] Signaling structure used to indicate resource identifiers for media resources; and / or

[0174] Signaling structures used to indicate the type of each media resource; and / or

[0175] Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or

[0176] Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or

[0177] A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

[0178] Specifically, the PA information description file may include the signaling structures defined in Table 11 below. Specific descriptions of each signaling structure have been listed as examples in Tables 1-10 above, but are not intended to be the only limitation of this invention.

[0179] Table 11 Main Signaling Structures under HTTP Protocol

[0180]

[0181] In one embodiment, a method for selecting resources for a general encapsulation unit (CEU) requested by a user includes: selecting resources from an HTTP server that correspond to the URL of the CEU requested by the user, based on the HTTP protocol; wherein the URL corresponding to the CEU is obtained by the receiving end based on the URL template and sequence number corresponding to the CEU in the media consumption signaling. For example, when the URL template in the SMT_general_location_info syntax is "ceu-%08d.mp4" or "http: / / example.com / ceu-%08d.mp4", then the URLs corresponding to the CEU with ceu_sequence_number 155 are "ceu-00000155.mp4" or "http: / / example.com / ceu-00000155.mp4". The client can then determine second indication information based on this URL to request the corresponding CEU resource from the server. After receiving the second indication information, the server responds with the URL-formatted indication information, searches for, and sends the corresponding CEU resource to the client.

[0182] In another embodiment, the method for selecting resources of a general encapsulation unit requested by the user includes: selecting resources from an HTTP server that correspond to the URL of the general encapsulation unit requested by the user, based on the HTTP protocol; wherein, the URL corresponding to the general encapsulation unit is obtained by the receiving end based on the URL template, sequence number, or consumption presentation time corresponding to the general encapsulation unit in the media consumption signaling. For example, the ceu_sequence_number of the required CEU can be determined based on the CEU_timestamp_descriptor. When the user wants to consume CEU resources with a presentation time within a certain time period, the URL of each CEU can be determined based on all ceu_sequence_numbers within that time period and the URL template defined in SMT_general_location_info. For the method of requesting to obtain multiple CEUs, the receiving end determines a second indication information in URL format for each URL, requests the corresponding CEU resources from the server respectively, and the server responds to the URL indication information after receiving each second indication information, and sends the corresponding CEU resources to the client respectively. For example, after the receiving end sends the first second indication message, the server responds to the indication message and sends the corresponding CEU resource to the receiving end; then, the receiving end continues to send the next second indication message to the server to request the next CEU resource in turn.

[0183] Figure 2 One embodiment is illustrated where the receiving end receives a PA message description file for a media resource via an HTTP request. Based on the MP table stored in the PA message description file, the location information of the media resource, as well as key information such as the sequence number (ceu_sequence_number) and presentation time of the CEU in the asset, can be obtained. For example, if the receiving end requests a CEU with a ceu_sequence_number of 155, and the asset_location field conforms to the format tags defined in IEEE 1003.1-2008, i.e., following the %0[width]d format, then the URL of this CEU is obtained as "ceu-00000155.mp4" or "http: / / example.com / ceu-00000155.mp4". The receiving end can then send a request to the server based on this URL to request the corresponding CEU. Upon receiving the request, the HTTP server responds and returns the corresponding CEU.

[0184] In one embodiment of the present invention, the first indication information is used to indicate a user's request for a media description information file; the second indication information is determined based on the media consumption signaling information corresponding to each general encapsulation unit and is used to indicate a user's request for resources of the general encapsulation unit; wherein, the first indication information and the second indication information can be distinguished according to the parameters they contain.

[0185] Specifically, for a PA message description file request, the HTTP server will directly return the corresponding PA message description file using an HTTP response message. For a generic encapsulation unit request associated with a specific URL, the HTTP server will locate the corresponding CEU based on the requested URL and send the requested CEU to the user using an HTTP response message. In an HTTP service session, the user should first request the media description information file and then request the corresponding media encapsulation processing unit. Different request types can be distinguished based on the parameters contained in the request message. For example, "https: / / example.com / pa.bin" indicates the first indication information for requesting a PA message description file, and "https: / / example.com / ceu-00000155.mp4" indicates the second indication information for requesting CEU with sequence number 155. The first indication information contains "pa," indicating a request for a PA message description file; the second indication information contains "ceu," indicating a request for a CEU resource, thus distinguishing between different types of request messages. It should be noted that this embodiment uses "pa" and "ceu" to distinguish different types of request messages. This is just one specific example and does not represent the only method that can distinguish request messages of different types. Any other methods that can distinguish these two different types of request messages are included in the method of this embodiment, and will not be listed here.

[0186] The present invention also proposes, as follows Figure 3 The method shown is for receiving media resources based on an HTTP server. The receiving method includes:

[0187] The receiving end obtains the media description information file corresponding to all general encapsulation units in the media resource from the HTTP server based on the first indication information;

[0188] The receiving end parses the media description information file to obtain the media consumption signaling information corresponding to each general encapsulation unit;

[0189] The receiving end determines the second indication information based on the media consumption signaling information in order to obtain the resources of the general encapsulation unit from the HTTP server;

[0190] Decode and present the resources of the general-purpose encapsulation unit.

[0191] Specifically, in this media resource receiving method, the user first sends a first indication message to the server to obtain a PA message description file. Then, the PA message description file is parsed to obtain relevant signaling information for the general encapsulation unit / media processing unit. Finally, based on this signaling information and the second indication message, the user requests the corresponding CEU resource from the server, and then decodes and presents it. To implement HTTP services in next-generation media transmission protocols, this invention proposes a novel media description information format to support the description and interaction of media consumption information. This media description information will allow data exchange between the client and the HTTP server to achieve dynamic acquisition and adaptive transmission of media content.

[0192] The present invention also proposes an embodiment in which the media description information file includes at least one of the following signaling structures, each signaling structure corresponding to the main signaling structures under the HTTP protocol defined in Table 11, and the specific interpretation of each signaling structure is shown in Tables 1-10:

[0193] Signaling structure used to indicate resource identifiers for media resources; and / or

[0194] Signaling structures used to indicate the type of each media resource; and / or

[0195] Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or

[0196] Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or

[0197] A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

[0198] In another embodiment, the method of requesting resources of a general encapsulation unit from an HTTP server includes: obtaining the URL template, sequence number, or consumption presentation time corresponding to each general encapsulation unit based on media consumption signaling information; determining the URL of the general encapsulation unit that the user wants to obtain based on the URL template, sequence number, or consumption presentation time; and requesting the resources corresponding to the general encapsulation unit from the HTTP server based on the URL.

[0199] Specifically, after parsing the PA message description file, the receiving end can determine the specific URL based on the URL template in SMT_general_location_info and the ceu_sequence_number or CEU_timestamp_descriptor corresponding to the requested CEU. The user can then use this URL to determine the second instruction information to request the required CEU resource from the server. More specifically, each Asset contains multiple CEU resources, each CEU representing a segment of audio or video data, and each CEU can be identified by its ceu_sequence_number.

[0200] In another embodiment, the first indication information is used to indicate a user's request for a media description information file; the second indication information is determined based on the media consumption signaling information corresponding to each general encapsulation unit and is used to indicate a user's request for resources of the general encapsulation unit; wherein, the first indication information and the second indication information can be distinguished according to the parameters they contain. The method for distinguishing the first indication information and the second indication information according to parameters in this receiving method is the same as the corresponding content in the sending method, and will not be described again here.

[0201] like Figure 4 The present invention also proposes an interactive method for media resources based on an HTTP server, the interactive method comprising:

[0202] Generate media description information files corresponding to all common encapsulation units in the media resource on the HTTP server;

[0203] The receiving end sends a first indication message to the HTTP server to request the media description information file;

[0204] The HTTP server selects and transmits the corresponding media description information file to the receiving end;

[0205] The receiving end receives and parses the media description information file to obtain the media consumption signaling information corresponding to each general encapsulation unit. Based on the media consumption signaling information, the receiving end determines and sends the second indication information to request the resources of the general encapsulation unit that it wants to obtain.

[0206] The HTTP server receives the second instruction information, locates and transmits the resources of the generic encapsulation unit that the user wants to obtain from the HTTP server.

[0207] This interaction method includes the processing methods of media resources on both the server and the receiving end. It mainly involves data exchange between the receiving end and the HTTP server using media description files to achieve dynamic acquisition and adaptive transmission of media content.

[0208] In another embodiment, in the interaction method, the media description information file includes at least one of the following signaling structures, each signaling structure corresponding to the main signaling structures under the HTTP protocol defined in Table 11. Specific interpretations of each signaling structure are shown in Tables 1-10:

[0209] Signaling structure used to indicate resource identifiers for media resources; and / or

[0210] Signaling structures used to indicate the type of each media resource; and / or

[0211] Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or

[0212] Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or

[0213] A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

[0214] In another embodiment, the method for requesting resources of a desired generic encapsulation unit includes: obtaining the URL template, sequence number, or consumption presentation time corresponding to each generic encapsulation unit based on the media consumption signaling information; generating the URL of the generic encapsulation unit that the user wants to obtain based on the URL template, sequence number, or consumption presentation time; and requesting the resources corresponding to the generic encapsulation unit from the HTTP server based on the URL. The method for obtaining resources of the generic encapsulation unit in the interaction method is the same as in the sending and receiving methods, and will not be described in detail here.

[0215] It should be noted that the PA table in this invention has the same structure definition as the MMT protocol. In specific implementation, the "SMT" character containing the "SMT" field needs to be replaced with the "MMT" character.

[0216] The above description is merely a preferred embodiment of the present invention and does not limit the implementation and protection scope of the present invention. Those skilled in the art should realize that any equivalent substitutions and obvious changes made based on the description and illustrations of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for transmitting media resources based on an HTTP server, characterized by, The sending method includes: On the HTTP server, a media description information file is generated corresponding to all the common encapsulation units in the media resource, wherein the media description information file contains media consumption signaling information corresponding to each common encapsulation unit; Based on the received first instruction information, the media description information file corresponding to the general encapsulation unit requested by the user is selected from the HTTP server and transmitted. Based on the received second instruction information, the resources of the general encapsulation unit requested by the user are selected from the HTTP server and transmitted. The method for selecting the resources of the general encapsulation unit requested by the user includes: selecting resources from the HTTP server that are under the URL of the general encapsulation unit requested by the user, based on the HTTP protocol; the URL corresponding to the general encapsulation unit is obtained by the receiving end based on the URL template and sequence number corresponding to the general encapsulation unit in the media consumption signaling.

2. The HTTP server-based media resource transmission method of claim 1, wherein, The media description information file includes at least one of the following signaling structures: Signaling structure used to indicate resource identifiers for media resources; and / or Signaling structures used to indicate the type of each media resource; and / or Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

3. The method for sending media resources based on an HTTP server according to claim 2, characterized in that, The location type field in the signaling structure used to indicate the URL template that specifies the common encapsulation unit in each media resource is set to '0x05', indicating that the location type of the CEU is a Uniform Resource Locator.

4. The method for sending media resources based on an HTTP server according to claim 1 or 2, characterized in that, The first instruction information is used to instruct the user to request a media description information file; The second indication information is determined based on the media consumption signaling information corresponding to each general encapsulation unit, and is used to indicate the user's request for resources of the general encapsulation unit; The first indication information and the second indication information can be distinguished based on the parameters they contain.

5. A method for receiving media resources based on an HTTP server, characterized by, The receiving method includes: The receiving end obtains the media description information file corresponding to all general encapsulation units in the media resource from the HTTP server based on the first indication information; The receiving end parses the media description information file to obtain the media consumption signaling information corresponding to each general encapsulation unit; The receiving end determines the second indication information based on the media consumption signaling information to obtain the resources of the general encapsulation unit from the HTTP server. The method for obtaining the resources of the general encapsulation unit includes: selecting resources from the HTTP server that are under the URL of the general encapsulation unit requested by the user; the URL corresponding to the general encapsulation unit is obtained by the receiving end based on the URL template and sequence number corresponding to the general encapsulation unit in the media consumption signaling. Decode and present the resources of the general encapsulation unit.

6. The method for receiving media resources based on an HTTP server according to claim 5, characterized in that, The media description information file includes at least one of the following signaling structures: Signaling structure used to indicate resource identifiers for media resources; and / or Signaling structures used to indicate the type of each media resource; and / or Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

7. The method for receiving media resources based on an HTTP server according to claim 6, characterized in that, The location type field in the signaling structure used to indicate the URL template that specifies the common encapsulation unit in each media resource is set to '0x05', indicating that the location type of the CEU is a Uniform Resource Locator.

8. The method for receiving media resources based on an HTTP server according to claim 5 or 6, characterized in that, The first instruction information is used to instruct the user to request a media description information file; The second indication information is determined based on the media consumption signaling information corresponding to each general encapsulation unit, and is used to indicate the user's request for resources of the general encapsulation unit; The first indication information and the second indication information can be distinguished based on the parameters they contain.

9. A method for interacting with media resources based on an HTTP server, characterized in that, The interaction method includes: On the HTTP server, generate media description information files corresponding to all common encapsulation units in the media resources; The receiving end sends a first indication message to the HTTP server to request the media description information file; The HTTP server selects and transmits the corresponding media description information file to the receiving end; The receiving end receives and parses the media description information file to obtain the media consumption signaling information corresponding to each general encapsulation unit. Based on the media consumption signaling information, the receiving end determines and sends the second indication information to request the resources of the general encapsulation unit that it wants to obtain. The HTTP server receives the second indication information, finds and transmits the resources of the generic encapsulation unit that the user wants to obtain from the HTTP server, including: selecting resources from the HTTP server under the URL of the generic encapsulation unit requested by the user based on the HTTP protocol; the URL corresponding to the generic encapsulation unit is obtained by the receiving end based on the URL template and sequence number corresponding to the generic encapsulation unit in the media consumption signaling; The receiving end receives, decodes, and presents the resources of the general encapsulation unit.

10. The method for interactive media resources based on an HTTP server according to claim 9, characterized in that, The media description information file includes at least one of the following signaling structures: Signaling structure used to indicate resource identifiers for media resources; and / or Signaling structures used to indicate the type of each media resource; and / or Signaling structures used to indicate the URL template that specifies the common encapsulation unit in each media resource; and / or Signaling structures used to provide hierarchical information for media resources, and the sequence numbers of each general encapsulation unit under each hierarchy; and / or A signaling structure used to provide the serial number of each general-purpose package unit and the presentation time of the first access unit of the corresponding general-purpose package unit.

11. The method for interactive media resources based on an HTTP server according to claim 10, characterized in that, The location type field in the signaling structure used to indicate the URL template that specifies the common encapsulation unit in each media resource is set to '0x05', indicating that the location type of the CEU is a Uniform Resource Locator.

Citation Information

Patent Citations

  • Method and apparatus for deliverying dash media file over MMT delivery system

    KR1020120139514A