WO2018133709A1 - Method, device and system for streaming media transmission, server and terminal - Google Patents

Method, device and system for streaming media transmission, server and terminal Download PDF

Info

Publication number
WO2018133709A1
WO2018133709A1 PCT/CN2018/071959 CN2018071959W WO2018133709A1 WO 2018133709 A1 WO2018133709 A1 WO 2018133709A1 CN 2018071959 W CN2018071959 W CN 2018071959W WO 2018133709 A1 WO2018133709 A1 WO 2018133709A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
information
fragment
slice
terminal
Prior art date
Application number
PCT/CN2018/071959
Other languages
French (fr)
Chinese (zh)
Inventor
王芳
黄成�
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2018133709A1 publication Critical patent/WO2018133709A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Definitions

  • the present application relates to the field of streaming media technologies, and in particular, to a streaming video transmission method, device, system, server, terminal, and storage medium for panoramic video.
  • Dynamic Adaptive Streaming over HTTP (DASH) based on HyperText Transfer Protocol (HTTP) is a dynamic adaptive streaming media transmission protocol provided by HTTP.
  • DASH protocol media content is sliced into segments, each of which is typically a few seconds long.
  • the terminal acquires these fragments one by one by sending an HTTP request to the server, and then decodes and plays each fragment.
  • the duration of the fragment is small, the number of HTTP requests is particularly large, and the transmission efficiency is very low.
  • the terminal can request the server to transmit multiple fragments in one HTTP request, thereby reducing the number of HTTP requests, and the server can also continuously send the contents of multiple fragments, thereby avoiding The slow start of the Transmission Control Protocol (TCP) improves the transmission efficiency.
  • TCP Transmission Control Protocol
  • a tile refers to a rectangular area in a frame that can be independently coded and decoded.
  • the terminal only needs to obtain the video data of the area corresponding to the current viewpoint of the user, and can perform decoding and playback.
  • multiple code rates can be further encoded so that the user can select the most suitable content according to the different view area, network bandwidth and own decoding capability. For example, for the viewpoint area, the content with the highest definition is selected, for the area around the viewpoint, the medium definition content is selected, and for the content of the blind spot area, the low definition content is selected.
  • the content fragments requested by the terminal may still exceed the network bandwidth, causing the user side to play the card.
  • the user can send a command to cancel the transmission of some content when the card is detected, when the network congestion occurs, the two-way communication will be affected, which may cause the server side to not receive the command to cancel the content transmission by the user in time.
  • the embodiment of the present application provides a streaming media transmission method, device, system, server, terminal, and storage medium, which can provide a better video experience for users under limited bandwidth.
  • the server sends the attribute information of each content fragment of the video content to the terminal;
  • the server receives the video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
  • the server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information;
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a uniform resource identifier (URI) of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the content fragment that is to be read is sent to the terminal according to the priority information, and includes:
  • the read content fragments are sent to the terminal in order of priority from high to low.
  • the method further includes:
  • Determining whether the target content fragment can be successfully sent to the terminal according to the actual transmission rate and/or network status information and the push completion time information.
  • the terminal acquires attribute information of each content fragment of the video content from the server;
  • the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and sends a video content request message to the server based on the content fragment to be received, where the video content request message includes each At least the following information of the content fragment to be received: fragment identification information, priority information, and push completion time information;
  • each content fragment sent by the server according to the priority information, wherein, in the process of receiving the content fragment by the terminal, if the server detects that the target content fragment cannot be sent to the terminal, canceling the target content Fragmentation reception.
  • the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, including:
  • the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
  • Viewpoint information Network bandwidth information, scheduling policy.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the terminal receiving, by the server, each content fragment sent according to the priority information includes:
  • the terminal receives each content fragment sent by the server in descending order of priority.
  • the streaming media transmission device provided by the embodiment of the present application is applied to the server side, and the device includes:
  • a sending unit configured to send attribute information of each content fragment of the video content to the terminal
  • a receiving unit configured to receive a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
  • the reading unit is configured to read the corresponding content fragment according to the fragment identification information
  • the sending unit is further configured to send the read content slice to the terminal according to the priority information
  • the canceling unit is configured to cancel the sending of the target content fragment when the target content fragment cannot be sent to the terminal according to the push completion time information in the process of sending the content fragment.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the sending unit is specifically configured to: send the read content fragments to the terminal in descending order of priority according to the priority information.
  • the device further includes:
  • a detecting unit configured to detect an actual transmission rate and/or network status information of the fragmented content during the sending of the content fragment; and determine, according to the actual transmission rate and/or network status information, and the push completion time information Whether the target content fragment can be successfully sent to the terminal.
  • a streaming media transmission device provided by another embodiment of the present application is applied to a terminal side, and the device includes:
  • a receiving unit configured to acquire attribute information of each content fragment of the video content from the server
  • a determining unit configured to determine a content slice to be received based on attribute information of each content slice of the video content
  • the sending unit is configured to send a video content request message to the server according to the content fragment to be received, where the video content request message includes at least the following information of each content fragment to be received: fragment identification information, priority information , push completion time information;
  • the receiving unit is further configured to receive, by the server, each content fragment sent according to the priority information, wherein, in the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal, Then the reception of the target content slice is cancelled.
  • the determining unit is specifically configured to determine the content fragment to be received based on the attribute information of each content fragment of the video content and combined with at least one of the following contents:
  • Viewpoint information Network bandwidth information, scheduling policy.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the receiving unit is specifically configured to: receive, by the server, each content fragment sent in descending order of priority.
  • the server provided by the embodiment of the present application includes a processor and a memory, where the computer stores executable instructions, and when the processor executes the computer executable instructions, the processor is configured to execute the stream. Media transfer method.
  • a terminal provided by an embodiment of the present application includes a processor and a memory, where the computer stores computer executable instructions, and when the processor executes the computer executable instructions, the processor is configured to execute the stream. Media transfer method.
  • the streaming media transmission system provided by the embodiment of the present application includes the server and the terminal.
  • the storage medium provided by the embodiment of the present application, wherein the storage medium stores computer executable instructions, and the computer executable instructions are used to execute the streaming media transmission method according to any one of the foregoing embodiments.
  • the server sends the attribute information of each content fragment of the video content to the terminal; the server receives the video content request message sent by the terminal, where the video content request message includes each content slice to be requested. At least the following information: the fragment identification information, the priority information, and the push completion time information; the server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the priority information according to the priority information. And transmitting, in the process of sending the content fragmentation by the server, canceling, according to the pushing completion time information, that the target content fragment cannot be sent to the terminal, canceling the sending of the target content fragment.
  • the server can cancel part of the content to be transmitted according to the priority in order to ensure the high-priority content fragmentation, and avoid the terminal side as much as possible. Play Caton.
  • FIG. 1 is a schematic flowchart 1 of a streaming media transmission method according to an embodiment of the present application
  • FIG. 2 is a schematic flowchart 2 of a streaming media transmission method according to an embodiment of the present application
  • FIG. 3 is a schematic diagram of a system according to an embodiment of the present application.
  • FIG. 4 is a schematic flowchart 3 of a streaming media transmission method according to an embodiment of the present application.
  • FIG. 5 is a schematic flowchart 4 of a streaming media transmission method according to an embodiment of the present application.
  • FIG. 6 is a schematic diagram 1 of video coding according to an embodiment of the present application.
  • FIG. 7 is a schematic diagram 1 of selecting a to-be-pushed slice according to a user point of view according to an embodiment of the present application
  • FIG. 8 is a second schematic diagram of video coding according to an embodiment of the present application.
  • FIG. 9 is a schematic diagram 2 of selecting a to-be-pushed slice according to a user point of view according to an embodiment of the present application.
  • FIG. 10 is a schematic diagram 3 of selecting a to-be-pushed slice according to a user point of view according to an embodiment of the present application
  • FIG. 11 is a first schematic structural diagram of a streaming media transmission device according to an embodiment of the present application.
  • FIG. 12 is a second schematic structural diagram of a streaming media transmission apparatus according to an embodiment of the present application.
  • the fragment identification information, the priority information, and the push completion time information of the content fragment to be transmitted are specified in the video content request message, so that the server cannot meet the terminal transmission time requirement.
  • part of the content to be transmitted is cancelled according to the priority, and the transmission of the high-priority content fragments is ensured, and the playback on the terminal side is avoided as much as possible.
  • FIG. 1 is a schematic flowchart 1 of a streaming media transmission method according to an embodiment of the present application.
  • the streaming media transmission method in this example is applied to a server side.
  • the streaming media transmission method includes the following steps:
  • Step 101 The server sends the attribute information of each content fragment of the video content to the terminal.
  • Step 102 The server receives a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information.
  • Step 103 The server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information; in the process of sending the content fragment by the server, according to the When the push completion time information detects that the target content slice cannot be transmitted to the terminal, the transmission of the target content slice is canceled.
  • the video content may be panoramic video content.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • content fragmentation refers to video data that supports independently decoded video regions at different time periods.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the content fragment that is to be read is sent to the terminal according to the priority information, and includes:
  • the read content fragments are sent to the terminal in order of priority from high to low.
  • the method further includes:
  • Determining whether the target content fragment can be successfully sent to the terminal according to the actual transmission rate and/or network status information and the push completion time information.
  • FIG. 2 is a schematic flowchart of a flow media transmission method according to an embodiment of the present disclosure.
  • the streaming media transmission method in this example is applied to a terminal side. As shown in FIG. 2, the streaming media transmission method includes the following steps:
  • Step 201 The terminal acquires attribute information of each content fragment of the video content from the server.
  • Step 202 The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and sends a video content request message to the server according to the content fragment to be received, the video content request message.
  • the information includes at least the following information of each content slice to be received: fragment identification information, priority information, and push completion time information.
  • Step 203 The terminal receives each content fragment sent by the server according to the priority information. In the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal, the terminal cancels the The reception of the target content slice.
  • the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, including:
  • the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
  • Viewpoint information Network bandwidth information, scheduling policy.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the terminal receiving, by the server, each content fragment sent according to the priority information includes:
  • the terminal receives each content fragment sent by the server in descending order of priority.
  • the streaming media transmission method in this embodiment of the present application is further described in detail below with reference to specific application scenarios.
  • FIG. 3 is a schematic diagram of a system of an embodiment of the present application.
  • the terminal obtains a description file of the video content from the server side, such as an MPD file in DASH, or an m3u8 file in HTTP Live Streaming (HLS, HTTP Live Streaming). Then, according to the slice content information described therein, as well as the current viewpoint of the user, etc., the slice content that needs to be acquired is determined. These sharded content are then prioritized according to the current viewing strategy. A push request is then sent to the server indicating which shards need to be sent, the priority information of the shards, and the time at which these shards need to be fully delivered to the terminal. See Figure 4 for the specific process.
  • the server side pushes the fragment according to the priority specified in the request.
  • the server calculates the push status of the current slice in real time to determine whether the current slice transfer can be completed in time. After completing the push of a slice, according to the push state of the current slice, it is judged whether the push of the next slice can be completed in time. If the push cannot be completed in time, the push of the corresponding slice is canceled. See Figure 5 for the specific process.
  • the content is encoded in a partitioned layer, as shown in FIG.
  • Different Tile partitions correspond to different perspectives/spaces.
  • Different layers correspond to different video qualities.
  • the base layer 401 is a panoramic video with the lowest resolution, and one frame corresponds to a complete panoramic image, that is, there is only one Tile partition, and the number is 4011.
  • Two enhancement layers are provided.
  • the first enhancement layer 402 provides a medium resolution panoramic video based on the base layer, and uses a tile-based codec technology to divide a panoramic video into multiple independent regions, for example, Numbers 4021 ⁇ 4023 are just a few of them.
  • the second enhancement layer 403 provides high-resolution panoramic video on the basis of the first enhancement layer, and also uses a tile-based codec technology to divide a panoramic video into multiple independent regions. For example, number 4031 is one of them.
  • the video of each Tile partition of each bit rate is divided into segments of a fixed time period according to the playback period, for example, one slice every 2 seconds.
  • T playback time
  • a layer, and a tile partition of a Tile partition the following rules are used to identify each fragment: "layered identifier/Tile number/play time".
  • the layered identifiers are layer0, layer1, and layer2 for the base layer, the first enhancement layer, and the second enhancement layer.
  • the tile with the first enhancement layer number 4021 and the tile at the T0 time have the identifier of layer1/4021/T0. Relevant information is recorded in the description file of the content.
  • the terminal determines the viewpoint area 5A, the viewpoint edge area 5B, and the blind spot area 5C based on the current user viewpoint. And determining the content fragment to be acquired and the corresponding priority according to the related information recorded in the content description file and the current viewing policy. For example, in this embodiment, the viewing policy is to preferentially ensure that the user does not have a black screen when the viewpoint is changed. Then, as shown in FIG. 7, the highest priority should be the 501 partition of the base layer corresponding to the 5C area (corresponding to 4011 in FIG. 6). The fragment is preferentially transmitted to ensure that a panoramic video can be obtained on the terminal side. No matter how the user switches the viewpoint, the corresponding video can be decoded according to the panoramic video, and no black screen appears.
  • the next highest priority is the partitions 503, 504, 505 corresponding to the viewpoint edge region 5B in the first enhancement layer (corresponding to 4021, 4022, 4023 of FIG. 6).
  • the terminal When the terminal superimposes the slice of the first enhancement layer and the video data of the base layer, the terminal can provide the user with a medium resolution image.
  • the lowest priority is the slice corresponding to the view area 5A in the second enhancement layer, that is, 502 (corresponding to 4031 of FIG. 6).
  • the terminal superimposes the second enhancement layer with the video data of the first enhancement layer and the base layer, the user can provide a high resolution image for the user.
  • the content of the slice that needs to be pulled down in this cycle is specified, that is, the content to be played in the next cycle.
  • the terminal submits to the server the fragmentation instruction that needs to be pushed before the T1 cycle, and it is necessary to specify the fragmentation, priority, and delivery time information as shown in Table 1 below.
  • the server After receiving the push request sent by the terminal, the server sorts the requested fragments according to the priority at time T0. Transfer from high to low. After the start time of T1 is reached, the fragment that has not been transmitted is discarded, and the terminal is notified that the relevant fragment has been canceled.
  • the content encoding is the same as in the previous embodiment.
  • the push request sent by the terminal only the required window information, video quality (here, hierarchical information) and corresponding priority are specified according to the current viewpoint. That is, the push instruction submitted by the terminal to the server needs to specify the information shown in Table 2 below, wherein the push completion time is empty, indicating that the server needs to push the content of the current window until the new window push command is received.
  • Window information Hierarchical information Push completion time priority Windows 5A identification information Layer2 - low Windows 5B identification information Layer1 - in Windows 5C identification information Layer0 - high
  • the identification information of the window is used to indicate the direction and range of the window, which can be:
  • the four sides of the VR video window correspond to the left and right azimuths and the up and down pitch angles in the VR video spherical coordinate system.
  • the given window identification information corresponding to the window range, needs to cover the corresponding target Tile partition in the panoramic video.
  • the server After receiving the push command, the server needs to obtain the corresponding fragment according to the related information in the content description file, and push the fragment of the corresponding window to the terminal according to the priority. For example, if the bandwidth is sufficient, the contents of the above three windows are pushed to the terminal. In the case of insufficient bandwidth, the content push from part of the window is discarded according to the priority from low to high.
  • the content is partitioned plus multi-rate encoded.
  • a low bit rate 601, a medium bit rate 602, and a high bit rate 603 video are provided, all using tile-based partition codec technology.
  • For each bit rate its panoramic picture is divided into 18 Tile partitions.
  • these tiles are numbered in the figure, which are 1-18.
  • the video of each Tile partition of each bit rate is divided into segments of a fixed time period according to the playing period, for example, one slice every 10 seconds.
  • the following rules are used to identify each fragment for a certain playback period T, a certain code rate, and a tile partition: "code rate identification/Tile number/play period".
  • the code rate flag is high, medium, and low code rate, and the values are high, mid, and low, respectively.
  • the identifier is low/6/T0. Relevant information is recorded in the description file of the content.
  • the viewing viewpoint belongs to the content director pre-specified, and the user cannot or rarely actively switches the viewpoint, such as a live broadcast. Therefore, the viewing strategy is to prioritize the video quality of the user's viewpoint area.
  • the image in the viewpoint area 701 is required to be the clearest
  • the image in the viewpoint edge area 702 is sub-clear
  • the other areas other than the blind spot area are required to be the lowest. Therefore, the 7A area needs to obtain the fragment of the high bit rate content, that is, the fragment corresponding to the partition of 603 in FIG. These content have the highest priority.
  • the second highest priority is the shard corresponding to the 7B area in the medium code rate content.
  • the lowest priority is the fragmentation corresponding to the 7C area in the low bit rate content.
  • the terminal knows that the user's viewpoint at time T1 is 701, and the terminal submits the fragmentation instruction that the server needs to push before the T1 period, and needs to specify the fragment and priority as shown in Table 3 below. Time and other information.
  • the terminal specifies the content of the subsequent several playback periods in one push request.
  • the coding still uses tile-based partition coding and decoding techniques.
  • a panoramic picture is divided into 15 Tile partitions.
  • these tiles are numbered in the figure, which are 1-15.
  • the video of each Tile partition is divided into segments of a fixed time period according to the playback period, for example, one slice every 10 seconds.
  • a tile partition of a Tile partition the following rules are used to identify each fragment: Tile number/play cycle. For example, in the T0 cycle, the slice of the sixth tile, its identifier is 6/T0.
  • the viewpoint will also switch from 801 to 802.
  • the viewpoint is at 801
  • the Tile partition number of the corresponding viewpoint area is 7.
  • the second period T2 the viewpoint is at 802, and the Tile partition number corresponding to the viewpoint area is 9. Therefore, in the push request submitted by the terminal to the server, the content of the slice that needs to be pulled down in the next two cycles, and the corresponding push completion time and priority are specified. As shown in Table 4 below.
  • the server After receiving the push request sent by the terminal at the time T0, the server first pushes the fragment in the T1 period. For multiple shards, sort by priority. After reaching the start time of T1, the fragment that has not been transmitted in the period is discarded, and the terminal is notified that the relevant fragment has been canceled. The server then begins to push the shards within the T2 period by priority.
  • FIG. 4 is a schematic flowchart 3 of a streaming media transmission method according to an embodiment of the present disclosure. As shown in FIG. 4, the streaming media transmission method includes the following steps:
  • Step 401 The terminal determines a current user viewpoint.
  • Step 402 The terminal determines a current region of interest, a common region, and a region of no interest.
  • Step 403 The terminal determines, according to the content description file, a current period, a fragmentation parameter of the local video that needs to be acquired in the different area.
  • Step 404 The terminal combines the shards according to different priorities according to a predetermined policy, sends a push request to the server, and carries parameters such as a content priority and a completion transmission time in the request.
  • Step 405 The terminal receives the fragment pushed by the server according to the request.
  • Step 406 The terminal merges and renders the received fragments to form a panoramic video in the next cycle, and performs step 401.
  • FIG. 5 is a schematic flowchart diagram of a streaming media transmission method according to an embodiment of the present disclosure. As shown in FIG. 5, the streaming media transmission method includes the following steps:
  • Step 501 The server side receives the push request of the terminal.
  • Step 502 The server side parses out the fragmentation information to be pushed in the request, and the corresponding priority, the time of completing the transmission, and the like.
  • Step 503 The server starts to push the slice according to a given priority, from high to low.
  • Step 504 During the fragment push process, the current push rate is calculated.
  • Step 505 Each time a slice is pushed, it is evaluated whether the next slice to be pushed can be sent to the terminal within a predetermined completion transmission time according to the calculated actual push rate. If yes, the push of the next slice is started, otherwise the push of the next slice is canceled; step 501 is performed.
  • FIG. 11 is a schematic structural diagram of a structure of a streaming media transmission device according to an embodiment of the present application, applied to a server side, where the device includes:
  • the sending unit 1101 is configured to send attribute information of each content fragment of the video content to the terminal;
  • the receiving unit 1102 is configured to receive a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
  • the reading unit 1103 is configured to read the corresponding content fragment according to the fragment identification information
  • the sending unit 1101 is further configured to send the read content slice to the terminal according to the priority information
  • the canceling unit 1104 is configured to cancel the sending of the target content fragment when the target content fragment cannot be transmitted to the terminal according to the push completion time information in the process of transmitting the content fragment.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the sending unit 1101 is configured to send the read content fragments to the terminal in descending order of priority according to the priority information.
  • the device further includes:
  • the detecting unit 1105 is configured to detect an actual transmission rate and/or network status information of the fragmented content during the sending of the content fragment; according to the actual transmission rate and/or network status information, and push completion time information Determine whether the target content fragment can be successfully sent to the terminal.
  • the implementation functions of the units in the streaming media transmission apparatus shown in FIG. 11 can be understood by referring to the related description of the foregoing streaming media transmission method.
  • the functions of the units in the streaming media transmission device shown in FIG. 11 can be realized by a program running on a processor, or can be realized by a specific logic circuit.
  • the embodiment of the present application further provides a server, where the server includes a processor and a memory, where the computer stores executable instructions, and when the processor executes the computer executable instructions, the processor is configured to execute The streaming media transmission method described in FIG.
  • FIG. 12 is a schematic structural diagram of a structure of a streaming media transmission device according to an embodiment of the present application, applied to a terminal side, where the device includes:
  • the receiving unit 1201 is configured to acquire attribute information of each content slice of the video content from the server;
  • the determining unit 1202 is configured to determine, according to attribute information of each content slice of the video content, a content slice to be received;
  • the sending unit 1203 is configured to send a video content request message to the server according to the content fragment to be received, where the video content request message includes at least the following information of each content fragment to be received: fragment identification information, priority Information, push completion time information;
  • the receiving unit 1201 is further configured to receive, by the server, each content fragment sent according to the priority information, wherein, in the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal , the reception of the target content slice is cancelled.
  • the determining unit 1202 is specifically configured to: determine the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
  • Viewpoint information Network bandwidth information, scheduling policy.
  • the attribute information of each content fragment of the video content includes at least one of the following:
  • the codec area division information of each content slice in the video content the video quality information supported by each content slice, and the view information of each content slice.
  • the fragment identification information includes: a URI of the content fragment; or
  • the fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
  • the slice identification information includes: window information of the content slice, and video quality information of the content slice.
  • the video quality information of the content fragment is at least one of the following:
  • the bit rate of the content slice the resolution of the content slice, and the hierarchical information of the content slice.
  • the receiving unit 1201 is specifically configured to: receive, by the server, each content fragment sent in descending order of priority.
  • the implementation functions of the units in the streaming media transmission apparatus shown in FIG. 12 can be understood by referring to the related description of the foregoing streaming media transmission method.
  • the functions of the units in the streaming media transmission device shown in FIG. 12 can be realized by a program running on the processor, or can be realized by a specific logic circuit.
  • the embodiment of the present application further provides a terminal, where the terminal includes a processor and a memory, where the computer stores computer executable instructions, and when the processor executes the computer executable instructions, the processor is configured to The streaming media transmission method described in FIG. 2 is performed.
  • the embodiment of the present application further provides a streaming media transmission system, where the system includes a server and a terminal, wherein the server is configured to execute the streaming media transmission system described in FIG. 1 , and the terminal is configured to perform the streaming media transmission described in FIG. 2 . method.
  • embodiments of the present application can be provided as a method, system, or computer program product. Accordingly, the application can take the form of a hardware embodiment, a software embodiment, or an embodiment in combination with software and hardware. Moreover, the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • the server sends the attribute information of each content fragment of the video content to the terminal;
  • the server receives the video content request message sent by the terminal, where the video content request message includes at least the content slice to be requested at least as follows Information: the fragment identification information, the priority information, and the push completion time information;
  • the server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information;
  • the server sends the content fragment, if the target completion content fragment cannot be sent to the terminal according to the push completion time information, the transmission of the target content fragment is cancelled. Therefore, in the case that the server cannot meet the terminal transmission time requirement, part of the content to be transmitted can be cancelled according to the priority, so as to ensure high-priority content fragment transmission, and avoid the terminal-side playback jam as much as possible.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Disclosed are a method, device and system for streaming media transmission, a server, a terminal and a storage medium. The method comprises: a server sending attribute information about each content fragment of video content to a terminal; the server receiving a video content request message sent by the terminal, wherein the video content request message comprises at least the following information about each content fragment to be requested: fragment identifier information, priority information and pushing completion time information; the server reading, according to the fragment identifier information, a corresponding content fragment, and sending, according to the priority information, the read content fragment to the terminal; and in the process of sending the content fragment, when it is detected, according to the pushing completion time information, that a target content fragment cannot be sent to the terminal, the server cancelling the sending of the target content fragment.

Description

一种流媒体传输方法及装置、系统、服务器、终端Stream media transmission method and device, system, server and terminal
相关申请的交叉引用Cross-reference to related applications
本申请基于申请号为201710044976.2、申请日为2017年01月20日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。The present application is based on a Chinese patent application filed on Jan. 20, 2017, the entire disclosure of which is hereby incorporated by reference.
技术领域Technical field
本申请涉及流媒体技术领域,尤其涉及一种全景视频的流媒体传输方法及装置、系统、服务器、终端、存储介质。The present application relates to the field of streaming media technologies, and in particular, to a streaming video transmission method, device, system, server, terminal, and storage medium for panoramic video.
背景技术Background technique
基于超文本传输协议(HTTP,HyperText Transfer Protocol)的动态自适应流(DASH,Dynamic Adaptive Streaming over HTTP)是一种HTTP提供的动态自适应流媒体传输协议。在DASH协议中,媒体内容被切分成多个片段,每个片段的时长一般为若干秒。终端通过给服务器发送HTTP请求来逐一获取这些片段,然后对各个片段进行解码并播放。当片段时长比较小时,会导致HTTP请求的数目特别多,传输效率非常低。为此,出现了全双工的DASH服务,终端可以在一次HTTP请求中,要求服务器传送多个片段,从而减少HTTP请求的数目,同时服务器也可以将多个片段的内容连续发送,从而避免了传输控制协议(TCP,Transmission Control Protocol)慢启动的问题,提高了传输效率。Dynamic Adaptive Streaming over HTTP (DASH) based on HyperText Transfer Protocol (HTTP) is a dynamic adaptive streaming media transmission protocol provided by HTTP. In the DASH protocol, media content is sliced into segments, each of which is typically a few seconds long. The terminal acquires these fragments one by one by sending an HTTP request to the server, and then decodes and plays each fragment. When the duration of the fragment is small, the number of HTTP requests is particularly large, and the transmission efficiency is very low. To this end, there is a full-duplex DASH service. The terminal can request the server to transmit multiple fragments in one HTTP request, thereby reducing the number of HTTP requests, and the server can also continuously send the contents of multiple fragments, thereby avoiding The slow start of the Transmission Control Protocol (TCP) improves the transmission efficiency.
另一方面,随着虚拟现实(VR,Virtual Reality)技术的快速发展,全景视频的应用也越来越广泛,这给用户带来了真实感很强的视频体验。但是在单位面积内的有效像素值相同的前提条件下,全景视频的数据量远远 超过普通的单视角视频的数据量。这样,在在线观看的情况下,就需要较高的传输带宽,这给内容传输网络(CDN,Content Delivery Networks)带来了比较大的压力。On the other hand, with the rapid development of virtual reality (VR) technology, the application of panoramic video is more and more extensive, which brings a realistic video experience to users. However, under the premise that the effective pixel values in the unit area are the same, the data amount of the panoramic video far exceeds the data amount of the ordinary single-view video. Thus, in the case of online viewing, a higher transmission bandwidth is required, which puts a great deal of pressure on the Content Delivery Networks (CDN).
为了解决这个问题,在视频编解码的时候,引入了基于瓦片(tile)的编解码技术,这里,瓦片是指帧内可以独立进行编解码的矩形区域。在这种方式下,一个全景视频的画面被划分成多个独立的区域。终端只需要获取用户当前视点所对应区域的视频数据,进行解码播放即可。对每一个区域,还可以进一步的编码出多个码率,以便用户根据视点区域的不同、网络带宽和自己的解码能力选择最适合的内容。例如对于视点区域,选择最高清晰度的内容,对于视点周边的区域,选择中清晰度的内容,而对于盲点区域的内容,则选择低清晰度的内容。In order to solve this problem, in the video codec, a tile-based codec technology is introduced. Here, a tile refers to a rectangular area in a frame that can be independently coded and decoded. In this way, the picture of a panoramic video is divided into a plurality of separate areas. The terminal only needs to obtain the video data of the area corresponding to the current viewpoint of the user, and can perform decoding and playback. For each area, multiple code rates can be further encoded so that the user can select the most suitable content according to the different view area, network bandwidth and own decoding capability. For example, for the viewpoint area, the content with the highest definition is selected, for the area around the viewpoint, the medium definition content is selected, and for the content of the blind spot area, the low definition content is selected.
但是在带宽有限,或者在网络拥塞,或者带宽有波动的情况下,终端请求的这些内容片段,仍然可能超过网络带宽,导致用户侧的播放卡顿。虽然用户可以在检测到卡顿时,再发送命令取消某些内容的传输,但一般网络拥塞发生时,双向的通讯都会受到影响,这可能导致服务器侧不能及时接收到用户取消内容传输的命令。However, when the bandwidth is limited, or the network is congested, or the bandwidth is fluctuating, the content fragments requested by the terminal may still exceed the network bandwidth, causing the user side to play the card. Although the user can send a command to cancel the transmission of some content when the card is detected, when the network congestion occurs, the two-way communication will be affected, which may cause the server side to not receive the command to cancel the content transmission by the user in time.
发明内容Summary of the invention
为解决上述技术问题,本申请实施例提供了一种流媒体传输方法及装置、系统、服务器、终端、存储介质,能够在有限带宽的情况下,为用户提供较佳的视频体验。To solve the above technical problem, the embodiment of the present application provides a streaming media transmission method, device, system, server, terminal, and storage medium, which can provide a better video experience for users under limited bandwidth.
本申请实施例提供的流媒体传输方法,包括:The streaming media transmission method provided by the embodiment of the present application includes:
服务器将视频内容的各个内容分片的属性信息发送给终端;The server sends the attribute information of each content fragment of the video content to the terminal;
服务器接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The server receives the video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
服务器根据所述分片标识信息读取相应的内容分片,按照所述优先级信息将读取的内容分片发送给终端;The server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information;
在服务器发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。In the process of the server sending the content fragment, if the target completion content fragment cannot be sent to the terminal according to the push completion time information, the transmission of the target content fragment is cancelled.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的统一资源标识符(URI);或者,In the embodiment of the present application, the fragment identification information includes: a uniform resource identifier (URI) of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述按照所述优先级信息将读取的内容分片发送给终端,包括:In the embodiment of the present application, the content fragment that is to be read is sent to the terminal according to the priority information, and includes:
按照所述优先级信息,将读取的内容分片由优先级从高到低的顺序发送给终端。According to the priority information, the read content fragments are sent to the terminal in order of priority from high to low.
本申请实施例中,所述方法还包括:In the embodiment of the present application, the method further includes:
在服务器发送所述内容分片的过程中,检测分片内容的实际传输速率和/或网络状况信息;In the process of sending the content fragment by the server, detecting an actual transmission rate and/or network status information of the fragmented content;
根据所述实际传输速率和/或网络状况信息,以及推送完成时间信息判断目标内容分片是否能够成功发送给终端。Determining whether the target content fragment can be successfully sent to the terminal according to the actual transmission rate and/or network status information and the push completion time information.
本申请另一实施例提供的流媒体传输方法,包括:A streaming media transmission method provided by another embodiment of the present application includes:
终端从服务器获取视频内容的各个内容分片的属性信息;The terminal acquires attribute information of each content fragment of the video content from the server;
终端基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片,并基于所述待接收的内容分片向服务器发送视频内容请求消息,所述视频内容请求消息中包括各个待接收的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and sends a video content request message to the server based on the content fragment to be received, where the video content request message includes each At least the following information of the content fragment to be received: fragment identification information, priority information, and push completion time information;
终端接收服务器按照所述优先级信息发送的各个内容分片,其中,在终端接收所述内容分片的过程中,如果服务器检测到无法将目标内容分片发送给终端,则取消所述目标内容分片的接收。Receiving, by the terminal, each content fragment sent by the server according to the priority information, wherein, in the process of receiving the content fragment by the terminal, if the server detects that the target content fragment cannot be sent to the terminal, canceling the target content Fragmentation reception.
本申请实施例中,所述终端基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片,包括:In the embodiment of the present application, the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, including:
终端基于所述视频内容的各个内容分片的属性信息,并结合以下内容的至少之一,确定待接收的内容分片:The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
视点信息、网络带宽信息、预定策略。Viewpoint information, network bandwidth information, scheduling policy.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述终端接收服务器按照所述优先级信息发送的各个内容分片,包括:In the embodiment of the present application, the terminal receiving, by the server, each content fragment sent according to the priority information includes:
终端接收服务器按照优先级从高到低的顺序发送的各个内容分片。The terminal receives each content fragment sent by the server in descending order of priority.
本申请实施例提供的流媒体传输装置,应用于服务器侧,所述装置包括:The streaming media transmission device provided by the embodiment of the present application is applied to the server side, and the device includes:
发送单元,配置为将视频内容的各个内容分片的属性信息发送给终端;a sending unit, configured to send attribute information of each content fragment of the video content to the terminal;
接收单元,配置为接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;a receiving unit, configured to receive a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
读取单元,配置为根据所述分片标识信息读取相应的内容分片;The reading unit is configured to read the corresponding content fragment according to the fragment identification information;
所述发送单元,还配置为按照所述优先级信息将读取的内容分片发送给终端;The sending unit is further configured to send the read content slice to the terminal according to the priority information;
取消单元,配置为在发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。And the canceling unit is configured to cancel the sending of the target content fragment when the target content fragment cannot be sent to the terminal according to the push completion time information in the process of sending the content fragment.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述发送单元,具体配置为:按照所述优先级信息,将读取的内容分片由优先级从高到低的顺序发送给终端。In the embodiment of the present application, the sending unit is specifically configured to: send the read content fragments to the terminal in descending order of priority according to the priority information.
本申请实施例中,所述装置还包括:In the embodiment of the present application, the device further includes:
检测单元,配置为在发送所述内容分片的过程中,检测分片内容的实际传输速率和/或网络状况信息;根据所述实际传输速率和/或网络状况信息,以及推送完成时间信息判断目标内容分片是否能够成功发送给终端。a detecting unit, configured to detect an actual transmission rate and/or network status information of the fragmented content during the sending of the content fragment; and determine, according to the actual transmission rate and/or network status information, and the push completion time information Whether the target content fragment can be successfully sent to the terminal.
本申请另一实施例提供的流媒体传输装置,应用于终端侧,所述装置包括:A streaming media transmission device provided by another embodiment of the present application is applied to a terminal side, and the device includes:
接收单元,配置为从服务器获取视频内容的各个内容分片的属性信息;a receiving unit configured to acquire attribute information of each content fragment of the video content from the server;
确定单元,配置为基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片;a determining unit, configured to determine a content slice to be received based on attribute information of each content slice of the video content;
发送单元,配置为基于所述待接收的内容分片向服务器发送视频内容请求消息,所述视频内容请求消息中包括各个待接收的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The sending unit is configured to send a video content request message to the server according to the content fragment to be received, where the video content request message includes at least the following information of each content fragment to be received: fragment identification information, priority information , push completion time information;
所述接收单元,还配置为接收服务器按照所述优先级信息发送的各个内容分片,其中,在接收所述内容分片的过程中,如果服务器检测到无法将目标内容分片发送给终端,则取消所述目标内容分片的接收。The receiving unit is further configured to receive, by the server, each content fragment sent according to the priority information, wherein, in the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal, Then the reception of the target content slice is cancelled.
本申请实施例中,所述确定单元,具体配置为:基于所述视频内容的各个内容分片的属性信息,并结合以下内容的至少之一,确定待接收的内容分片:In the embodiment of the present application, the determining unit is specifically configured to determine the content fragment to be received based on the attribute information of each content fragment of the video content and combined with at least one of the following contents:
视点信息、网络带宽信息、预定策略。Viewpoint information, network bandwidth information, scheduling policy.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持 的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述接收单元,具体配置为:接收服务器按照优先级从高到低的顺序发送的各个内容分片。In the embodiment of the present application, the receiving unit is specifically configured to: receive, by the server, each content fragment sent in descending order of priority.
本申请实施例提供的服务器,包括处理器和存储器,所述存储器中存储有计算机可执行指令,当所述处理器执行所述计算机可执行指令时,所述处理器配置为执行所述的流媒体传输方法。The server provided by the embodiment of the present application includes a processor and a memory, where the computer stores executable instructions, and when the processor executes the computer executable instructions, the processor is configured to execute the stream. Media transfer method.
本申请实施例提供的终端,包括处理器和存储器,所述存储器中存储有计算机可执行指令,当所述处理器执行所述计算机可执行指令时,所述处理器配置为执行所述的流媒体传输方法。A terminal provided by an embodiment of the present application includes a processor and a memory, where the computer stores computer executable instructions, and when the processor executes the computer executable instructions, the processor is configured to execute the stream. Media transfer method.
本申请实施例提供的流媒体传输系统包括所述的服务器以及所述的终端。The streaming media transmission system provided by the embodiment of the present application includes the server and the terminal.
本申请实施例提供的存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行上述实施例任一项所述的流媒体传输方法。The storage medium provided by the embodiment of the present application, wherein the storage medium stores computer executable instructions, and the computer executable instructions are used to execute the streaming media transmission method according to any one of the foregoing embodiments.
本申请实施例的技术方案中,服务器将视频内容的各个内容分片的属性信息发送给终端;服务器接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;服务器根据所述分片标识信息读取 相应的内容分片,按照所述优先级信息将读取的内容分片发送给终端;在服务器发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。采用本申请实施例的技术方案,服务器在无法满足终端传送时间要求的情况下,能够按优先级取消部分待传送的内容分片,以便确保高优先级的内容分片传送,尽可能避免终端侧的播放卡顿。In the technical solution of the embodiment of the present application, the server sends the attribute information of each content fragment of the video content to the terminal; the server receives the video content request message sent by the terminal, where the video content request message includes each content slice to be requested. At least the following information: the fragment identification information, the priority information, and the push completion time information; the server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the priority information according to the priority information. And transmitting, in the process of sending the content fragmentation by the server, canceling, according to the pushing completion time information, that the target content fragment cannot be sent to the terminal, canceling the sending of the target content fragment. With the technical solution of the embodiment of the present application, the server can cancel part of the content to be transmitted according to the priority in order to ensure the high-priority content fragmentation, and avoid the terminal side as much as possible. Play Caton.
附图说明DRAWINGS
附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。The drawings generally illustrate the various embodiments discussed herein by way of example and not limitation.
图1为本申请实施例的流媒体传输方法的流程示意图一;1 is a schematic flowchart 1 of a streaming media transmission method according to an embodiment of the present application;
图2为本申请实施例的流媒体传输方法的流程示意图二;2 is a schematic flowchart 2 of a streaming media transmission method according to an embodiment of the present application;
图3为本申请实施例的系统示意图;3 is a schematic diagram of a system according to an embodiment of the present application;
图4为本申请实施例的流媒体传输方法的流程示意图三;4 is a schematic flowchart 3 of a streaming media transmission method according to an embodiment of the present application;
图5为本申请实施例的流媒体传输方法的流程示意图四;FIG. 5 is a schematic flowchart 4 of a streaming media transmission method according to an embodiment of the present application;
图6为本申请实施例的视频编码的示意图一;6 is a schematic diagram 1 of video coding according to an embodiment of the present application;
图7为本申请实施例的根据用户视点,选择待推送分片的示意图一;FIG. 7 is a schematic diagram 1 of selecting a to-be-pushed slice according to a user point of view according to an embodiment of the present application;
图8为本申请实施例的视频编码的示意图二;FIG. 8 is a second schematic diagram of video coding according to an embodiment of the present application; FIG.
图9为本申请实施例的根据用户视点,选择待推送分片的示意图二;FIG. 9 is a schematic diagram 2 of selecting a to-be-pushed slice according to a user point of view according to an embodiment of the present application;
图10为本申请实施例的根据用户视点,选择待推送分片的示意图三;FIG. 10 is a schematic diagram 3 of selecting a to-be-pushed slice according to a user point of view according to an embodiment of the present application;
图11为本申请实施例的流媒体传输装置的结构组成示意图一;11 is a first schematic structural diagram of a streaming media transmission device according to an embodiment of the present application;
图12为本申请实施例的流媒体传输装置的结构组成示意图二。FIG. 12 is a second schematic structural diagram of a streaming media transmission apparatus according to an embodiment of the present application.
具体实施方式detailed description
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。The embodiments of the present application are described in detail with reference to the accompanying drawings.
本申请实施例的技术方案中,通过在视频内容请求消息中指定所需传送的内容分片的分片标识信息、优先级信息、推送完成时间信息,以便服务器在无法满足终端传送时间要求的情况下,按优先级取消部分待传送的内容分片,确保高优先级的内容分片的传送,尽可能避免终端侧的播放卡顿。In the technical solution of the embodiment of the present application, the fragment identification information, the priority information, and the push completion time information of the content fragment to be transmitted are specified in the video content request message, so that the server cannot meet the terminal transmission time requirement. Next, part of the content to be transmitted is cancelled according to the priority, and the transmission of the high-priority content fragments is ensured, and the playback on the terminal side is avoided as much as possible.
图1为本申请实施例的流媒体传输方法的流程示意图一,本示例中的流媒体传输方法应用于服务器侧,如图1所示,所述流媒体传输方法包括以下步骤:1 is a schematic flowchart 1 of a streaming media transmission method according to an embodiment of the present application. The streaming media transmission method in this example is applied to a server side. As shown in FIG. 1 , the streaming media transmission method includes the following steps:
步骤101:服务器将视频内容的各个内容分片的属性信息发送给终端。Step 101: The server sends the attribute information of each content fragment of the video content to the terminal.
步骤102:服务器接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息。Step 102: The server receives a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information.
步骤103:服务器根据所述分片标识信息读取相应的内容分片,按照所述优先级信息将读取的内容分片发送给终端;在服务器发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。Step 103: The server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information; in the process of sending the content fragment by the server, according to the When the push completion time information detects that the target content slice cannot be transmitted to the terminal, the transmission of the target content slice is canceled.
本申请实施例中,视频内容可以是全景视频内容。In the embodiment of the present application, the video content may be panoramic video content.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
上述方案中,内容分片是指支持独立解码的视频区域在不同时间段的视频数据。In the above solution, content fragmentation refers to video data that supports independently decoded video regions at different time periods.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量 信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述按照所述优先级信息将读取的内容分片发送给终端,包括:In the embodiment of the present application, the content fragment that is to be read is sent to the terminal according to the priority information, and includes:
按照所述优先级信息,将读取的内容分片由优先级从高到低的顺序发送给终端。According to the priority information, the read content fragments are sent to the terminal in order of priority from high to low.
本申请实施例中,所述方法还包括:In the embodiment of the present application, the method further includes:
在服务器发送所述内容分片的过程中,检测分片内容的实际传输速率和/或网络状况信息;In the process of sending the content fragment by the server, detecting an actual transmission rate and/or network status information of the fragmented content;
根据所述实际传输速率和/或网络状况信息,以及推送完成时间信息判断目标内容分片是否能够成功发送给终端。Determining whether the target content fragment can be successfully sent to the terminal according to the actual transmission rate and/or network status information and the push completion time information.
图2为本申请实施例的流媒体传输方法的流程示意图二,本示例中的流媒体传输方法应用于终端侧,如图2所示,所述流媒体传输方法包括以下步骤:2 is a schematic flowchart of a flow media transmission method according to an embodiment of the present disclosure. The streaming media transmission method in this example is applied to a terminal side. As shown in FIG. 2, the streaming media transmission method includes the following steps:
步骤201:终端从服务器获取视频内容的各个内容分片的属性信息。Step 201: The terminal acquires attribute information of each content fragment of the video content from the server.
步骤202:终端基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片,并基于所述待接收的内容分片向服务器发送视频内容请求消息,所述视频内容请求消息中包括各个待接收的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息。Step 202: The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and sends a video content request message to the server according to the content fragment to be received, the video content request message. The information includes at least the following information of each content slice to be received: fragment identification information, priority information, and push completion time information.
步骤203:终端接收服务器按照所述优先级信息发送的各个内容分片,其中,在终端接收所述内容分片的过程中,如果服务器检测到无法将目标内容分片发送给终端,则取消所述目标内容分片的接收。Step 203: The terminal receives each content fragment sent by the server according to the priority information. In the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal, the terminal cancels the The reception of the target content slice.
本申请实施例中,所述终端基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片,包括:In the embodiment of the present application, the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, including:
终端基于所述视频内容的各个内容分片的属性信息,并结合以下内容的至少之一,确定待接收的内容分片:The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
视点信息、网络带宽信息、预定策略。Viewpoint information, network bandwidth information, scheduling policy.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述终端接收服务器按照所述优先级信息发送的各个内容分片,包括:In the embodiment of the present application, the terminal receiving, by the server, each content fragment sent according to the priority information includes:
终端接收服务器按照优先级从高到低的顺序发送的各个内容分片。The terminal receives each content fragment sent by the server in descending order of priority.
下面结合具体应用场景对本申请实施例的流媒体传输方法做进一步详细描述。The streaming media transmission method in this embodiment of the present application is further described in detail below with reference to specific application scenarios.
图3给出了本申请实施例的系统示意图。终端从服务器侧获取视频内容的描述文件,例如DASH中的MPD文件,或者HTTP流媒体直播(HLS,HTTP Live Streaming)中的m3u8文件等。然后根据其中描述的分片内容信息,以及用户的当前视点等,确定需要获取的分片内容。然后根据当前的 观看策略,对这些分片内容按优先级进行分组。然后给服务器发送推送请求,请求中指明需要发送哪些分片,分片的优先级信息,以及这些分片需要完全传送到终端的时间。具体流程参见图4。服务器侧收到终端的推送请求后,按请求中指定的优先级,推送分片。推送过程中,服务器实时计算当前分片的推送状态,以判断是否可以及时完成当前分片的传送。在完成一个分片的推送后,根据当前分片的推送状态,判断是否可以及时完成下一个分片的推送。如果不能及时完成推送,则取消对应分片的推送。具体流程参见图5。FIG. 3 is a schematic diagram of a system of an embodiment of the present application. The terminal obtains a description file of the video content from the server side, such as an MPD file in DASH, or an m3u8 file in HTTP Live Streaming (HLS, HTTP Live Streaming). Then, according to the slice content information described therein, as well as the current viewpoint of the user, etc., the slice content that needs to be acquired is determined. These sharded content are then prioritized according to the current viewing strategy. A push request is then sent to the server indicating which shards need to be sent, the priority information of the shards, and the time at which these shards need to be fully delivered to the terminal. See Figure 4 for the specific process. After receiving the push request from the terminal, the server side pushes the fragment according to the priority specified in the request. During the push process, the server calculates the push status of the current slice in real time to determine whether the current slice transfer can be completed in time. After completing the push of a slice, according to the push state of the current slice, it is judged whether the push of the next slice can be completed in time. If the push cannot be completed in time, the push of the corresponding slice is canceled. See Figure 5 for the specific process.
关于不同观看策略下,对优先级和推送时间的使用,下面通过具体的实施例来说明。Regarding the use of priority and push time under different viewing strategies, the following describes by way of specific embodiments.
在一个实施例中,对内容采用了分区分层的编码方式,如图6所示。不同的Tile分区对应了不同的视角/空间。不同的分层则对应了不同的视频质量。例如基本层401为一个最低分辨率的全景视频,一帧就对应一个完整的全景图像,即只有一个Tile分区,编号为4011。提供了两个增强层。其中,第一增强层402在基本层的基础上提供了一个中等分辨率的全景视频,并采用了基于瓦片的编解码技术,将一个全景视频的画面划分成了多个独立的区域,例如编号4021~4023就是其中的几个Tile。第二增强层403在第一增强层的基础上,提供了高分辨率的全景视频,同样也采用了基于瓦片的编解码技术,将一个全景视频的画面划分成了多个独立的区域,例如编号4031就是其中的一个Tile。每个码率的每个Tile分区的视频,都按播放周期,切分成定长时间段的分片,例如每2秒一个分片。为便于描述,约定对于某个播放时间T、某个分层、某个Tile分区的视频分片,使用如下的规则来标识每个分片:“分层标识/Tile编号/播放时间”。其中分层标识对于基本层、第一增强层、第二增强层,取值分别为layer0、layer1、layer2。例如,第一增强层编号为4021的Tile,在T0时间的分片,其标识就为 layer1/4021/T0。相关信息均被记录在内容的描述文件中。In one embodiment, the content is encoded in a partitioned layer, as shown in FIG. Different Tile partitions correspond to different perspectives/spaces. Different layers correspond to different video qualities. For example, the base layer 401 is a panoramic video with the lowest resolution, and one frame corresponds to a complete panoramic image, that is, there is only one Tile partition, and the number is 4011. Two enhancement layers are provided. The first enhancement layer 402 provides a medium resolution panoramic video based on the base layer, and uses a tile-based codec technology to divide a panoramic video into multiple independent regions, for example, Numbers 4021 ~ 4023 are just a few of them. The second enhancement layer 403 provides high-resolution panoramic video on the basis of the first enhancement layer, and also uses a tile-based codec technology to divide a panoramic video into multiple independent regions. For example, number 4031 is one of them. The video of each Tile partition of each bit rate is divided into segments of a fixed time period according to the playback period, for example, one slice every 2 seconds. For convenience of description, it is agreed that for a certain playback time T, a layer, and a tile partition of a Tile partition, the following rules are used to identify each fragment: "layered identifier/Tile number/play time". The layered identifiers are layer0, layer1, and layer2 for the base layer, the first enhancement layer, and the second enhancement layer. For example, the tile with the first enhancement layer number 4021 and the tile at the T0 time have the identifier of layer1/4021/T0. Relevant information is recorded in the description file of the content.
如图7所示,终端基于当前的用户视点,确定视点区域5A、视点边缘区域5B和盲点区域5C。并根据内容描述文件中记录的相关信息,以及当前的观看策略,确定需要获取的内容分片以及对应的优先级。例如,在本实施例中,观看策略为优先保证用户在视点变换时,不出现黑屏。则如图7所示,优先级最高的就应该是5C区域对应的基本层的501分区(对应图6中的4011)。该分片优先传输,以确保终端侧可以获得一个全景视频,无论用户怎么切换视点,都可以根据这个全景视频解码播放出对应的画面,不出现黑屏。优先级次高的就是第一增强层中与视点边缘区域5B对应的分区503、504、505(对应到图6的4021、4022、4023)。终端将第一增强层的分片与基本层的视频数据叠加播放时,可以为用户提供中等分辨率的图像。优先级最低的就是第二增强层中与视点区域5A对应的分片,即502(对应到图6的4031)。终端将第二增强层与第一增强层以及基本层的视频数据叠加播放时,可以为用户提供高分辨率的图像。As shown in FIG. 7, the terminal determines the viewpoint area 5A, the viewpoint edge area 5B, and the blind spot area 5C based on the current user viewpoint. And determining the content fragment to be acquired and the corresponding priority according to the related information recorded in the content description file and the current viewing policy. For example, in this embodiment, the viewing policy is to preferentially ensure that the user does not have a black screen when the viewpoint is changed. Then, as shown in FIG. 7, the highest priority should be the 501 partition of the base layer corresponding to the 5C area (corresponding to 4011 in FIG. 6). The fragment is preferentially transmitted to ensure that a panoramic video can be obtained on the terminal side. No matter how the user switches the viewpoint, the corresponding video can be decoded according to the panoramic video, and no black screen appears. The next highest priority is the partitions 503, 504, 505 corresponding to the viewpoint edge region 5B in the first enhancement layer (corresponding to 4021, 4022, 4023 of FIG. 6). When the terminal superimposes the slice of the first enhancement layer and the video data of the base layer, the terminal can provide the user with a medium resolution image. The lowest priority is the slice corresponding to the view area 5A in the second enhancement layer, that is, 502 (corresponding to 4031 of FIG. 6). When the terminal superimposes the second enhancement layer with the video data of the first enhancement layer and the base layer, the user can provide a high resolution image for the user.
终端提交给服务器的推送请求中,指定本周期需要下拉的分片内容,也就是下一个周期需要播放的内容。例如在T0时刻,终端提交给服务器需要在T1周期前推送的分片指令中,就需要指定如下表1所示的分片及优先级、送达时间等信息。In the push request submitted by the terminal to the server, the content of the slice that needs to be pulled down in this cycle is specified, that is, the content to be played in the next cycle. For example, at time T0, the terminal submits to the server the fragmentation instruction that needs to be pushed before the T1 cycle, and it is necessary to specify the fragmentation, priority, and delivery time information as shown in Table 1 below.
Figure PCTCN2018071959-appb-000001
Figure PCTCN2018071959-appb-000001
表1Table 1
服务器在T0时刻,收到终端发送的推送请求后,对请求的分片,按优先级进行排序。从高到低依次传送。到达T1开始时间后,则丢弃尚未传完的分片,并通知终端,相关分片已被取消传输。After receiving the push request sent by the terminal, the server sorts the requested fragments according to the priority at time T0. Transfer from high to low. After the start time of T1 is reached, the fragment that has not been transmitted is discarded, and the terminal is notified that the relevant fragment has been canceled.
在另一个实施例中,内容编码与上个实施例一样。但终端发送的推送请求中,只是根据当前视点,指定需要的视窗信息、视频质量(在这里即为分层信息)和对应的优先级。即终端提交给服务器的推送指令中,需要指定如下表2所示的信息,其中推送完成时间为空,表示在没有收到新的视窗推送指令之前,服务器需要一直推送当前视窗的内容。In another embodiment, the content encoding is the same as in the previous embodiment. However, in the push request sent by the terminal, only the required window information, video quality (here, hierarchical information) and corresponding priority are specified according to the current viewpoint. That is, the push instruction submitted by the terminal to the server needs to specify the information shown in Table 2 below, wherein the push completion time is empty, indicating that the server needs to push the content of the current window until the new window push command is received.
视窗信息Window information 分层信息Hierarchical information 推送完成时间Push completion time 优先级priority
视窗5A的标识信息Windows 5A identification information layer2Layer2 -- low
视窗5B的标识信息Windows 5B identification information layer1Layer1 -- in
视窗5C的标识信息 Windows 5C identification information layer0Layer0 -- high
表2Table 2
其中视窗的标识信息,用来表明视窗的方向、范围,可以是:The identification information of the window is used to indicate the direction and range of the window, which can be:
1)VR视频视窗的中心点在VR视频球形坐标系中的方位角和俯仰角。加上VR视频视窗的宽度和高度信息。或者,1) The azimuth and elevation angle of the center point of the VR video window in the VR video spherical coordinate system. Plus the width and height information of the VR video window. or,
2)VR视频视窗的四条边对应在VR视频球形坐标系中的左、右方位角和上、下俯仰角。2) The four sides of the VR video window correspond to the left and right azimuths and the up and down pitch angles in the VR video spherical coordinate system.
所给的视窗标识信息,对应的视窗范围,需要覆盖全景视频中相应的目标Tile分区。The given window identification information, corresponding to the window range, needs to cover the corresponding target Tile partition in the panoramic video.
服务器收到该推送指令后,需要根据内容描述文件中的相关信息,获取相应的分片,按优先级推送对应视窗的分片给终端。例如在带宽足够的情况下,则将上述三个视窗的内容都推送给终端。带宽不够的情况下,则按优先级从低到高,放弃部分视窗的内容推送。After receiving the push command, the server needs to obtain the corresponding fragment according to the related information in the content description file, and push the fragment of the corresponding window to the terminal according to the priority. For example, if the bandwidth is sufficient, the contents of the above three windows are pushed to the terminal. In the case of insufficient bandwidth, the content push from part of the window is discarded according to the priority from low to high.
在另一个实施例中,对内容采用了分区加多码率编码的方式。如图8 所示。提供了一个低码率601、一个中等码率602和一个高码率603的视频,均采用了基于瓦片的分区编解码技术。对于每个码率,其全景画面都被划分成了18个Tile分区。为便于后面的描述,在图中对这些Tile做了编号,分别为1~18。每个码率的每个Tile分区的视频,都按播放周期,切分成定长时间段的分片,例如每10秒一个分片。为便于描述,约定对于某个播放周期T、某个码率、某个Tile分区的分片,使用如下的规则来标识每个分片:“码率标识/Tile编号/播放周期”。其中码率标识对于高、中、低码率,取值分别为high、mid、low。例如,在T0周期、低码率、第6个Tile的分片,其标识就为low/6/T0。相关信息均被记录在内容的描述文件中。In another embodiment, the content is partitioned plus multi-rate encoded. As shown in Figure 8. A low bit rate 601, a medium bit rate 602, and a high bit rate 603 video are provided, all using tile-based partition codec technology. For each bit rate, its panoramic picture is divided into 18 Tile partitions. For the convenience of the following description, these tiles are numbered in the figure, which are 1-18. The video of each Tile partition of each bit rate is divided into segments of a fixed time period according to the playing period, for example, one slice every 10 seconds. For convenience of description, the following rules are used to identify each fragment for a certain playback period T, a certain code rate, and a tile partition: "code rate identification/Tile number/play period". The code rate flag is high, medium, and low code rate, and the values are high, mid, and low, respectively. For example, in the T0 cycle, the low bit rate, and the slice of the sixth tile, the identifier is low/6/T0. Relevant information is recorded in the description file of the content.
在这个实施例中,观看视点属于内容编导预先指定,用户不能或很少主动切换视点,例如直播等场景。因此观看策略为优先保证用户视点区域的视频质量。如图9所示,即要求视点区域701内的图像最清晰,视点边缘区域702内的图像次清晰,而除此之外的其他区域为盲点区域,则要求最低。因此,7A区域需要获取高码率内容的分片,即图8中603对应分区的分片。这些内容具有最高优先级。优先级次高的就是中码率内容中,对应到7B区域的分片。优先级最低的就是低码率内容中,对应到7C区域的分片。例如在T0时刻,终端获知用户在T1时刻的视点是在701,则终端提交给服务器需要在T1周期前推送的分片指令中,就需要指定如下表3所示的分片及优先级、送达时间等信息。In this embodiment, the viewing viewpoint belongs to the content director pre-specified, and the user cannot or rarely actively switches the viewpoint, such as a live broadcast. Therefore, the viewing strategy is to prioritize the video quality of the user's viewpoint area. As shown in FIG. 9, the image in the viewpoint area 701 is required to be the clearest, the image in the viewpoint edge area 702 is sub-clear, and the other areas other than the blind spot area are required to be the lowest. Therefore, the 7A area needs to obtain the fragment of the high bit rate content, that is, the fragment corresponding to the partition of 603 in FIG. These content have the highest priority. The second highest priority is the shard corresponding to the 7B area in the medium code rate content. The lowest priority is the fragmentation corresponding to the 7C area in the low bit rate content. For example, at time T0, the terminal knows that the user's viewpoint at time T1 is 701, and the terminal submits the fragmentation instruction that the server needs to push before the T1 period, and needs to specify the fragment and priority as shown in Table 3 below. Time and other information.
Figure PCTCN2018071959-appb-000002
Figure PCTCN2018071959-appb-000002
Figure PCTCN2018071959-appb-000003
Figure PCTCN2018071959-appb-000003
表3table 3
另一个实施例中,终端在一次推送请求中,指定后续几个播放周期的内容。这里为简单起见,没有使用多码率或分层的编码方式,只以单码率的全景视频为例。并且只区分视点区域和非视点区域。如图10所示,编码仍然采用了基于瓦片的分区编解码技术。一个全景画面被划分成了15个Tile分区。为便于后面的描述,在图中对这些Tile做了编号,分别为1~15。每个Tile分区的视频,都按播放周期,切分成定长时间段的分片,例如每10秒一个分片。为便于描述,约定对于某个播放周期T、某个Tile分区的分片,使用如下的规则来标识每个分片:Tile编号/播放周期。例如,在T0周期、第6个Tile的分片,其标识就为6/T0。In another embodiment, the terminal specifies the content of the subsequent several playback periods in one push request. For the sake of simplicity, there is no multi-rate or hierarchical coding method, and only a panoramic video with a single code rate is taken as an example. And only distinguish between the view area and the non-view area. As shown in Figure 10, the coding still uses tile-based partition coding and decoding techniques. A panoramic picture is divided into 15 Tile partitions. For the convenience of the following description, these tiles are numbered in the figure, which are 1-15. The video of each Tile partition is divided into segments of a fixed time period according to the playback period, for example, one slice every 10 seconds. For the convenience of description, for a certain playback period T, a tile partition of a Tile partition, the following rules are used to identify each fragment: Tile number/play cycle. For example, in the T0 cycle, the slice of the sixth tile, its identifier is 6/T0.
在这个示例中,视点还会从801切换到802。其中,在第一个周期T1,视点在801,对应视点区域的Tile分区编号是7。第二个周期T2,视点在802,对应视点区域的Tile分区编号是9。因此终端提交给服务器的推送请求中,指定下两个周期需要下拉的分片内容,及对应的推送完成时间及优先级。如下表4所示。In this example, the viewpoint will also switch from 801 to 802. Wherein, in the first period T1, the viewpoint is at 801, and the Tile partition number of the corresponding viewpoint area is 7. The second period T2, the viewpoint is at 802, and the Tile partition number corresponding to the viewpoint area is 9. Therefore, in the push request submitted by the terminal to the server, the content of the slice that needs to be pulled down in the next two cycles, and the corresponding push completion time and priority are specified. As shown in Table 4 below.
Figure PCTCN2018071959-appb-000004
Figure PCTCN2018071959-appb-000004
表4Table 4
其中推送完成时间,可以使用相对时间,也可以使用绝对时间。优先级则如前几个实施例所述,根据用户的观看策略而定。In the push completion time, you can use relative time or absolute time. The priority is as described in the previous embodiments, depending on the viewing strategy of the user.
服务器在T0时刻,收到终端发送的推送请求后,首先推送T1周期内的分片。对多个分片,按优先级进行排序。在到达T1开始时刻后,则丢弃该周期内,尚未传完的分片,并通知终端,相关分片已被取消传输。然后服务器开始按优先级,推送T2周期内的分片。After receiving the push request sent by the terminal at the time T0, the server first pushes the fragment in the T1 period. For multiple shards, sort by priority. After reaching the start time of T1, the fragment that has not been transmitted in the period is discarded, and the terminal is notified that the relevant fragment has been canceled. The server then begins to push the shards within the T2 period by priority.
图4为本申请实施例的流媒体传输方法的流程示意图三,如图4所示,所述流媒体传输方法包括以下步骤:FIG. 4 is a schematic flowchart 3 of a streaming media transmission method according to an embodiment of the present disclosure. As shown in FIG. 4, the streaming media transmission method includes the following steps:
步骤401:终端确定当前的用户视点。Step 401: The terminal determines a current user viewpoint.
步骤402:终端确定当前的感兴趣区域、普通区域和不感兴趣区域。Step 402: The terminal determines a current region of interest, a common region, and a region of no interest.
步骤403:终端根据内容描述文件,确定当前周期,上述不同区域需要获取的局部视频的分片参数。Step 403: The terminal determines, according to the content description file, a current period, a fragmentation parameter of the local video that needs to be acquired in the different area.
步骤404:终端根据预定的策略,将分片按不同优先级组合,给服务器发送推送请求,并在请求中携带内容优先级和完成传送时间等参数。Step 404: The terminal combines the shards according to different priorities according to a predetermined policy, sends a push request to the server, and carries parameters such as a content priority and a completion transmission time in the request.
步骤405:终端接收服务器根据请求推送的分片。Step 405: The terminal receives the fragment pushed by the server according to the request.
步骤406:终端在下一个周期,对所接收的分片进行合并、渲染,形成全景视频,执行步骤401。Step 406: The terminal merges and renders the received fragments to form a panoramic video in the next cycle, and performs step 401.
图5为本申请实施例的流媒体传输方法的流程示意图四,如图5所示,所述流媒体传输方法包括以下步骤:FIG. 5 is a schematic flowchart diagram of a streaming media transmission method according to an embodiment of the present disclosure. As shown in FIG. 5, the streaming media transmission method includes the following steps:
步骤501:服务器侧收到终端的推送请求。Step 501: The server side receives the push request of the terminal.
步骤502:服务器侧解析出请求中待推送的分片信息,以及对应的优先级、完成传送的时间等参数。Step 502: The server side parses out the fragmentation information to be pushed in the request, and the corresponding priority, the time of completing the transmission, and the like.
步骤503:服务器按给定的优先级,从高到低,开始推送分片。Step 503: The server starts to push the slice according to a given priority, from high to low.
步骤504:分片推送过程中,计算当前推送的速率。Step 504: During the fragment push process, the current push rate is calculated.
步骤505:每完成一个分片的推送,根据计算的实际推送速率,评估下 一个待推送的分片是否可以在预定的完成传送时间内发送到终端。如果可以,则启动下一个分片的推送,否则就取消下一个分片的推送;执行步骤501。Step 505: Each time a slice is pushed, it is evaluated whether the next slice to be pushed can be sent to the terminal within a predetermined completion transmission time according to the calculated actual push rate. If yes, the push of the next slice is started, otherwise the push of the next slice is canceled; step 501 is performed.
图11为本申请实施例的流媒体传输装置的结构组成示意图一,应用于服务器侧,所述装置包括:FIG. 11 is a schematic structural diagram of a structure of a streaming media transmission device according to an embodiment of the present application, applied to a server side, where the device includes:
发送单元1101,配置为将视频内容的各个内容分片的属性信息发送给终端;The sending unit 1101 is configured to send attribute information of each content fragment of the video content to the terminal;
接收单元1102,配置为接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The receiving unit 1102 is configured to receive a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
读取单元1103,配置为根据所述分片标识信息读取相应的内容分片;The reading unit 1103 is configured to read the corresponding content fragment according to the fragment identification information;
所述发送单元1101,还配置为按照所述优先级信息将读取的内容分片发送给终端;The sending unit 1101 is further configured to send the read content slice to the terminal according to the priority information;
取消单元1104,配置为在发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。The canceling unit 1104 is configured to cancel the sending of the target content fragment when the target content fragment cannot be transmitted to the terminal according to the push completion time information in the process of transmitting the content fragment.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述发送单元1101,具体配置为:按照所述优先级信息,将读取的内容分片由优先级从高到低的顺序发送给终端。In the embodiment of the present application, the sending unit 1101 is configured to send the read content fragments to the terminal in descending order of priority according to the priority information.
本申请实施例中,所述装置还包括:In the embodiment of the present application, the device further includes:
检测单元1105,配置为在发送所述内容分片的过程中,检测分片内容的实际传输速率和/或网络状况信息;根据所述实际传输速率和/或网络状况信息,以及推送完成时间信息判断目标内容分片是否能够成功发送给终端。The detecting unit 1105 is configured to detect an actual transmission rate and/or network status information of the fragmented content during the sending of the content fragment; according to the actual transmission rate and/or network status information, and push completion time information Determine whether the target content fragment can be successfully sent to the terminal.
本领域技术人员应当理解,图11所示的流媒体传输装置中的各单元的实现功能可参照前述流媒体传输方法的相关描述而理解。图11所示的流媒体传输装置中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。Those skilled in the art should understand that the implementation functions of the units in the streaming media transmission apparatus shown in FIG. 11 can be understood by referring to the related description of the foregoing streaming media transmission method. The functions of the units in the streaming media transmission device shown in FIG. 11 can be realized by a program running on a processor, or can be realized by a specific logic circuit.
本申请实施例还提供一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有计算机可执行指令,当所述处理器执行所述计算机可执行指令时,所述处理器用于执行图1所述的流媒体传输方法。The embodiment of the present application further provides a server, where the server includes a processor and a memory, where the computer stores executable instructions, and when the processor executes the computer executable instructions, the processor is configured to execute The streaming media transmission method described in FIG.
图12为本申请实施例的流媒体传输装置的结构组成示意图二,应用于终端侧,所述装置包括:FIG. 12 is a schematic structural diagram of a structure of a streaming media transmission device according to an embodiment of the present application, applied to a terminal side, where the device includes:
接收单元1201,配置为从服务器获取视频内容的各个内容分片的属性信息;The receiving unit 1201 is configured to acquire attribute information of each content slice of the video content from the server;
确定单元1202,配置为基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片;The determining unit 1202 is configured to determine, according to attribute information of each content slice of the video content, a content slice to be received;
发送单元1203,配置为基于所述待接收的内容分片向服务器发送视频内容请求消息,所述视频内容请求消息中包括各个待接收的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The sending unit 1203 is configured to send a video content request message to the server according to the content fragment to be received, where the video content request message includes at least the following information of each content fragment to be received: fragment identification information, priority Information, push completion time information;
所述接收单元1201,还配置为接收服务器按照所述优先级信息发送的 各个内容分片,其中,在接收所述内容分片的过程中,如果服务器检测到无法将目标内容分片发送给终端,则取消所述目标内容分片的接收。The receiving unit 1201 is further configured to receive, by the server, each content fragment sent according to the priority information, wherein, in the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal , the reception of the target content slice is cancelled.
本申请实施例中,所述确定单元1202,具体配置为:基于所述视频内容的各个内容分片的属性信息,并结合以下内容的至少之一,确定待接收的内容分片:In the embodiment of the present application, the determining unit 1202 is specifically configured to: determine the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
视点信息、网络带宽信息、预定策略。Viewpoint information, network bandwidth information, scheduling policy.
本申请实施例中,所述视频内容的各个内容分片的属性信息包括以下至少之一:In the embodiment of the present application, the attribute information of each content fragment of the video content includes at least one of the following:
视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
本申请实施例中,所述分片标识信息包括:内容分片的URI;或者,In the embodiment of the present application, the fragment identification information includes: a URI of the content fragment; or
所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
本申请实施例中,所述内容分片的视频质量信息至少为以下之一:In the embodiment of the present application, the video quality information of the content fragment is at least one of the following:
内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
本申请实施例中,所述接收单元1201,具体配置为:接收服务器按照优先级从高到低的顺序发送的各个内容分片。In the embodiment of the present application, the receiving unit 1201 is specifically configured to: receive, by the server, each content fragment sent in descending order of priority.
本领域技术人员应当理解,图12所示的流媒体传输装置中的各单元的实现功能可参照前述流媒体传输方法的相关描述而理解。图12所示的流媒体传输装置中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。It should be understood by those skilled in the art that the implementation functions of the units in the streaming media transmission apparatus shown in FIG. 12 can be understood by referring to the related description of the foregoing streaming media transmission method. The functions of the units in the streaming media transmission device shown in FIG. 12 can be realized by a program running on the processor, or can be realized by a specific logic circuit.
本申请实施例还提供一种终端,所述终端包括处理器和存储器,所述存储器中存储有计算机可执行指令,当所述处理器执行所述计算机可执行 指令时,所述处理器配置为执行图2所述的流媒体传输方法。The embodiment of the present application further provides a terminal, where the terminal includes a processor and a memory, where the computer stores computer executable instructions, and when the processor executes the computer executable instructions, the processor is configured to The streaming media transmission method described in FIG. 2 is performed.
此外,本申请实施例还提供一种流媒体传输系统,该系统包括服务器和终端,其中,服务器配置为执行图1所述的流媒体传输系统,终端配置为执行图2所述的流媒体传输方法。In addition, the embodiment of the present application further provides a streaming media transmission system, where the system includes a server and a terminal, wherein the server is configured to execute the streaming media transmission system described in FIG. 1 , and the terminal is configured to perform the streaming media transmission described in FIG. 2 . method.
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present application can be provided as a method, system, or computer program product. Accordingly, the application can take the form of a hardware embodiment, a software embodiment, or an embodiment in combination with software and hardware. Moreover, the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the present application. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功 能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
以上所述,仅为本申请的较佳实施例而已,并非配置为限定本申请的保护范围。The above is only the preferred embodiment of the present application, and is not intended to limit the scope of the present application.
工业实用性Industrial applicability
采用本申请实施例,服务器将视频内容的各个内容分片的属性信息发送给终端;服务器接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;服务器根据所述分片标识信息读取相应的内容分片,按照所述优先级信息将读取的内容分片发送给终端;在服务器发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。从而实现了在服务器无法满足终端传送时间要求的情况下,能够按优先级取消部分待传送的内容分片,以便确保高优先级的内容分片传送,尽可能避免终端侧的播放卡顿。In the embodiment of the present application, the server sends the attribute information of each content fragment of the video content to the terminal; the server receives the video content request message sent by the terminal, where the video content request message includes at least the content slice to be requested at least as follows Information: the fragment identification information, the priority information, and the push completion time information; the server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information; When the server sends the content fragment, if the target completion content fragment cannot be sent to the terminal according to the push completion time information, the transmission of the target content fragment is cancelled. Therefore, in the case that the server cannot meet the terminal transmission time requirement, part of the content to be transmitted can be cancelled according to the priority, so as to ensure high-priority content fragment transmission, and avoid the terminal-side playback jam as much as possible.

Claims (28)

  1. 一种流媒体传输方法,所述方法包括:A streaming media transmission method, the method comprising:
    服务器将视频内容的各个内容分片的属性信息发送给终端;The server sends the attribute information of each content fragment of the video content to the terminal;
    服务器接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The server receives the video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
    服务器根据所述分片标识信息读取相应的内容分片,按照所述优先级信息将读取的内容分片发送给终端;The server reads the corresponding content fragment according to the fragment identification information, and sends the read content fragment to the terminal according to the priority information;
    在服务器发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。In the process of the server sending the content fragment, if the target completion content fragment cannot be sent to the terminal according to the push completion time information, the transmission of the target content fragment is cancelled.
  2. 根据权利要求1所述的流媒体传输方法,其中,所述视频内容的各个内容分片的属性信息包括以下至少之一:The streaming media transmission method according to claim 1, wherein the attribute information of each content slice of the video content comprises at least one of the following:
    视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
  3. 根据权利要求1所述的流媒体传输方法,其中,The streaming media transmission method according to claim 1, wherein
    所述分片标识信息包括:内容分片的统一资源标识符URI;或者,The fragment identification information includes: a uniform resource identifier URI of the content fragment; or
    所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
    所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
  4. 根据权利要求3所述的流媒体传输方法,其中,所述内容分片的视频质量信息至少为以下之一:The streaming media transmission method according to claim 3, wherein the video quality information of the content segmentation is at least one of the following:
    内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
  5. 根据权利要求1所述的流媒体传输方法,其中,所述按照所述优 先级信息将读取的内容分片发送给终端,包括:The streaming media transmission method according to claim 1, wherein the transmitting the read content fragment to the terminal according to the priority information comprises:
    按照所述优先级信息,将读取的内容分片由优先级从高到低的顺序发送给终端。According to the priority information, the read content fragments are sent to the terminal in order of priority from high to low.
  6. 根据权利要求1所述的流媒体传输方法,其中,所述方法还包括:The streaming media transmission method according to claim 1, wherein the method further comprises:
    在服务器发送所述内容分片的过程中,检测分片内容的实际传输速率和/或网络状况信息;In the process of sending the content fragment by the server, detecting an actual transmission rate and/or network status information of the fragmented content;
    根据所述实际传输速率和/或网络状况信息,以及推送完成时间信息判断目标内容分片是否能够成功发送给终端。Determining whether the target content fragment can be successfully sent to the terminal according to the actual transmission rate and/or network status information and the push completion time information.
  7. 一种流媒体传输方法,所述方法包括:A streaming media transmission method, the method comprising:
    终端从服务器获取视频内容的各个内容分片的属性信息;The terminal acquires attribute information of each content fragment of the video content from the server;
    终端基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片,并基于所述待接收的内容分片向服务器发送视频内容请求消息,所述视频内容请求消息中包括各个待接收的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and sends a video content request message to the server based on the content fragment to be received, where the video content request message includes each At least the following information of the content fragment to be received: fragment identification information, priority information, and push completion time information;
    终端接收服务器按照所述优先级信息发送的各个内容分片,其中,在终端接收所述内容分片的过程中,如果服务器检测到无法将目标内容分片发送给终端,则取消所述目标内容分片的接收。Receiving, by the terminal, each content fragment sent by the server according to the priority information, wherein, in the process of receiving the content fragment by the terminal, if the server detects that the target content fragment cannot be sent to the terminal, canceling the target content Fragmentation reception.
  8. 根据权利要求7所述的流媒体传输方法,其中,所述终端基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片,包括:The streaming media transmission method according to claim 7, wherein the terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, including:
    终端基于所述视频内容的各个内容分片的属性信息,并结合以下内容的至少之一,确定待接收的内容分片:The terminal determines the content fragment to be received based on the attribute information of each content fragment of the video content, and in combination with at least one of the following contents:
    视点信息、网络带宽信息、预定策略。Viewpoint information, network bandwidth information, scheduling policy.
  9. 根据权利要求7所述的流媒体传输方法,其中,所述视频内容的各个内容分片的属性信息包括以下至少之一:The streaming media transmission method according to claim 7, wherein the attribute information of each content slice of the video content comprises at least one of the following:
    视频内容中各个内容分片的编解码区域划分信息、各个内容分片支 持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
  10. 根据权利要求7所述的流媒体传输方法,其中,The streaming media transmission method according to claim 7, wherein
    所述分片标识信息包括:内容分片的URI;或者,The fragment identification information includes: a URI of the content fragment; or
    所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
    所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
  11. 根据权利要求10所述的流媒体传输方法,其中,所述内容分片的视频质量信息至少为以下之一:The streaming media transmission method according to claim 10, wherein the content quality of the content segmentation is at least one of the following:
    内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
  12. 根据权利要求7所述的流媒体传输方法,其中,所述终端接收服务器按照所述优先级信息发送的各个内容分片,包括:The streaming media transmission method according to claim 7, wherein the terminal receiving each content fragment sent by the server according to the priority information comprises:
    终端接收服务器按照优先级从高到低的顺序发送的各个内容分片。The terminal receives each content fragment sent by the server in descending order of priority.
  13. 一种流媒体传输装置,所述装置包括:A streaming media transmission device, the device comprising:
    发送单元,配置为将视频内容的各个内容分片的属性信息发送给终端;a sending unit, configured to send attribute information of each content fragment of the video content to the terminal;
    接收单元,配置为接收终端发送的视频内容请求消息,所述视频内容请求消息中包括各个待请求的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;a receiving unit, configured to receive a video content request message sent by the terminal, where the video content request message includes at least the following information of each content slice to be requested: fragment identification information, priority information, and push completion time information;
    读取单元,配置为根据所述分片标识信息读取相应的内容分片;The reading unit is configured to read the corresponding content fragment according to the fragment identification information;
    所述发送单元,还配置为按照所述优先级信息将读取的内容分片发送给终端;The sending unit is further configured to send the read content slice to the terminal according to the priority information;
    取消单元,配置为在发送所述内容分片的过程中,依据所述推送完成时间信息检测到无法将目标内容分片发送给终端时,取消所述目标内容分片的发送。And the canceling unit is configured to cancel the sending of the target content fragment when the target content fragment cannot be sent to the terminal according to the push completion time information in the process of sending the content fragment.
  14. 根据权利要求13所述的流媒体传输装置,其中,所述视频内容的各个内容分片的属性信息包括以下至少之一:The streaming media transmission device according to claim 13, wherein the attribute information of each content slice of the video content comprises at least one of the following:
    视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
  15. 根据权利要求13所述的流媒体传输装置,其中,The streaming media transmission device according to claim 13, wherein
    所述分片标识信息包括:内容分片的URI;或者,The fragment identification information includes: a URI of the content fragment; or
    所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
    所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
  16. 根据权利要求15所述的流媒体传输装置,其中,所述内容分片的视频质量信息至少为以下之一:The streaming media transmission device according to claim 15, wherein the content quality of the content segmentation is at least one of the following:
    内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
  17. 根据权利要求13所述的流媒体传输装置,其中,所述发送单元,具体配置为:按照所述优先级信息,将读取的内容分片由优先级从高到低的顺序发送给终端。The streaming media transmission device according to claim 13, wherein the transmitting unit is configured to: send the read content fragments to the terminal in descending order of priority according to the priority information.
  18. 根据权利要求13所述的流媒体传输装置,其中,所述装置还包括:The streaming media transmission device of claim 13, wherein the device further comprises:
    检测单元,配置为在发送所述内容分片的过程中,检测分片内容的实际传输速率和/或网络状况信息;根据所述实际传输速率和/或网络状况信息,以及推送完成时间信息判断目标内容分片是否能够成功发送给终端。a detecting unit, configured to detect an actual transmission rate and/or network status information of the fragmented content during the sending of the content fragment; and determine, according to the actual transmission rate and/or network status information, and the push completion time information Whether the target content fragment can be successfully sent to the terminal.
  19. 一种流媒体传输装置,所述装置包括:A streaming media transmission device, the device comprising:
    接收单元,配置为从服务器获取视频内容的各个内容分片的属性信息;a receiving unit configured to acquire attribute information of each content fragment of the video content from the server;
    确定单元,配置为基于所述视频内容的各个内容分片的属性信息,确定待接收的内容分片;a determining unit, configured to determine a content slice to be received based on attribute information of each content slice of the video content;
    发送单元,配置为基于所述待接收的内容分片向服务器发送视频内容请求消息,所述视频内容请求消息中包括各个待接收的内容分片的至少如下信息:分片标识信息、优先级信息、推送完成时间信息;The sending unit is configured to send a video content request message to the server according to the content fragment to be received, where the video content request message includes at least the following information of each content fragment to be received: fragment identification information, priority information , push completion time information;
    所述接收单元,还配置为接收服务器按照所述优先级信息发送的各个内容分片,其中,在接收所述内容分片的过程中,如果服务器检测到无法将目标内容分片发送给终端,则取消所述目标内容分片的接收。The receiving unit is further configured to receive, by the server, each content fragment sent according to the priority information, wherein, in the process of receiving the content fragment, if the server detects that the target content fragment cannot be sent to the terminal, Then the reception of the target content slice is cancelled.
  20. 根据权利要求19所述的流媒体传输装置,其中,所述确定单元,具体配置为:基于所述视频内容的各个内容分片的属性信息,并结合以下内容的至少之一,确定待接收的内容分片:The streaming media transmission device according to claim 19, wherein the determining unit is configured to: determine, based on attribute information of each content segment of the video content, in combination with at least one of the following contents, Content fragmentation:
    视点信息、网络带宽信息、预定策略。Viewpoint information, network bandwidth information, scheduling policy.
  21. 根据权利要求19所述的流媒体传输装置,其中,所述视频内容的各个内容分片的属性信息包括以下至少之一:The streaming media transmission device according to claim 19, wherein the attribute information of each content slice of the video content comprises at least one of the following:
    视频内容中各个内容分片的编解码区域划分信息、各个内容分片支持的视频质量信息、各个内容分片的视角信息。The codec area division information of each content slice in the video content, the video quality information supported by each content slice, and the view information of each content slice.
  22. 根据权利要求19所述的流媒体传输装置,其中,The streaming media transmission device according to claim 19, wherein
    所述分片标识信息包括:内容分片的URI;或者,The fragment identification information includes: a URI of the content fragment; or
    所述分片标识信息包括:内容分片的区域信息、内容分片的视频质量信息;或者,The fragment identification information includes: area information of the content fragment, and video quality information of the content fragment; or
    所述分片标识信息包括:内容分片的视窗信息、内容分片的视频质量信息。The slice identification information includes: window information of the content slice, and video quality information of the content slice.
  23. 根据权利要求22所述的流媒体传输装置,其中,所述内容分片的视频质量信息至少为以下之一:The streaming media transmission device according to claim 22, wherein the content quality of the content segmentation is at least one of the following:
    内容分片的码率、内容分片的分辨率、内容分片的分层信息。The bit rate of the content slice, the resolution of the content slice, and the hierarchical information of the content slice.
  24. 根据权利要求19所述的流媒体传输装置,其中,所述接收单元,具体配置为:接收服务器按照优先级从高到低的顺序发送的各个内容分片。The streaming media transmission device according to claim 19, wherein the receiving unit is specifically configured to: receive each content fragment sent by the server in descending order of priority.
  25. 一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有计算机可执行指令,当所述处理器执行所述计算机可执行指令时,所述处理器配置为执行权利要求1-6任一项所述的流媒体传输方法。A server comprising a processor and a memory, the memory storing computer executable instructions, the processor being configured to perform claims 1-6 when the processor executes the computer executable instructions A streaming media transmission method as claimed in any of the preceding claims.
  26. 一种终端,所述终端包括处理器和存储器,所述存储器中存储有计算机可执行指令,当所述处理器执行所述计算机可执行指令时,所述处理器配置为执行权利要求7-12任一项所述的流媒体传输方法。A terminal, the terminal comprising a processor and a memory, the memory storing computer executable instructions, the processor being configured to perform the claims 7-12 when the processor executes the computer executable instructions A streaming media transmission method as claimed in any of the preceding claims.
  27. 一种流媒体传输系统,所述系统包括权利要求25所述的服务器以及权利要求26所述的终端。A streaming media transmission system, the system comprising the server of claim 25 and the terminal of claim 26.
  28. 一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至6、权利要求7至12任一项所述的流媒体传输方法。A storage medium storing computer executable instructions for performing the streaming media transmission method according to any one of claims 1 to 6 and 7 to 12.
PCT/CN2018/071959 2017-01-20 2018-01-09 Method, device and system for streaming media transmission, server and terminal WO2018133709A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710044976.2A CN108337574A (en) 2017-01-20 2017-01-20 A kind of flow-medium transmission method and device, system, server, terminal
CN201710044976.2 2017-01-20

Publications (1)

Publication Number Publication Date
WO2018133709A1 true WO2018133709A1 (en) 2018-07-26

Family

ID=62907742

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/071959 WO2018133709A1 (en) 2017-01-20 2018-01-09 Method, device and system for streaming media transmission, server and terminal

Country Status (2)

Country Link
CN (1) CN108337574A (en)
WO (1) WO2018133709A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109255996A (en) * 2018-11-01 2019-01-22 南京伯索网络科技有限公司 A kind of the broadcasting optimization method and system of Online class
CN110446070A (en) * 2019-07-16 2019-11-12 重庆爱奇艺智能科技有限公司 A kind of method and apparatus of video playing
CN111447503A (en) * 2020-04-26 2020-07-24 烽火通信科技股份有限公司 Viewpoint switching method, server and system for multi-viewpoint video
CN112860944B (en) * 2021-02-05 2023-07-25 北京百度网讯科技有限公司 Video rendering method, apparatus, device, storage medium, and computer program product
CN114500665A (en) * 2021-12-28 2022-05-13 炫彩互动网络科技有限公司 File fragmentation downloading method, equipment and storage medium adaptive to network environment
CN114866838B (en) * 2022-05-31 2024-02-23 厦门蝉羽网络科技有限公司 Live broadcast on-demand method and system based on information processing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101651826A (en) * 2008-08-15 2010-02-17 华为技术有限公司 Method and device for sending and receiving media and system
CN104811748A (en) * 2014-01-23 2015-07-29 腾讯科技(北京)有限公司 Control method, control device and control system for playing video clip
CN104995924A (en) * 2012-12-31 2015-10-21 微软技术许可有限责任公司 Program based caching in live media distribution
WO2016069896A2 (en) * 2014-10-29 2016-05-06 DLVR, Inc. Configuring manifest files referencing infrastructure service providers for adaptive streaming video
CN106231440A (en) * 2016-07-22 2016-12-14 华为技术有限公司 A kind of files in stream media burst method for down loading, device and terminal

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101262604A (en) * 2008-04-23 2008-09-10 哈尔滨工程大学 A telescopic video coding method for optimized transmission of interested area
CN101605251B (en) * 2009-07-24 2011-05-11 清华大学 Method and system for wireless video transmission
JP6348251B2 (en) * 2012-09-13 2018-06-27 サターン ライセンシング エルエルシーSaturn Licensing LLC Terminal device, receiving method, and program
CN104427353B (en) * 2013-09-05 2017-09-29 北京大学 Video transmission method and equipment
US10021426B2 (en) * 2013-09-19 2018-07-10 Board Of Trustees Of The University Of Alabama Multi-layer integrated unequal error protection with optimal parameter determination for video quality granularity-oriented transmissions
CN104735464A (en) * 2015-03-31 2015-06-24 华为技术有限公司 Panorama video interactive transmission method, server and client end
CN105554513A (en) * 2015-12-10 2016-05-04 Tcl集团股份有限公司 Panoramic video transmission method and system based on H.264
CN106303562B (en) * 2016-09-20 2019-03-01 天津大学 Multi-view point video adaptive transmitted control algorithm based on PI control

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101651826A (en) * 2008-08-15 2010-02-17 华为技术有限公司 Method and device for sending and receiving media and system
CN104995924A (en) * 2012-12-31 2015-10-21 微软技术许可有限责任公司 Program based caching in live media distribution
CN104811748A (en) * 2014-01-23 2015-07-29 腾讯科技(北京)有限公司 Control method, control device and control system for playing video clip
WO2016069896A2 (en) * 2014-10-29 2016-05-06 DLVR, Inc. Configuring manifest files referencing infrastructure service providers for adaptive streaming video
CN106231440A (en) * 2016-07-22 2016-12-14 华为技术有限公司 A kind of files in stream media burst method for down loading, device and terminal

Also Published As

Publication number Publication date
CN108337574A (en) 2018-07-27

Similar Documents

Publication Publication Date Title
WO2018133709A1 (en) Method, device and system for streaming media transmission, server and terminal
EP3557845B1 (en) Method and device for transmitting panoramic videos, terminal, server and system
CN109891850B (en) Method and apparatus for reducing 360 degree view adaptive streaming media delay
Park et al. Rate-utility optimized streaming of volumetric media for augmented reality
CN110519652B (en) VR video playing method, terminal and server
CN111010582B (en) Cloud desktop image processing method, device and equipment and readable storage medium
Park et al. Volumetric media streaming for augmented reality
CN113905221B (en) Stereoscopic panoramic video asymmetric transport stream self-adaption method and system
EP3734980A1 (en) Video playback method and terminal, server and storage medium
US10277911B2 (en) Video processing workload management
CN110149542A (en) Transfer control method
CN110582012B (en) Video switching method, video processing device and storage medium
US20150110168A1 (en) Video data transmission method and apparatus
JP2022036307A (en) Client, server, reception method, and transmission method
US11575894B2 (en) Viewport-based transcoding for immersive visual streams
CN111093083A (en) Data transmission method and device
CN116867553A (en) Multi-session remote game rendering
CN107920108A (en) A kind of method for pushing of media resource, client and server
CN110800306B (en) Immersive video transmission method
Zeng et al. TVSR‐OR: Tile‐based 360‐degree video streaming over real time streaming protocol with optimized read
Nguyen et al. An adaptive method for low-delay 360 VR video streaming over HTTP/2
US20150149593A1 (en) Virtual desktop infrastructure server, computer implemented video streaming method, and non-transitory computer readable storage medium thereof
CN111885417B (en) VR video playing method, device, equipment and storage medium
CN116567247A (en) Video encoding method, real-time communication method, device, equipment and storage medium
CN108989905A (en) Media stream control method, calculates equipment and storage medium at device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18742275

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18742275

Country of ref document: EP

Kind code of ref document: A1