WO2018161789A1 - 一种投影类型推荐方法、服务器及客户端 - Google Patents

一种投影类型推荐方法、服务器及客户端 Download PDF

Info

Publication number
WO2018161789A1
WO2018161789A1 PCT/CN2018/076504 CN2018076504W WO2018161789A1 WO 2018161789 A1 WO2018161789 A1 WO 2018161789A1 CN 2018076504 W CN2018076504 W CN 2018076504W WO 2018161789 A1 WO2018161789 A1 WO 2018161789A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
projection type
projection
recommended
information
Prior art date
Application number
PCT/CN2018/076504
Other languages
English (en)
French (fr)
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 WO2018161789A1 publication Critical patent/WO2018161789A1/zh

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
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • 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/81Monomedia components thereof
    • 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/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • 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/84Generation or processing of descriptive data, e.g. content descriptors
    • 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 invention relates to the field of video, and in particular, to a projection type recommendation method, a server, and a client.
  • the panoramic video is also called 360-degree panoramic video.
  • the panoramic video is 360o panoramic shooting around the camera in the center position.
  • the viewing angle can be changed by sliding the screen or turning the head to change the viewing angle.
  • the panoramic video can be automatically played. With the switch, the user seems to be in the real environment.
  • the basic production and playback process of panoramic video can be summarized as three stages: acquisition coding, content transmission and decoding rendering.
  • the acquisition and encoding stage means that the server synchronously collects different surrounding images by using multiple lenses deployed at the same location, and splicing the contents of multiple shots, selecting a suitable projection type projection, and projecting the spliced content into a single panorama.
  • the image is then encoded with an existing encoder to encode the panoramic image.
  • the content transmission phase refers to the process in which the server sends a panoramic video to the client by using the media transmission protocol.
  • the decoding and rendering stage means that the client first decodes and restores the panoramic video by using the decoder to obtain a panoramic image, performs 3D scene reconstruction on the panoramic image according to the projection type, and then selects a part of the image projection on the panoramic image after the 3D scene reconstruction according to the user's perspective. To the user.
  • the projection types already included in the Omnidirectional Media Application Format (OMAF) standard being developed by the Moving Picture Experts Group (MPEG) standards organization are: sphere, squished sphere ), cylinder, pyramid, octahedron, and the like. Due to the different processing overhead required by different projection types, different terminal devices may only support one or several types of projections. Therefore, in the acquisition and encoding phase of panoramic video, the server needs to provide projection processing using different projection types. The video content is for the terminal to choose.
  • OMAF Omnidirectional Media Application Format
  • MPEG Moving Picture Experts Group
  • the server provides multiple panoramic videos with different projection types, and the client can support at least two of the projection types, the client may not be able to determine in advance the difference in effect between the panoramic video obtained by using various projection types. Choose a projection type that is not very effective, so users can't experience the best viewing experience. Or the client can view the media type of the panoramic video obtained by using different projection types before selecting the best projection type, which greatly reduces the user experience.
  • the embodiment of the present invention provides a projection type recommendation method, a server, and a client, which are used to solve the problem that the existing client cannot play the panoramic video corresponding to the projection type that has the best effect on the client. , causing poor user experience.
  • a projection type recommendation method provided by an embodiment of the present invention includes:
  • the server receives the first request message sent by the client, where the first request message carries the identifier of the MPD file of the media presentation of the panoramic video, and the identifier of the MPD file may be a uniform resource identifier URI;
  • the server Obtaining, by the server, the MPD file according to the identifier of the MPD file, where the MPD file includes information of media fragments corresponding to at least two types of projections;
  • a first response message to the client where the first response message includes information of media fragments corresponding to the at least two types of projections and recommended projection type information; wherein the recommended projection type information Means for indicating a projection type recommended to the client among the at least two projection types, including one of the at least two projection types or a plurality of projection types of the at least two projection types Level indication information.
  • the server After the server learns that the client requests to acquire the MPD file of the panoramic video, the server provides the client with the information of the media segment of the panoramic video corresponding to the two projection types and the recommended projection type information, so that the client can project according to the recommendation.
  • the type information selects the best type of projection, and then obtains the media slice corresponding to the best-performing projection type from the server.
  • the server can recommend the projection type to the client, so that the existing panoramic video with the best projection type of the client that cannot be selected by the client in the solution for playing the panoramic video of the client can be solved, resulting in poor user experience. The problem.
  • the client can directly select the best-performing projection type based on the recommended projection type information sent by the server, thereby avoiding the problem that the client randomly selects the projection type in the prior art and causes a poor user experience, and avoids the prior art.
  • the client selects a less effective projection type, it needs to switch the network overhead caused by media segments of different projection types.
  • the foregoing method further includes:
  • the server receives the second request message that is sent by the client and carries the identifier of the media segment, and the identifier of the media segment may be a uniform resource locator URL;
  • the server sends a second response message to the client, where the second response message includes a media slice of the panoramic video indicated by the identifier of the media segment.
  • the identifier of the media segment refers to the identifier of the media segment corresponding to the best projection type selected by the client according to the projection type recommended by the server.
  • the server learns that the client requests the media segment corresponding to the projection type with the best effect, and returns the media segment corresponding to the optimal projection type to the client, thereby implementing the server orientation.
  • the client transmits media fragments.
  • the recommended projection type information is used to indicate a projection type recommended to the client in the at least two projection types, specifically:
  • the recommended projection type information is used to indicate to the client that the projection type in the at least two projection types is recommended for the panoramic video; and/or,
  • the recommended projection type information is used to indicate that a projection type of the at least two projection types is recommended to the client for different time periods of the panoramic video; and/or,
  • the recommended projection type information is used to indicate that the projection types in the at least two projection types are respectively recommended to the client for different resolutions.
  • the server can provide various forms of recommended projection type information to the client, and the client can select the best projection type according to various forms of recommended projection type information.
  • the MPD file in the foregoing method may be divided into the following two cases: one case is: the MPD file refers to an existing MPD file, and the existing MPD file does not include recommended projection type information.
  • the MPD file refers to the existing MPD file, and the MPD file also includes recommended projection type information.
  • the recommended projection type information included in the MPD file is not allowed to be updated, or the server may update the recommended projection type information included in the MPD file using the recommended projection type information determined by itself.
  • the foregoing method may be implemented in the following manners: the server sends the information about the media fragment corresponding to the at least two projection types and the recommended projection type information to the client:
  • the MPD file includes information about media fragments corresponding to at least two types of projections and recommended projection type information, and the server sends a first response message including the MPD file to the client.
  • the MPD file includes information about media fragments corresponding to at least two types of projections, and the server uses the recommended projection type information as a message parameter of the first response message, and then carries the message parameter and the first response message of the MPD file. Sent to the client.
  • the recommended projection type information may be carried by the MPD file acquired by the server, or may be determined by the server.
  • the server can determine the recommended projection type information in the following ways:
  • Method 1 The server determines the recommended projection type information based on the statistical data.
  • This method is especially applicable to scenarios where the MPD file does not include recommended projection type information, and the first request message does not include the device information of the client.
  • the first request message sent by the client to the server includes device information of the client, and the device information of the client may include a device type of the client or a projection type supported by the client.
  • the server determines the recommended projection type information according to the device information of the client, including:
  • the server determines the recommended projection type information according to the statistical data of the projection type selected by different clients in the system and the device type of the client; or
  • the server determines the recommended projection type information according to a projection type supported by the client.
  • a method for recommending a projection type includes:
  • the client sends a first request message to the server, where the first request message carries the identifier of the media presentation description MPD file of the panoramic video;
  • the client Receiving, by the client, a first response message sent by the server, where the first response message includes information of media fragments corresponding to at least two types of projections and recommended projection type information; wherein the recommended projection type information is used by the client And indicating a projection type recommended to the client in the at least two projection types, including one of the at least two projection types or a priority of a plurality of projection types of the at least two projection types Instructions.
  • the client after the client requests the server to obtain the MPD file of the panoramic video, the client receives the information of the media segment and the recommended projection type information of the panoramic video corresponding to the at least two projection types provided by the server, so that the client can be recommended according to the recommendation.
  • the projection type information selects the projection type with the best effect, and then obtains the media fragment corresponding to the projection type with the best effect from the server.
  • the server can recommend the projection type to the client, so that the existing panoramic video with the best projection type of the client that cannot be selected by the client in the solution for playing the panoramic video of the client can be solved, resulting in poor user experience. The problem.
  • the client can directly select the best-performing projection type based on the recommended projection type information sent by the server, thereby avoiding the problem that the client randomly selects the projection type in the prior art and causes a poor user experience, and avoids the prior art.
  • the client selects a less effective projection type, it needs to switch the network overhead caused by media segments of different projection types.
  • the foregoing method may be implemented in the following manners: the client receives information about the media fragments corresponding to the at least two types of projections and recommended projection type information sent by the server:
  • the MPD file includes information of media fragments corresponding to at least two types of projections and recommended projection type information, and the client receives a first response message that is sent by the server and includes the MPD file.
  • the MPD file includes information of media fragments corresponding to at least two types of projections, and the recommended projection type information is used as a message parameter of the first response message, and the client receives the first parameter of the message and the MPD file sent by the server. Response message.
  • the method further includes:
  • the client sends a second request message to the server, where the second request message includes an identifier of the media slice.
  • the client may request the server to obtain the media segment corresponding to the projection type with the best effect, and then the client receives the media segment corresponding to the best projection type returned by the server, and then Implement the server to transfer media fragments to the client.
  • the client can determine the optimal projection class type in the following two ways:
  • Method 1 The client determines the best projection class type according to the device information of the client and the recommended projection type information. Specifically include:
  • the client determines a projection type included in the recommended projection type information For the best projection type; or,
  • the client When the recommended projection type information includes priority indication information of a plurality of projection types of the at least two projection types, the client has the highest priority among the plurality of projection types included in the recommended projection type information and The projection type supported by the client is determined to be the optimal projection type.
  • the first method is applicable to a scenario in which the first request message does not carry the device information of the client.
  • the first request message sent by the client to the server further includes device information of the client, so that the server determines the recommended projection type information according to the device information of the client.
  • the client determines the optimal projection type based on the recommended projection type information.
  • the second method is applicable to the scenario in which the first request message carries the device information of the client.
  • the recommended projection type information is determined by the server based on the device information of the client, and the recommendation effect of the recommended projection type information is relatively accurate.
  • the client can directly use the projection type recommended by the recommended projection type information or the projection type with the highest priority among the plurality of projection types as the optimal projection type.
  • a server provided by the embodiment of the present invention includes:
  • a receiving unit configured to receive a first request message sent by the client, where the first request message carries a media presentation of the panoramic video to describe an identifier of the MPD file;
  • a processing unit configured to acquire an MPD file according to the identifier of the MPD file, where the MPD file includes information of media fragments corresponding to at least two types of projections;
  • a sending unit configured to return a first response message to the client, where the first response message includes information of media fragments corresponding to the at least two projection types and recommended projection type information; wherein the recommended projection
  • the type information is used to indicate a projection type recommended to the client among the at least two projection types, including one of the at least two projection types or a plurality of projection types of the at least two projection types Priority indication information.
  • the receiving unit is further configured to: receive a second request message that is sent by the client and that carries an identifier of the media slice;
  • the sending unit is further configured to: send a second response message to the client, where the second response message includes a media slice of the panoramic video indicated by the identifier of the media slice.
  • the recommended projection type information is used to indicate a projection type recommended to the client in the at least two projection types, specifically:
  • the recommended projection type information is used to indicate to the client that the projection type in the at least two projection types is recommended for the panoramic video; and/or,
  • the recommended projection type information is used to indicate that a projection type of the at least two projection types is recommended to the client for different time periods of the panoramic video; and/or,
  • the recommended projection type information is used to indicate that the projection types in the at least two projection types are respectively recommended to the client for different resolutions.
  • the recommended projection type information is included in the MPD file.
  • the first request message further includes device information of the client, where the device information of the client includes a device type of the client or a projection type supported by the client;
  • the processing unit is further configured to:
  • the sending unit Before the sending unit returns the first response message to the client, when the device information of the client includes the device type of the client, according to the statistics of the projection type selected by different clients in the system and the client The device type of the end, determining the recommended projection type information; or,
  • the sending unit Before the sending unit returns the first response message to the client, when the device information of the client includes the projection type supported by the client, determining the recommended projection according to the projection type supported by the client Type information.
  • the processing unit is further configured to:
  • the recommended projection type information is determined according to the statistical data before the sending unit returns the first response message to the client.
  • a client provided by the embodiment of the present invention includes:
  • a sending unit configured to send a first request message to the server, where the first request message carries a media presentation of the panoramic video to describe an identifier of the MPD file;
  • a receiving unit configured to receive a first response message sent by the server, where the first response message includes information of media fragments corresponding to at least two types of projections and recommended projection type information; wherein the recommended projection type information Means for indicating a projection type recommended to the client among the at least two projection types, including one of the at least two projection types or a plurality of projection types of the at least two projection types Level indication information.
  • the first response message includes an MPD file
  • the recommended projection type information is included in the MPD file.
  • the client further includes a processing unit, configured to determine an optimal projection class type according to the device information of the client and the recommended projection type information, and correspond to the optimal projection type according to the best projection type Determining, by the information of the media fragments corresponding to the at least two types of projections, the identifier of the media segment;
  • the sending unit is further configured to: send a second request message to the server, where the second request message includes an identifier of the media slice.
  • the processing unit determines the optimal projection type according to the device information of the client and the recommended projection type information, specifically:
  • the client supports the projection type, determining a projection type included in the recommended projection type information as the most Good projection type; or,
  • the recommended projection type information includes priority indication information of a plurality of projection types of the at least two projection types, among the plurality of projection types included in the recommended projection type information, the highest priority and the client The supported projection type is determined as the optimal projection type.
  • the first request message further includes device information of the client, where the device information of the client includes a device type of the client or a projection type supported by the client;
  • the client further includes a processing unit, configured to determine an optimal projection type according to the recommended projection type information, and determine, according to the optimal projection type, information of media fragments corresponding to the at least two projection types.
  • the sending unit is further configured to: send a second request message to the server, where the second request message includes an identifier of the media slice.
  • a fifth aspect of the present invention provides a server, including a memory, a processor, and a communication interface, where
  • the memory is for storing a computer readable program
  • the processor by running a program in the memory, to perform the method provided by any of the first aspect and the first aspect;
  • the communication interface is for receiving and transmitting data under the control of the processor.
  • a sixth aspect of the present invention provides a client, including a memory, a processor, and a communication interface, where
  • the memory is for storing a computer readable program
  • the processor by running a program in the memory, to perform the method provided by any of the possible implementations of the second aspect and the second aspect;
  • the communication interface is for receiving and transmitting data under the control of the processor.
  • FIG. 1 is a schematic diagram of a network architecture according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram showing the content structure of an MPD file in the prior art
  • FIG. 3 is a schematic structural diagram of a server according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic structural diagram of a client according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic flowchart of a projection type recommendation method according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of another server according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic structural diagram of another client according to an embodiment of the present invention.
  • the embodiment of the present invention provides a projection type recommendation method, a server, and a client, which are used to solve the problem that the existing client cannot play the panoramic video corresponding to the projection type with the best effect selected by the client.
  • the method and the device are based on the same inventive concept. Since the principles of the method and the device for solving the problem are similar, the implementation of the device and the method can be referred to each other, and the repeated description is not repeated.
  • the network architecture involved in the technical solution provided by the embodiment of the present invention is as shown in FIG. 1 , and includes a server 101 and a client 102.
  • the server corresponds to the client and provides a program for the user to provide a local service.
  • the client in the embodiment of the present invention has a function of playing a panoramic video for the user, and the panoramic video player is run on the client, and the player can be installed on the client.
  • An application can also be a page on the browser.
  • the client can be a wireless terminal device or a wired terminal device.
  • the wireless terminal device can be a handheld device with wireless connectivity, or other processing device connected to a wireless modem.
  • the wireless terminal device can communicate with one or more core networks via a Radio Access Network (RAN), which can be a mobile terminal device, such as a mobile phone (or "cellular" phone) and has a mobile
  • RAN Radio Access Network
  • the computers of the terminal devices may be portable, pocket-sized, handheld, computer-integrated or in-vehicle mobile devices that exchange language and/or data with the wireless access network.
  • the wired terminal device may be a cable television machine, a wired computer, or the like.
  • the server is a device that provides a computing service, and the server can respond to the service request of the client.
  • the server has the function of taking the service and securing the service.
  • the server involved in the embodiment of the present invention has the function of providing the panoramic video to the client.
  • the composition of the server is similar to that of a general computer architecture, usually including blowing, hard disk, memory, system bus, etc., and is highly demanding in terms of processing power, reliability, stability, security, scalability, manageability, etc., for example.
  • the server can be a personal computer (PC) server.
  • the communication between the client and the server supports the universal panoramic video media transmission protocol, such as Real-Time Protocol (RTP), Real-Time Streaming Protocol (RTSP), Hypertext Transfer Protocol (HyperText). Transfer Protocol (HTTP), HTTP Dynamic Adaptive Streaming over HTTP (DASH) media protocol, HTTP Live Streaming (HLS) media protocol, etc.
  • RTP Real-Time Protocol
  • RTSP Real-Time Streaming Protocol
  • HTTP Hypertext Transfer Protocol
  • DASH Dynamic Adaptive Streaming over HTTP
  • HLS HTTP Live Streaming
  • the embodiment of the invention relates to a panoramic video transmission scenario, and specifically relates to a scenario in which the server recommends a projection type for the client before the client requests the server to transmit the panoramic video.
  • the panoramic video is also called 360-degree panoramic video.
  • the panoramic video is 360o panoramic shooting around the camera in the center position.
  • the viewing angle can be changed by sliding the screen or turning the head to change the viewing angle.
  • the panoramic video can be automatically played. With the switch, the user seems to be in the real environment.
  • the basic production and playback process of panoramic video can be summarized as three stages: acquisition coding, content transmission and decoding rendering.
  • the acquisition and encoding stage means that the server synchronously collects different surrounding images by using multiple lenses deployed at the same location, and splicing the contents of multiple shots, selecting a suitable projection type projection, and projecting the spliced content into a single panorama.
  • the image is then encoded with an existing encoder to encode the panoramic image.
  • the content transmission phase refers to the process in which the server sends a panoramic video to the client by using the media transmission protocol.
  • the decoding and rendering stage means that the client first decodes and restores the panoramic video by using the decoder to obtain a panoramic image, performs 3D scene reconstruction on the panoramic image according to the projection type, and then selects a part of the image projection on the panoramic image after the 3D scene reconstruction according to the user's perspective. To the user.
  • the projection types already included in the Omnidirectional Media Application Format (OMAF) standard being developed by the Moving Picture Experts Group (MPEG) standards organization are: sphere, squished sphere ), cylinder, pyramid, octahedron, and the like.
  • OMAF Omnidirectional Media Application Format
  • MPEG Moving Picture Experts Group
  • the type of projection may not be limited to the type of projection mentioned in the embodiments of the present invention.
  • the server and client involved in the embodiments of the present invention may be based on DASH technology or may be based on other technologies.
  • DASH technology is mainly for solving the tedious problem of deployment and receiving mechanisms caused by different video streaming technologies by different video distributors.
  • the main feature of the DASH technology is that the client can select the media fragment of the appropriate bit rate according to the network conditions such as the download speed and the number of caches.
  • the media distributor sends the media segment to the client through the HTTP protocol according to the client's selection. Guarantee the user's viewing experience.
  • the existing DASH standard mainly specifies the format of a Media Presentation Description (MPD) file and a media segment.
  • the content structure of the existing MPD file is shown in FIG. 2, and the MPD file is divided into four levels: Period, Adaptation Set, Representation, and Segment.
  • An MPD file consists of one or more consecutive periods, a Period representing a media time period with a start time and an end time; a period containing one or more Adaptation Sets, each Adaptation Set usually corresponding to a media component Such as audio, video, subtitles, etc.
  • a video's Adaptation Set usually includes multiple Representations.
  • Each Representation consists of one or more media fragments, which are the basic units of the MPD.
  • the client can obtain the sum from the server through the Uniform Resource Locator (URL) of the media fragments in the MPD file.
  • URL Uniform Resource Locator
  • the client first obtains the MPD file of the panoramic video from the server, which is a metadata file that provides information on how the client accesses the media segment of the panoramic video. Due to different processing overheads required by different projection types, different terminal devices may only support one or several types of projections. Therefore, it is necessary to provide panoramic video corresponding to at least two projection types for client selection, at least two.
  • the type of projection refers to the type of projection used when making a panoramic video, such that the MPD file of the panoramic video should include information of the media slice of the panoramic video corresponding to at least two projection types.
  • the server provides multiple panoramic videos obtained by using different projection types, and the client can support at least two types of projections, in the prior art, since the client cannot determine in advance the panoramic video obtained by using various projection types. Differences in performance may result in a projection type that is not very effective, and the user cannot experience the best viewing experience. Or the client can view the media type of the panoramic video obtained by using different projection types before selecting the best projection type, which greatly reduces the user experience.
  • an embodiment of the present invention provides a projection type recommendation method, a server, and a client.
  • the technical solutions provided by the embodiments of the present invention are described in detail below with reference to the specific embodiments. It should be noted that the order of presentation of the embodiments only represents the order of the embodiments, and does not represent the advantages and disadvantages of the technical solutions provided by the embodiments.
  • the embodiment of the present invention provides a server.
  • the host 300 where the server is located includes: at least one processor 301, a memory 302, and a communication interface 303; the at least one processor 301, the memory 302, and The communication interfaces 303 are all connected by a bus 304;
  • the memory 302 is configured to store a computer execution instruction.
  • the at least one processor 301 is configured to execute the computer-executed instructions stored in the memory 302, so that the host 300 performs data interaction with the host where the client is located through the communication interface 303 to perform a method provided by the embodiment of the present invention.
  • a recommended method of projection type among them,
  • the at least one processor 301 reads the program in the memory 302 and performs the following process:
  • the at least one processor 301 is configured to receive, by using the communication interface 303, a first request message sent by a client, where the first request message carries an identifier of an MPD file of the panoramic video;
  • the at least one processor 301 is further configured to acquire an MPD file according to the identifier of the MPD file, where the MPD file includes information of media fragments corresponding to at least two types of projections;
  • the at least one processor 301 is further configured to: return, by using the communication interface 303, a first response message to the client, where the first response message includes information about media fragments corresponding to the at least two types of projections. And recommending projection type information; wherein the recommended projection type information is used to indicate a projection type recommended to the client among the at least two projection types, including one of the at least two projection types or Priority indication information for a plurality of projection types of at least two projection types.
  • the at least one processor 301 is further configured to:
  • the communication interface 303 Sending, by the communication interface 303, the second response message to the client, where the second response message includes a media slice of the panoramic video indicated by the identifier of the media slice.
  • the recommended projection type information is used to indicate a projection type recommended to the client in the at least two projection types, specifically:
  • the recommended projection type information is used to indicate to the client that the projection type in the at least two projection types is recommended for the panoramic video; and/or,
  • the recommended projection type information is used to indicate that a projection type of the at least two projection types is recommended to the client for different time periods of the panoramic video; and/or,
  • the recommended projection type information is used to indicate that the projection types in the at least two projection types are respectively recommended to the client for different resolutions.
  • the recommended projection type information is included in the MPD file.
  • the first request message further includes device information of the client, where the device information of the client includes a device type of the client or a projection type supported by the client;
  • the method further includes:
  • the server determines the recommended projection type information according to the statistical data of the projection type selected by different clients in the system and the device type of the client; or
  • the server determines the recommended projection type information according to a projection type supported by the client.
  • the at least one processor 301 is further configured to: before returning the first response message to the client by using the communication interface 303:
  • the recommended projection type information is determined based on statistical data.
  • the at least one processor 301 may include different types of processors 301, or include the same type of processor 301; the processor 301 may be any one of the following: a central processing unit (Central Processing Unit, CPU, microprocessor, Field Programmable Gate Array (FPGA), dedicated processor and other devices with computational processing capabilities. In an optional implementation manner, the at least one processor 301 may also be integrated into a many-core processor.
  • a central processing unit Central Processing Unit, CPU, microprocessor, Field Programmable Gate Array (FPGA), dedicated processor and other devices with computational processing capabilities.
  • FPGA Field Programmable Gate Array
  • the at least one processor 301 may also be integrated into a many-core processor.
  • the memory 302 may be any one or any combination of the following: a random access memory (RAM), a read only memory (ROM), a non-volatile memory (non-volatile memory). , NVM), Solid State Drives (SSD), mechanical hard drives, disks, disk arrays and other storage media.
  • RAM random access memory
  • ROM read only memory
  • NVM non-volatile memory
  • SSD Solid State Drives
  • the communication interface 303 is used by the host 300 to perform data interaction with other devices, such as a host where the client is located.
  • the communication interface 303 may be any one or any combination of the following: a network interface (such as an Ethernet interface), a wireless network card, or the like having a network access function.
  • the bus 304 can include an address bus, a data bus, a control bus, etc., for ease of representation, Figure 3 shows the bus with a thick line.
  • the bus 304 may be any one or any combination of the following: an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, and an extended industry standard structure ( Extended Industry Standard Architecture (EISA) devices such as wired data transmission.
  • ISA Industry Standard Architecture
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the host 400 where the client is located includes: at least one processor 401, a memory 402, and a communication interface 403; the at least one processor 401, the memory 402 and the communication interface 403 are both connected by a bus 404;
  • the memory 402 is configured to store a computer execution instruction.
  • the at least one processor 401 is configured to execute the computer-executed instructions stored in the memory 402, so that the host 400 performs data interaction with the host where the client is located through the communication interface 403 to perform the method provided by the embodiment of the present invention.
  • a recommended method of projection type among them,
  • the at least one processor 401 reads the program in the memory 402 and performs the following process:
  • the at least one processor 401 is configured to send, by using the communication interface 403, a first request message to the server, where the first request message carries an identifier of the MPD file of the panoramic video;
  • the at least one processor 401 is further configured to receive, by using the communication interface 403, a first response message sent by the server, where the first response message includes information and recommended information of media fragments corresponding to at least two types of projections. Projection type information; wherein the recommended projection type information is used to indicate a projection type recommended to the client among the at least two projection types, including one of the at least two projection types or the at least one Priority indication information for multiple projection types of the two projection types.
  • the first response message includes an MPD file
  • the recommended projection type information is included in the MPD file.
  • the at least one processor 401 is further configured to:
  • the at least one processor 401 determines the optimal projection class type according to the device information of the client and the recommended projection type information, specifically, the method is used to:
  • the client supports the projection type, determining a projection type included in the recommended projection type information as the most Good projection type; or,
  • the recommended projection type information includes priority indication information of a plurality of projection types of the at least two projection types, among the plurality of projection types included in the recommended projection type information, the highest priority and the client The supported projection type is determined as the optimal projection type.
  • the first request message further includes device information of the client, where the device information of the client includes a device type of the client or a projection type supported by the client; the at least one The processor 401 is further configured to:
  • the at least one processor 401 may include different types of processors 401, or include the same type of processor 401; the processor 401 may be any of the following: a CPU, an ARM processor, an FPGA, A device with computational processing power such as a dedicated processor. In an optional implementation manner, the at least one processor 401 may also be integrated into a many-core processor.
  • the memory 402 may be any one or any combination of the following: a storage medium such as a RAM, a ROM, an NVM, an SSD, a mechanical hard disk, a magnetic disk, or a disk array.
  • a storage medium such as a RAM, a ROM, an NVM, an SSD, a mechanical hard disk, a magnetic disk, or a disk array.
  • the communication interface 403 is used by the host 400 to perform data interaction with other devices, such as a host where the server is located.
  • the communication interface 403 may be any one or any combination of the following: a network interface (such as an Ethernet interface), a wireless network card, or the like having a network access function.
  • the bus 404 can include an address bus, a data bus, a control bus, etc., for ease of representation, Figure 4 shows the bus with a thick line.
  • the bus 404 may be any one or any combination of the following: a device for wired data transmission such as an ISA bus, a PCI bus, or an EISA bus.
  • the server and the client provided by the embodiment of the present invention may implement a recommendation type of the projection to the client by the server, and provide the client with the information of the media segment of the panoramic video corresponding to the two projection types and the recommended projection type information by the server, so that the client The best-performing projection type can be selected according to the recommended projection type information, and then the media slice corresponding to the best-performing projection type can be obtained from the server.
  • the embodiment of the present invention can be used to solve the problem that the existing video of the existing client playing the panoramic video cannot be selected by the client to select the panoramic video corresponding to the best projection type, resulting in poor user experience.
  • the client can directly select the projection type with the best effect based on the recommended projection type information sent by the server, thereby avoiding the problem that the client randomly selects the projection type and causes the user experience to be poor in the prior art, and avoids the present situation.
  • the client needs to switch the network overhead of different projection types due to the selection of the less effective projection type.
  • the embodiment of the present invention provides a projection type recommendation method. As shown in FIG. 5, the interaction process between the server and the client in the method is as follows:
  • the client sends a first request message to the server, where the first request message carries an identifier of the MPD file of the panoramic video.
  • the identifier of the MPD file is used by the server to acquire an MPD file indicated by the identifier of the MPD file.
  • the identifier of the MPD file may be a Uniform Resource Idetifier (URI).
  • URI Uniform Resource Idetifier
  • the URI is http://example.com/mpd.
  • the first request message includes the following content:
  • the first request message sent by the client to the server may further include device information of the client, where the device information of the client may include a device type of the client or a projection type supported by the client, and the device type of the client may be Information about the type of terminal where the client is located, the model of the processor, and the model number of the chip.
  • the server can determine the recommended projection type information according to the device information of the client, and the method for the server to determine the recommended projection type information according to the device information of the client is described in detail below.
  • the first request message when the first request message includes device information of the client, the first request message includes the following content:
  • support-projection:cube,cylinder represents the device information of the client, that is, the projection type supported by the client is cube and cylinder.
  • the first request message is only an exemplary description.
  • the first request message in this embodiment may include other parameters in addition to the identifier of the MPD file, and details are not described herein again.
  • the server acquires an MPD file according to the identifier of the MPD file.
  • the MPD file includes information of media fragments corresponding to at least two types of projections, and the at least two types of projections may refer to projection types used when creating a panoramic video.
  • the information that the MPD file includes media slices corresponding to at least two projection types can be understood as the MPD file includes information of media slices of the panoramic video produced using each of the at least two projection types.
  • projection types include, but are not limited to, spheres, ellipsoids, cylinders, pyramids, octahedrons, and the like.
  • the information of the media segment corresponding to the projection type may be used to determine the identifier of the media segment corresponding to the projection type, and the identifier of the media segment may be used by the client to request the media of the panoramic video indicated by the identifier of the media segment.
  • a slice such as an identifier of a media slice, may be a Uniform Resource Locator (URL) of the media slice.
  • URL Uniform Resource Locator
  • the information of the media segment corresponding to the projection type may include: a projection type, a URL of the media slice corresponding to the projection type, a media type, an encoding type, a video frame rate, a code rate, a resolution, and the like.
  • the information of the media segment corresponding to the projection type included in the MPD file may be provided by a server or a third party.
  • the MPD file can be divided into the following two cases:
  • the MPD file in this embodiment refers to an existing MPD file.
  • the content structure of the existing MPD file can be seen in FIG. 2, and the existing MPD file does not include the recommended projection type information.
  • the MPD file in this embodiment refers to the MPD file, and the MPD file further includes recommended projection type information.
  • the contents of the MPD file including the recommended projection type information are as follows:
  • adaptationSet@projection indicates the projection as the property of the adaptationSet, that is, the projection type used by the projection for the media fragment under the adaptationSet.
  • Recommended projection type information Recommendedprojection In addition to being an element or attribute of the MPD, for different periods of time for panoramic video, the recommended projection type information can be used as a property of the Period, indicating the type of projection recommended in different Periods.
  • the hierarchical level of the recommended projection type information in the MPD is not limited in this embodiment, that is, the recommended projection type information can be used as an attribute of any one of MPD, Period, AdaptationSet, and Representation.
  • projections can be used as properties of Representation or subRepresentation in addition to the properties of the adaptations in Table 1.
  • the recommended projection type information is used to indicate a projection type recommended to the client among at least two projection types corresponding to the panoramic video.
  • the recommended projection type information will be described in detail below.
  • the server returns a first response message to the client, where the first response message includes information of media fragments corresponding to at least two types of projections and recommended projection type information.
  • the recommended projection type information is used to indicate a projection type recommended to the client in at least two projection types corresponding to the panoramic video, including one of the at least two projection types or the at least two projection types.
  • the server recommends to the client to use the panoramic video corresponding to the projection type, and the effect of the panoramic video corresponding to the projection type is better.
  • the recommended projection type information includes priority indication information of a plurality of projection types
  • the recommended projection type information includes a plurality of projection types, and indicates a priority that each of the plurality of projection types is recommended.
  • the priority indication information of the plurality of projection types included in the projection type information is a spherical shape, an ellipsoidal shape, or a cylinder, indicating that the server recommends a panoramic video corresponding to a sphere, an ellipsoid, and a cylinder to the client, and recommends the three.
  • the priority of the projection type is sequentially increased or decreased in the order of spheres, ellipsoids, and cylinders.
  • the priority indication information of the multiple projection types is indicated by the recommended values of the multiple projection types, for example, the recommended values corresponding to the sphere, the ellipsoid, and the cylinder are 1, 2, and 3, respectively, indicating that The three projection types have priority of spherical, ellipsoidal, and cylindrical.
  • the contents of the MPD file are as follows:
  • the recommended values for the body cylinder and the sphere sphere are 2, 3, and 1, respectively.
  • the recommended projection type information may be combined with the media information of the panoramic video, for example, the media information may be a resolution, a media type, an encoding type, a video frame rate, and the like.
  • the recommended projection types in the projection type information include a sphere, an ellipsoid, and a cylinder.
  • the resolution of the panoramic video is 1,000,000 bits/second
  • the sphere and the ellipse are used.
  • the recommended values for spheres and cylinders are 1, 2, and 3, respectively.
  • the recommended values for spheres, ellipsoids, and cylinders are 3, 1, and 2, respectively.
  • the contents of the MPD file are as follows:
  • the recommended projection type information may be used to indicate a projection type in at least two types of projections corresponding to the panoramic video for the panoramic video, and may also be used to indicate to the client for different time segments of the panoramic video.
  • the projection type of at least two projection types corresponding to the panoramic video is recommended, and may also be used to indicate that the projection type in the at least two projection types corresponding to the panoramic video is recommended to the client for different resolutions.
  • the manner of determining the recommended projection type information is not limited, and the director or the producer of the panoramic video may determine the recommended projection type information during the shooting or production process of the panoramic video, or may be determined by the content provider of the panoramic video.
  • the projection type information is recommended, and the server or the third party may determine the recommended projection type information through statistical data.
  • the first response message in S503 refers to a message for responding to the first request message.
  • the S503 server may return the first response message to the client in the following two manners:
  • the MPD file includes information about media fragments corresponding to at least two types of projections and recommended projection type information, and the server sends a first response message including the MPD file to the client.
  • the recommended projection type information included in the MPD file may be that the projection type information is already included in the MPD file when the server obtains the MPD file, and the server directly carries the acquired MPD file in the first response message.
  • the recommended projection type information included in the MPD file may also be that the MPD file does not include the projection type information when the server acquires the MPD file, and the server carries the projection type information determined by the server in the MPD file, and then carries the MPD file in the first In a response message.
  • the recommended projection type information included in the MPD file may also be that the projection type information is already included in the MPD file when the server acquires the MPD file, and the server itself determines the recommended projection type information, and then updates the included projection type information by using the recommended projection type information determined by the MPD file.
  • the recommended projection type information in the file carries the updated MPD file in the first response message.
  • the MPD file includes information about media fragments corresponding to at least two types of projections, and the server uses the recommended projection type information as a message parameter of the first response message, and then carries the message parameter and the first response message of the MPD file. Sent to the client.
  • the server determines the recommended projection type information.
  • the server may determine the recommended projection type information by:
  • Method 1 The MPD file contains projection type information, and the server determines the recommended projection type information according to the MPD file.
  • Method 2 The server determines the recommended projection type information based on the statistical data.
  • the statistics include the probability that the client selects different projection types as the best projection type.
  • the probability that the client selects a sphere, an ellipsoid, or a cylinder as the best projection type in the statistical data is 50%, 35%, and 15%, respectively.
  • the server can use the sphere as the projection type recommended to the client in the recommended projection type information.
  • the first request message sent by the client to the server in the S501 includes the device information of the client, and the device information of the client may include the device type of the client or the projection type supported by the client, and the device type of the client may be the client. Information such as the type of terminal, the model of the processor, and the model of the chip.
  • the server determines the recommended projection type information according to the device information of the client, including:
  • the server selects a projection type supported by the client from at least two projection types corresponding to the panoramic video as a projection type recommended to the client in the recommended projection type information. If the client supports one of the at least two projection types corresponding to the panoramic video, the server recommends the projection type supported by the client as the recommended projection type information to the client; if the client supports the panoramic video corresponding to the video For a plurality of projection types of at least two projection types, the server may use priority information of the plurality of projection types supported by the client as the recommended projection type information.
  • the server determines the projection type corresponding to the device type of the client according to the statistics of the projection type selected by the different clients in the system and the device type of the client, and then at least two corresponding to the panoramic video.
  • the projection type corresponding to the device type of the client is selected as the projection type recommended to the client in the recommended projection type information.
  • the statistical data of the projection type selected by different clients in the system may include a correspondence between the device type and the projection type, and the correspondence may be set by the server according to statistical data analysis.
  • the related operations and viewing information of the projection type are selected by different clients in the server statistical system, and the server can obtain the projection type selected by the client with the same device type through analysis and summary, thereby determining and maintaining the correspondence between the device type and the projection type. relationship.
  • the server statistics client selects the projection type related operation and viewing information, it can be determined by counting the number of times of the projection type, the viewing duration, and the probability of switching the projection type by the client of the same device type.
  • Projection type when a client with device type A views a panoramic video, most of the selected projection types are cubes, and rarely switch to other projection types, and when the cylinder is selected to view the panoramic video, it is always closed or switched to other.
  • Projection type at this time, for the panoramic video, set the optimal projection type corresponding to the client with device type A as a cube, or set the optimal projection type corresponding to the client with device type A as a cube and a sphere, but The recommended priority of the cube is higher than the recommended priority of the sphere.
  • the server can recommend the projection type to the client by using the above method.
  • the above method may further include the following steps to implement, by the server, transmitting the media segment of the panoramic video to the client:
  • the client After the client receives the first response message returned by the server, the client sends a second request message to the server, where the second request message includes an identifier of the media segment.
  • the server sends a second response message to the client, where the second response message includes a media slice of the panoramic video indicated by the identifier of the media slice.
  • the identifier of the media slice in the client determining S504 can be implemented as follows:
  • Manner 1 The client determines the optimal projection type according to the device information of the client and the recommended projection type information; then the client determines the media fragment according to the information of the media segment corresponding to the at least two projection types according to the optimal projection type. logo.
  • the client determines the projection type included in the recommended projection type information as the optimal projection. Type; or,
  • the client determines the highest priority among the plurality of projection types included in the recommended projection type information and the projection type supported by the client is determined as The best projection type.
  • the first method is applicable to a scenario in which the first request message does not carry the device information of the client.
  • Manner 2 The client determines the optimal projection type according to the recommended projection type information; then the client determines the identifier of the media segment according to the information of the media segment corresponding to the at least two projection types according to the optimal projection type.
  • the second method is applicable to the scenario in which the first request message carries the device information of the client.
  • the recommended projection type information is determined by the server based on the device information of the client, and the recommendation effect of the recommended projection type information is relatively accurate.
  • the client can directly use the projection type recommended by the recommended projection type information or the projection type with the highest priority among the plurality of projection types as the optimal projection type.
  • the client can select one projection type from the projection types supported by the client as the optimal projection type. For example, the client can select the optimal projection type in combination with the processing overhead of the panoramic video, the required bandwidth, and the like.
  • the client should also consider the media information supported by itself when selecting the optimal projection type.
  • the recommended projection type in the recommended projection type information is combined with the resolution of the panoramic video.
  • the recommended projection type in the projection type information includes a sphere, an ellipsoid, and a cylinder.
  • the best projection type for information selection is an ellipsoid.
  • the client determines the identifier of the media segment according to the information of the media segment corresponding to the at least two types of projections according to the optimal projection type, and specifically includes:
  • the information of the media fragments corresponding to the at least two projection types includes information of the media fragments corresponding to the optimal projection type.
  • the information of the media segment corresponding to the optimal projection type may determine the identifier of the media segment corresponding to the optimal projection type, and the identifier of the media segment carried in the second request message sent by the client to the server is the best projection type.
  • the identifier of the media slice is implemented by the client to request the server to obtain the media slice of the panoramic video indicated by the identifier of the media slice corresponding to the best projection type.
  • the information of the media segment corresponding to the at least two types of projections includes the information of the media segment of the panoramic video corresponding to the sphere, the ellipsoid, and the cylinder respectively, and the client selects the optimal projection type as a sphere, the client
  • the information of the media segment corresponding to the sphere is obtained from the information of the media segment corresponding to the at least two projection types. It is assumed that the information of the media segment corresponding to the sphere includes the URL of the media segment corresponding to the sphere, or the information of the media segment corresponding to the sphere can be determined by the information of the media segment corresponding to the sphere, and the client segments the media corresponding to the sphere.
  • the URL is carried in the second request message.
  • the server provides the client with the information of the media segment of the panoramic video corresponding to the two projection types and the recommended projection type information, so that the client can according to the recommended projection type information. Select the best-performing projection type to get the media shards corresponding to the best-performing projection type to the server.
  • the method provided by the embodiment of the present invention can be used to solve the problem that the existing video of the existing client playing the panoramic video cannot be selected by the client to select the panoramic video corresponding to the best projection type, resulting in poor user experience.
  • the client can directly select the projection type with the best effect based on the recommended projection type information sent by the server, thereby avoiding the problem that the client randomly selects the projection type and causes the user experience to be poor in the prior art, and avoids the present situation.
  • the client needs to switch the network overhead of different projection types due to the selection of the less effective projection type.
  • a server 600 which may be the same device as the server shown in FIG. 3, and may adopt the method performed by the server side in the second embodiment.
  • a server 600 includes: a receiving unit 601, a processing unit 602, and a sending unit 603. among them,
  • the receiving unit 601 is configured to receive a first request message sent by the client, where the first request message carries an identifier of the media presentation description MPD file of the panoramic video;
  • the processing unit 602 is configured to obtain an MPD file according to the identifier of the MPD file, where the MPD file includes information of media fragments corresponding to at least two types of projections;
  • the sending unit 603 is configured to return a first response message to the client, where the first response message includes information of media fragments corresponding to at least two types of projections and recommended projection type information; wherein the recommended projection type information is used to indicate at least A projection type recommended to a client in two projection types, including one of at least two projection types or a priority indication of a plurality of projection types of at least two projection types.
  • the receiving unit 601 is further configured to: receive a second request message that is sent by the client and that carries the identifier of the media segment;
  • the sending unit 603 is further configured to: send a second response message to the client, where the second response message includes a media slice of the panoramic video indicated by the identifier of the media segment.
  • the recommended projection type information is used to indicate a projection type recommended to the client in at least two projection types, specifically:
  • the recommended projection type information is used to indicate to the client that the projection type in at least two projection types is recommended to the client; and/or,
  • the recommended projection type information is used to indicate that the projection type in at least two projection types is recommended to the client for different time periods of the panoramic video; and/or,
  • the recommended projection type information is used to indicate that the projection types in at least two projection types are respectively recommended to the client for different resolutions.
  • the recommended projection type information is included in the MPD file.
  • the first request message further includes device information of the client, where the device information of the client includes a device type of the client or a projection type supported by the client;
  • the processing unit 602 is further configured to:
  • the sending unit 603 Before the sending unit 603 returns the first response message to the client, when the device information of the client includes the device type of the client, the recommended projection type information is determined according to the statistical data of the projection type selected by the different clients in the system and the device type of the client. ;or,
  • the sending unit 603 Before the sending unit 603 returns the first response message to the client, when the device information of the client includes the projection type supported by the client, the recommended projection type information is determined according to the projection type supported by the client.
  • processing unit 602 is further configured to:
  • the recommended projection type information is determined based on the statistical data before the transmitting unit 603 returns the first response message to the client.
  • a client 700 according to an embodiment of the present invention includes: a sending unit 701 and a receiving unit 702. among them,
  • the sending unit 701 is configured to send, to the server, a first request message, where the first request message carries an identifier of the media presentation description MPD file of the panoramic video;
  • the receiving unit 702 is configured to receive a first response message that is sent by the server, where the first response message includes information about media fragments corresponding to at least two types of projections and recommended projection type information; wherein the recommended projection type information is used to indicate at least The type of projection recommended to the client 700 of the two projection types includes one of at least two projection types or priority indication information for a plurality of projection types of at least two projection types.
  • the first response message includes an MPD file
  • the recommended projection type information is included in the MPD file.
  • the client 700 further includes a processing unit 703, configured to determine an optimal projection class type according to the device information of the client 700 and the recommended projection type information; and corresponding to at least two types according to the optimal projection type. Determining the identifier of the media slice according to the information of the media slice corresponding to the projection type;
  • the sending unit 701 is further configured to: send a second request message to the server, where the second request message includes an identifier of the media slice.
  • the processing unit 703 determines the optimal projection type according to the device information of the client 700 and the recommended projection type information, the processing unit 703 is specifically configured to:
  • the client 700 supports the projection type, determining the projection type included in the recommended projection type information as the optimal projection type; or
  • the recommended projection type information includes priority indication information of a plurality of projection types of at least two projection types, among the plurality of projection types included in the recommended projection type information, the highest priority and the projection type supported by the client 700 are determined as the most Good projection type.
  • the first request message further includes device information of the client 700, and the device information of the client 700 includes a device type of the client 700 or a projection type supported by the client 700.
  • the processing unit 703 is configured to determine an optimal projection type according to the recommended projection type information, and determine an identifier of the media segment according to the information of the media segment corresponding to the at least two projection types according to the optimal projection type;
  • the sending unit 701 is further configured to: send a second request message to the server, where the second request message includes an identifier of the media slice.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the server and the client provided by the embodiment of the present invention may implement a recommendation type of the projection to the client by the server, and provide the client with the information of the media segment of the panoramic video corresponding to the two projection types and the recommended projection type information by the server, so that the client The best-performing projection type can be selected according to the recommended projection type information, and then the media slice corresponding to the best-performing projection type can be obtained from the server.
  • the embodiment of the present invention can be used to solve the problem that the existing video of the existing client playing the panoramic video cannot be selected by the client to select the panoramic video corresponding to the best projection type, resulting in poor user experience.
  • the client can directly select the projection type with the best effect based on the recommended projection type information sent by the server, thereby avoiding the problem that the client randomly selects the projection type and causes the user experience to be poor in the prior art, and avoids the present situation.
  • the client needs to switch the network overhead of different projection types due to the selection of the less effective projection type.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention 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, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • 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.

Abstract

一种投影类型推荐方法、服务器及客户端,用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。方法包括:客户端向服务器发送包括全景视频的MPD文件的标识的第一请求消息;服务器根据MPD文件的标识,获取MPD文件,MPD文件包括至少两种投影类型对应的媒体分片的信息;服务器向客户端返回第一响应消息,第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;推荐投影类型信息用于指示至少两种投影类型中推荐给客户端的投影类型,包括至少两种投影类型中的一种投影类型或者至少两种投影类型中的多种投影类型的优先级指示信息。

Description

一种投影类型推荐方法、服务器及客户端
本申请要求于2017年3月7日提交中国专利局、申请号为201710132185.5、发明名称为“一种投影类型推荐方法、服务器及客户端”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及视频领域,尤其涉及一种投影类型推荐方法、服务器及客户端。
背景技术
全景视频也称为360度全景视频,全景视频是通过位于中心位置的相机对四周进行360o全景拍摄,用户观看时通过滑动屏幕或转动头部带动头盔来改变观察视角,播放全景视频的画面可以自动随之切换,用户好像身处真实环境中一样。
全景视频的基本制作播放过程可以简单概括为采集编码、内容传输以及解码渲染这三个阶段。采集编码阶段是指服务器通过部署在同一位置的多个镜头同步采集四周不同的画面,并将多个镜头拍摄的内容进行拼接,选择合适的投影类型投影对拼接内容进行投影处理并融合成一幅全景图像,再利用现有编码器对全景图像进行编码。内容传输阶段是指服务器采用媒体传输协议向客户端发送全景视频的过程。解码渲染阶段是指客户端先利用解码器对全景视频进行解码还原得到全景图像,根据投影类型对全景图像进行3D场景重建,再根据用户视角选择3D场景重建后的全景图像上的一部分图像投影呈现给用户。
目前,运动图像专家组(Moving Picture Experts Group,MPEG)标准组织正在制定中的全景应用格式(Omnidirectional Media Application Format,OMAF)标准中已经包括的投影类型有:球形(sphere)、椭球形(squished sphere)、圆柱体(cylinder)、棱锥体(pyramid)、八面体(octahedron)等。由于不同的投影类型所需要的处理开销不同,导致不同的终端设备可能仅支持某一种或某几种投影类型,因此在全景视频的采集编码阶段,需要服务器提供利用不同的投影类型进行投影处理的视频内容供终端选择。
采用不同的投影类型对同一组视频画面进行拼接投影出来的多个全景视频之间可能存在观看效果上的差异,导致这种差异的因素可能包括内容的复杂度、拍摄的实际场景、视频制作者期望重点突出的内容等等。当服务器提供采用不同投影类型得到的多种全景视频,并且客户端可以支持其中至少两种投影类型时,由于客户端无法提前确定采用各种投影类型得到的全景视频之间的效果差异,可能会选择到效果不太好的投影类型,进而用户无法体验到最佳的观影体验。或者客户端观看采用不同投影类型得到的全景视频的媒体分片之后才能选择效果最佳的投影类型,造成用户体验的大幅度降低。
综上所述,现有的客户端播放全景视频的方案中存在客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。
发明内容
本发明实施例提供了一种投影类型推荐方法、服务器及客户端,用以解决现有的客户 端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。
第一方面,本发明实施例提供的一种投影类型推荐方法,包括:
服务器接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识,MPD文件的标识可以是统一资源标识符URI;
所述服务器根据所述MPD文件的标识,获取MPD文件;其中,所述MPD文件包括至少两种投影类型对应的媒体分片的信息;
所述服务器向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
上述方法中,服务器获知客户端请求获取全景视频的MPD文件后,服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过上述方法可以实现服务器向客户端推荐投影类型,因此可以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。通过上述方法,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。
在一种可能的实现方式中,上述方法还包括:
所述服务器接收所述客户端发送的携带媒体分片的标识的第二请求消息,媒体分片的标识可以是统一资源定位符URL;
所述服务器向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。
其中,媒体分片的标识是指客户端根据服务器推荐的投影类型选择的效果最佳的投影类型对应的媒体分片的标识。这样,在服务器向客户端推荐投影类型后,服务器获知客户端请求获取效果最佳的投影类型对应的媒体分片后,向客户端返回最佳的投影类型对应的媒体分片,进而实现服务器向客户端传输媒体分片。
在一种可能的实现方式中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:
所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。
这样,服务器可以向客户端提供多种形式的推荐投影类型信息,进而客户端可以根据多种形式的推荐投影类型信息选择效果最佳的投影类型。
在一种可能的实现方式中,上述方法中的MPD文件可以分为如下两种情况:一种情况为:MPD文件是指现有的MPD文件,现有的MPD文件不包括推荐投影类型信息。
另一种情况为:MPD文件是指在现有的MPD文件的基础上,MPD文件还包括推荐投影类型信息。MPD文件包括的推荐投影类型信息不允许被更新,或者服务器可以利用自身确定的推荐投影类型信息更新MPD文件包括的推荐投影类型信息。
在一种可能的实现方式中,上述方法中可以通过如下两种方式实现,服务器将所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息发送给客户端:
方式一:MPD文件中包括至少两种投影类型对应的媒体分片的信息和推荐投影类型信息,服务器将包括该MPD文件的第一响应消息发送给客户端。
方式二:MPD文件中包括至少两种投影类型对应的媒体分片的信息,服务器将推荐投影类型信息作为第一响应消息的消息参数,然后将携带该消息参数和该MPD文件的第一响应消息发送给客户端。
在一种可能的实现方式中,推荐投影类型信息可以是服务器获取的MPD文件携带的,也可以是由服务器确定的。服务器可以通过如下几种方式确定推荐投影类型信息:
方式一:服务器根据统计数据确定推荐投影类型信息。
此方式尤其适用于MPD文件不包括推荐投影类型信息,并且第一请求消息不包括客户端的设备信息的场景。
方式二:客户端向服务器发送的第一请求消息中包括客户端的设备信息,该客户端的设备信息可以包括客户端的设备类型或者客户端支持的投影类型。服务器根据客户端的设备信息确定推荐投影类型信息,包括:
当所述客户端的设备信息包括所述客户端的设备类型时,所述服务器根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,
当所述客户端的设备信息包括所述客户端支持的投影类型时,所述服务器根据所述客户端支持的投影类型,确定所述推荐投影类型信息。
第二方面,本发明实施例提供的一种投影类型推荐方法,包括:
客户端向服务器发送第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
所述客户端接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
上述方法中,客户端向服务器请求获取全景视频的MPD文件后,客户端接收服务器提供的至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过上述方法可以实现服务器向客户端推荐投影类型,因此可以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。通过上述方法,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选 择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。
在一种可能的实现方式中,上述方法中可以通过如下两种方式实现,客户端接收服务器发送的所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息:
方式一:MPD文件中包括至少两种投影类型对应的媒体分片的信息和推荐投影类型信息,客户端接收服务器发送的包括该MPD文件的第一响应消息。
方式二:MPD文件中包括至少两种投影类型对应的媒体分片的信息,推荐投影类型信息作为第一响应消息的消息参数,客户端接收服务器发送的携带该消息参数和该MPD文件的第一响应消息。
在一种可能的实现方式中,客户端接收服务器发送的第一响应消息后,上述方法还包括:
客户端确定最佳投影类类型,再根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
所述客户端向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
这样,在服务器向客户端推荐投影类型后,客户端可以向服务器请求获取效果最佳的投影类型对应的媒体分片,进而客户端接收服务器返回的最佳的投影类型对应的媒体分片,进而实现服务器向客户端传输媒体分片。
在一种可能的实现方式中,可以通过如下两种方式实现客户端确定最佳投影类类型:
方式一:客户端根据客户端的设备信息以及推荐投影类型信息,确定最佳投影类类型。具体包括:
当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,所述客户端将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,
当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,所述客户端将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。
方式一尤其适用于第一请求消息不携带客户端的设备信息的场景。
方式二:客户端向服务器发送的第一请求消息还包括客户端的设备信息,以使服务器根据客户端的设备信息确定推荐投影类型信息。此场景下,客户端根据所述推荐投影类型信息,确定最佳投影类型。
方式二尤其适用于第一请求消息携带客户端的设备信息的场景,此场景下推荐投影类型信息是服务器基于客户端的设备信息确定的,推荐投影类型信息的推荐效果比较准确。客户端可以直接将推荐投影类型信息推荐的一种投影类型或者多种投影类型中优先级最高的投影类型作为最佳投影类型。
第三方面,本发明实施例提供的一种服务器,包括:
接收单元,用于接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
处理单元,用于根据所述MPD文件的标识,获取MPD文件;其中,所述MPD文件包括 至少两种投影类型对应的媒体分片的信息;
发送单元,用于向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
在一种可能的实现方式中,所述接收单元还用于:接收所述客户端发送的携带媒体分片的标识的第二请求消息;
所述发送单元还用于:向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。
在一种可能的实现方式中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:
所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。
在一种可能的实现方式中,所述推荐投影类型信息包含在所述MPD文件中。
在一种可能的实现方式中,所述第一请求消息还包括所述客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;
所述处理单元还用于:
在所述发送单元向所述客户端返回第一响应消息之前,当所述客户端的设备信息包括所述客户端的设备类型时,根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,
在所述发送单元向所述客户端返回第一响应消息之前,当所述客户端的设备信息包括所述客户端支持的投影类型时,根据所述客户端支持的投影类型,确定所述推荐投影类型信息。
在一种可能的实现方式中,所述处理单元还用于:
在所述发送单元向所述客户端返回第一响应消息之前,根据统计数据确定所述推荐投影类型信息。
第四方面,本发明实施例提供的一种客户端,包括:
发送单元,用于向服务器发送第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
接收单元,用于接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
在一种可能的实现方式中,所述第一响应消息包括MPD文件,所述推荐投影类型信息包含在所述MPD文件中。
在一种可能的实现方式中,所述客户端还包括处理单元,用于根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型;根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
所述发送单元还用于:向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
在一种可能的实现方式中,所述处理单元根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类型时,具体用于:
当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,
当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。
在一种可能的实现方式中,所述第一请求消息中还包括客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;
所述客户端还包括处理单元,用于根据所述推荐投影类型信息,确定最佳投影类型;根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
所述发送单元还用于:向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
第五方面,本发明实施例提供的一种服务器,包括存储器、处理器以及通信接口;其中,
所述存储器用于存储计算机可读程序;
所述处理器通过运行所述存储器中的程序,以完成第一方面及第一方面中任一可能的实现方式提供的方法;
所述通信接口用于在所述处理器的控制下接收和发送数据。
第六方面,本发明实施例提供的一种客户端,包括存储器、处理器以及通信接口;其中,
所述存储器用于存储计算机可读程序;
所述处理器通过运行所述存储器中的程序,以完成第二方面及第二方面中任一可能的实现方式提供的方法;
所述通信接口用于在所述处理器的控制下接收和发送数据。
附图说明
图1为本发明实施例提供的一种网络架构示意图;
图2为现有技术中MPD文件的内容结构示意图;
图3为本发明实施例提供的一种服务器的结构示意图;
图4为本发明实施例提供的一种客户端的结构示意图;
图5为本发明实施例提供的一种投影类型推荐方法的流程示意图;
图6为本发明实施例提供的另一种服务器的结构示意图;
图7为本发明实施例提供的另一种客户端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例提供一种投影类型推荐方法、服务器及客户端,用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。其中,方法和装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。
本发明实施例提供的技术方案涉及的网络架构如图1所示,包括服务器101和客户端102。服务器与客户端相对应,为用户提供本地服务的程序,本发明实施例涉及的客户端具有为用户播放全景视频功能,客户端上运行全景视频播放器,该播放器可以是安装在客户端上的一个应用,也可以是浏览器上的一个页面。客户端可以是无线终端设备,也可以是有线终端设备。无线终端设备可以是具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端设备可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信,无线终端设备可以是移动终端设备,如移动电话(或称为“蜂窝”电话)和具有移动终端设备的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。有线终端设备可以是有线电视机、有线计算机等。服务器是指提供计算服务的设备,服务器可响应客户端的服务请求,服务器具有承担服务并且保障服务的功能,本发明实施例涉及的服务器具有为客户端提供全景视频的功能。服务器的构成和通用的计算机架构类似,通常包括吹起、硬盘、内存、系统总线等,在处理能力、可靠性、稳定性、安全性、可扩展性、可管理性等方面要求较高,例如,服务器可以为个人电脑(Personal Computer,PC)服务器。客户端与服务器之间的通信支持通用的全景视频的媒体传输协议,例如实时传输协议(Real-Time Protocol,RTP)、实时流协议(Real-Time Streaming Protocol,RTSP)、超文本传送协议(HyperText Transfer Protocol,HTTP)、HTTP动态自适应流(Dynamic Adaptive Streaming over HTTP,DASH)媒体协议、HTTP直播流流(HTTP Live Streaming,HLS)媒体协议等。
本发明实施例涉及全景视频传输场景,具体涉及在客户端向服务器请求传输全景视频之前服务器为客户端推荐投影类型的场景。
全景视频也称为360度全景视频,全景视频是通过位于中心位置的相机对四周进行360o全景拍摄,用户观看时通过滑动屏幕或转动头部带动头盔来改变观察视角,播放全景视频的画面可以自动随之切换,用户好像身处真实环境中一样。
全景视频的基本制作播放过程可以简单概括为采集编码、内容传输以及解码渲染这三个阶段。采集编码阶段是指服务器通过部署在同一位置的多个镜头同步采集四周不同的画面,并将多个镜头拍摄的内容进行拼接,选择合适的投影类型投影对拼接内容进行投影处理并融合成一幅全景图像,再利用现有编码器对全景图像进行编码。内容传输阶段是指服务器采用媒体传输协议向客户端发送全景视频的过程。解码渲染阶段是指客户端先利用解码器对全景视频进行解码还原得到全景图像,根据投影类型对全景图像进行3D场景重建, 再根据用户视角选择3D场景重建后的全景图像上的一部分图像投影呈现给用户。
目前,运动图像专家组(Moving Picture Experts Group,MPEG)标准组织正在制定中的全景应用格式(Omnidirectional Media Application Format,OMAF)标准中已经包括的投影类型有:球形(sphere)、椭球形(squished sphere)、圆柱体(cylinder)、棱锥体(pyramid)、八面体(octahedron)等。随着全景视频技术的发展,投影类型可能不仅限于本发明实施例中提到的投影类型。
本发明实施例涉及的服务器和客户端可以基于DASH技术,也可以基于其他技术。以基于DASH技术为例,DASH技术主要是为了解决不同视频分发商使用不同的HTTP流媒体技术造成的部署和接收机制上的繁冗问题。DASH技术的主要特点是客户端可以根据网络状况如下载速度、缓存多少等,选择合适码率的媒体分片,媒体分发商根据客户端的选择,通过HTTP协议将媒体分片发送到客户端,以保证用户的观看体验。
现有的DASH标准主要规范了媒体展现描述(Media Presentation Description,MPD)文件和媒体分片(Segment)的格式。现有的MPD文件的内容结构如图2所示,MPD文件分为时间段(Period)、适应集(Adaptation Set)、描述(Representation)、分片(Segment)共4个层次。一个MPD文件由一个或多个连续的period组成,一个Period表示一个媒体时间段,有起始时间和结束时间;一个period包含一个或多个Adaptation Set,每个Adaptation Set通常对应着一种媒体成分,如音频、视频、字幕等。以视频的MPD文件为例,一个视频的Adaptation Set通常包括多个Representation,不同Representation对应不同的码率、分辨率等其它特征,同一个Adaptation Set包含的多个Representation之间能够进行动态自适应切换;每个Representation由一个或多个媒体分片组成,分媒体片是MPD的基本单元,客户端可以通过MPD文件中的媒体分片的统一资源定位符(Uniform Resource Locator,URL)向服务器获取和处理媒体分片以实现流媒体服务。
在全景视频传输场景中,客户端首先向服务器获取全景视频的MPD文件,它是一个元数据文件,提供了客户端如何访问全景视频的媒体分片的信息。由于不同的投影类型所需要的处理开销不同,导致不同的终端设备可能仅支持某一种或某几种投影类型,因此需要提供至少两种投影类型对应的全景视频供客户端选择,这至少两种投影类型是指制作全景视频时所采用的投影类型,这样全景视频的MPD文件应包括至少两种投影类型对应的全景视频的媒体分片的信息。
采用不同的投影类型对同一组视频画面进行拼接投影出来的多个全景视频之间可能存在观看效果上的差异,导致这种差异的因素可能包括内容的复杂度、拍摄的实际场景、视频制作者期望重点突出的内容等等。当服务器提供采用不同投影类型得到的多种全景视频,并且客户端可以支持其中至少两种投影类型时,现有技术中,由于客户端无法提前确定采用各种投影类型得到的全景视频之间的效果差异,可能会选择到效果不太好的投影类型,进而用户无法体验到最佳的观影体验。或者客户端观看采用不同投影类型得到的全景视频的媒体分片之后才能选择效果最佳的投影类型,造成用户体验的大幅度降低。
基于现有技术存在的上述问题,本发明实施例提供一种投影类型推荐方法、服务器及客户端。下面通过具体实施例详细说明本发明实施例提供的技术方案,需要说明的是,实施例的展示顺序仅代表实施例的先后顺序,并不代表实施例所提供的技术方案的优劣。
实施例一
本发明实施例提供了一种服务器,参阅图3所示,该服务器所在的主机300包括:至少一个处理器301、存储器302和通信接口303;所述至少一个处理器301、所述存储器302和所述通信接口303均通过总线304连接;
所述存储器302,用于存储计算机执行指令。
所述至少一个处理器301,用于执行所述存储器302存储的计算机执行指令,使得所述主机300通过所述通信接口303与客户端所在的主机进行数据交互来执行本发明实施例提供的一种投影类型推荐方法。其中,
所述至少一个处理器301读取存储器302中的程序,执行下列过程:
所述至少一个处理器301,用于通过所述通信接口303接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的MPD文件的标识;
所述至少一个处理器301,还用于根据所述MPD文件的标识,获取MPD文件;其中,所述MPD文件包括至少两种投影类型对应的媒体分片的信息;
所述至少一个处理器301,还用于通过所述通信接口303向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
在一种可能的实现方式中,所述至少一个处理器301,还用于:
通过所述通信接口303接收所述客户端发送的携带媒体分片的标识的第二请求消息;
通过所述通信接口303向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。
在一种可能的实现方式中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:
所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。
在一种可能的实现方式中,所述推荐投影类型信息包含在所述MPD文件中。
在一种可能的实现方式中,所述第一请求消息还包括所述客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;
在所述服务器向所述客户端返回第一响应消息之前,所述方法还包括:
当所述客户端的设备信息包括所述客户端的设备类型时,所述服务器根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,
当所述客户端的设备信息包括所述客户端支持的投影类型时,所述服务器根据所述客户端支持的投影类型,确定所述推荐投影类型信息。
在一种可能的实现方式中,所述至少一个处理器301在通过所述通信接口303向所述 客户端返回第一响应消息之前,还用于:
根据统计数据确定所述推荐投影类型信息。
本实施例中,所述至少一个处理器301,可以包括不同类型的处理器301,或者包括相同类型的处理器301;处理器301可以是以下的任一种:中央处理器(Central Processing Unit,CPU)、微处理器、现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用处理器等具有计算处理能力的器件。一种可选实施方式,所述至少一个处理器301还可以集成为众核处理器。
所述存储器302可以是以下的任一种或任一种组合:随机存取存储器(Random Access Memory,RAM)、只读存储器(read only memory,ROM)、非易失性存储器(non-volatile memory,NVM)、固态硬盘(Solid State Drives,SSD)、机械硬盘、磁盘、磁盘整列等存储介质。
所述通信接口303用于主机300与其他设备(例如客户端所在的主机)进行数据交互。通信接口303可以是以下的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。
所述总线304可以包括地址总线、数据总线、控制总线等,为便于表示,图3用一条粗线表示该总线。所述总线304可以是以下的任一种或任一种组合:工业标准体系结构(Industry Standard Architecture,ISA)总线、外设组件互连标准(Peripheral Component Interconnect,PCI)总线、扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等有线数据传输的器件。
本发明实施例提供了一种客户端,参阅图4所示,该客户端所在的主机400包括:至少一个处理器401、存储器402和通信接口403;所述至少一个处理器401、所述存储器402和所述通信接口403均通过总线404连接;
所述存储器402,用于存储计算机执行指令。
所述至少一个处理器401,用于执行所述存储器402存储的计算机执行指令,使得所述主机400通过所述通信接口403与客户端所在的主机进行数据交互来执行本发明实施例提供的一种投影类型推荐方法。其中,
所述至少一个处理器401读取存储器402中的程序,执行下列过程:
所述至少一个处理器401,用于通过所述通信接口403向服务器发送第一请求消息,所述第一请求消息携带全景视频的MPD文件的标识;
所述至少一个处理器401,还用于通过所述通信接口403接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
在一种可能的实现方式中,所述第一响应消息包括MPD文件,所述推荐投影类型信息包含在所述MPD文件中。
在一种可能的实现方式中,所述至少一个处理器401还用于:
根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型;
根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
通过所述通信接口403向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
在一种可能的实现方式中,所述至少一个处理器401根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型时,具体用于:
当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,
当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。
在一种可能的实现方式中,所述第一请求消息中还包括客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;所述至少一个处理器401还用于:
根据所述推荐投影类型信息,确定最佳投影类型;
根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
通过所述通信接口403向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
本实施例中,所述至少一个处理器401,可以包括不同类型的处理器401,或者包括相同类型的处理器401;处理器401可以是以下的任一种:CPU、ARM处理器、FPGA、专用处理器等具有计算处理能力的器件。一种可选实施方式,所述至少一个处理器401还可以集成为众核处理器。
所述存储器402可以是以下的任一种或任一种组合:RAM、ROM、NVM、SSD、机械硬盘、磁盘、磁盘整列等存储介质。
所述通信接口403用于主机400与其他设备(例如服务器所在的主机)进行数据交互。通信接口403可以是以下的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。
所述总线404可以包括地址总线、数据总线、控制总线等,为便于表示,图4用一条粗线表示该总线。所述总线404可以是以下的任一种或任一种组合:ISA总线、PCI总线、EISA总线等有线数据传输的器件。
本发明实施例提供的服务器和客户端可以实现服务器向客户端推荐投影类型,通过服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过本发明实施例可以用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。本发明实施例中,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。
实施例二
本发明实施例提供了一种投影类型推荐方法,如图5所示,该方法中服务器与客户端的交互流程如下:
S501、客户端向服务器发送第一请求消息,该第一请求消息携带全景视频的MPD文件的标识。
S501中,MPD文件的标识用于服务器获取该MPD文件的标识指示的MPD文件。MPD文件的标识可以是统一资源标识符(Uniform Resource Idetifier,URI),以URI是http://example.com/mpd为例,第一请求消息包括如下内容:
GET http://example.com/mpd HTTP/1.1
Host:media.com
Connection:keep-alive
本实施例的S501中客户端向服务器发送的第一请求消息中还可以包括客户端的设备信息,该客户端的设备信息可以包括客户端的设备类型或者客户端支持的投影类型,客户端的设备类型可以为客户端所在终端的类型、处理器的型号、芯片的型号等信息。使得服务器可以根据客户端的设备信息确定推荐投影类型信息,服务器根据客户端的设备信息确定推荐投影类型信息的方法会在下文中详细描述。
示例性的,第一请求消息包括客户端的设备信息时,第一请求消息包括如下内容:
GET http://example.com/mpd HTTP/1.1
Host:media.com
Connection:keep-alive
support-projection:cube、cylinder
上述第一请求消息中support-projection:cube、cylinder表示客户端的设备信息,即表示客户端支持的投影类型为cube和cylinder。
需要说明的是,上述第一请求消息仅为示例性说明,本实施例中的第一请求消息除包括MPD文件的标识之外,还可以包括其他参数,此处不再一一赘述。
S502、服务器根据MPD文件的标识,获取MPD文件。
S502中,MPD文件包括至少两种投影类型对应的媒体分片的信息,该至少两种投影类型可以是指制作全景视频时所采用的投影类型。因此MPD文件包括至少两种投影类型对应的媒体分片的信息可以理解为,MPD文件包括采用至少两种投影类型中的每种投影类型制作的全景视频的媒体分片的信息。
其中,投影类型包括但不限于球形、椭球形、圆柱体、棱锥体、八面体等。一种投影类型对应的媒体分片的信息可以用于确定该投影类型对应的媒体分片的标识,该媒体分片的标识可用于客户端请求获取该媒体分片的标识指示的全景视频的媒体分片,例如媒体分片的标识可以是该媒体分片的统一资源定位符(Uniform Resource Locator,URL)。示例性的,一种投影类型对应的媒体分片的信息可以包括:投影类型以及该投影类型对应的媒体分片的URL、媒体类型、编码类型、视频帧率、码率、分辨率等。本实施例中,MPD文件包括的投影类型对应的媒体分片的信息可以由服务器或者第三方提供。
本实施例中,MPD文件可以分为如下两种情况:
一种情况为:本实施例中的MPD文件是指现有的MPD文件。示例性的,现有的MPD文件的 内容结构可参见如图2所示,现有的MPD文件不包括推荐投影类型信息。
另一种情况为:本实施例中的MPD文件是指在现有的MPD文件的基础上,MPD文件还包括推荐投影类型信息。
示例性的,包括推荐投影类型信息的MPD文件的内容如下:
Figure PCTCN2018076504-appb-000001
Figure PCTCN2018076504-appb-000002
上述包括推荐投影类型信息的MPD文件中部分属性的描述如下表一所示:
表一
Figure PCTCN2018076504-appb-000003
上述表一中,adaptationSet@projection表示projection作为adaptationSet的属性,即projection为该adaptionSet下媒体分片所采用的投影类型。推荐投影类型信息Recommendedprojection除了可以作为MPD的元素或属性之外,针对全景视频的不同时间段Period,推荐投影类型信息可以作为Period的属性,表示不同Period中推荐的投影类型。本实施例中并不限定推荐投影类型信息在MPD中所处的层级,即推荐投影类型信息可以作为MPD、Period、AdaptationSet以及Representation中任意一个层级的属性。同样地,projection除了如表一中作为adaptionSet的属性以外,还可以作为Representation或者 subRepresentation的属性。
上述两种情况中,推荐投影类型信息用于指示全景视频对应的至少两种投影类型中推荐给客户端的投影类型。下文中会对推荐投影类型信息做详细描述。
S503、服务器向客户端返回第一响应消息,该第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息。
本实施例中,推荐投影类型信息用于指示全景视频对应的至少两种投影类型中推荐给客户端的投影类型,包括该至少两种投影类型中的一种投影类型或者该至少两种投影类型中的多种投影类型的优先级指示信息。
其中,推荐投影类型信息包括一种投影类型时,表示服务器向客户端推荐采用该投影类型对应的全景视频,客户端播放该投影类型对应的全景视频的效果较佳。
推荐投影类型信息包括多种投影类型的优先级指示信息时,表示推荐投影类型信息包括多种投影类型,并且指示该多种投影类型中每种投影类型被推荐的优先级。例如,推荐投影类型信息中包括的多种投影类型的优先级指示信息为球形、椭球形、圆柱体,表示服务器向客户端推荐球形、椭球形和圆柱体分别对应的全景视频,并且推荐这三种投影类型的优先级按照球形、椭球形、圆柱体的顺序依次增强或减弱。又例如,推荐投影类型信息中通过多种投影类型的推荐值来指示多种投影类型的优先级指示信息,比如球形、椭球形、圆柱体对应的推荐值分别为1、2、3,表示这三种投影类型的优先级为球形、椭球形、圆柱体。
示例性的,推荐投影类型信息中通过多种投影类型的推荐值来指示多种投影类型的优先级指示信息时,MPD文件的内容如下:
Figure PCTCN2018076504-appb-000004
Figure PCTCN2018076504-appb-000005
上述MPD文件的内容中,projection="cube",recommended=“2”>、projection="cylinder",recommended=“3”>、projection="sphere",recommended=“1”>表示立方体cube、圆柱体cylinder、球体sphere的推荐值分别为2、3、1。
本实施例中,推荐投影类型信息可以与全景视频的媒体信息相结合,例如媒体信息可以为分辨率、媒体类型、编码类型、视频帧率等。以推荐投影类型信息与全景视频的分辨率相结合为例,推荐投影类型信息中推荐的投影类型包括球形、椭球形、圆柱体,当全景视频的分辨率为1000000比特/秒时,球形、椭球形、圆柱体对应的推荐值分别为1、2、3;当全景视频的分辨率为500000比特/秒时,球形、椭球形、圆柱体对应的推荐值分别为3、1、2。
示例性的,推荐投影类型信息与全景视频的分辨率相结合时,MPD文件的内容如下:
Figure PCTCN2018076504-appb-000006
Figure PCTCN2018076504-appb-000007
通过上述MPD文件的内容可知,对于立方体cube,当分辨率bandwidth="1000000"时,cube的推荐值为2,当分辨率bandwidth="500000"时,cube的推荐值为4。
本实施例中,推荐投影类型信息可以用于指示针对全景视频向客户端推荐全景视频对应的至少两种投影类型中的投影类型,也可以用于指示针对全景视频的不同时间段分别向客户端推荐全景视频对应的至少两种投影类型中的投影类型,还可以用于指示针对不同分辨率分别向客户端推荐全景视频对应的至少两种投影类型中的投影类型。
本实施例中并不限定确定推荐投影类型信息的方式,可以由全景视频的导演或者制作方在全景视频的拍摄或制作过程中确定推荐投影类型信息,也可以是由全景视频的内容提供方确定推荐投影类型信息,还可以是服务器或第三方通过统计数据确定推荐投影类型信息。
S503中第一响应消息是指用于响应第一请求消息的消息。本实施例中可以通过如下两种方式实现S503服务器向客户端返回第一响应消息:
方式一:MPD文件中包括至少两种投影类型对应的媒体分片的信息和推荐投影类型信息,服务器将包括该MPD文件的第一响应消息发送给客户端。
方式一,MPD文件中包括的推荐投影类型信息可以是,服务器获取MPD文件时投影类型信息已经包含在该MPD文件中,服务器将获取的MPD文件直接携带在第一响应消息中。
MPD文件中包括的推荐投影类型信息也可以是,服务器获取MPD文件时该MPD文件不包括投影类型信息,服务器将自身确定的投影类型信息携带在该MPD文件中,然后将该MPD文件携带在第一响应消息中。
MPD文件中包括的推荐投影类型信息还可以是,服务器获取MPD文件时投影类型信息已经包含在该MPD文件中,服务器自身确定推荐投影类型信息,然后利用自身确定的推荐投影类型信息更新包含于MPD文件中的推荐投影类型信息,将更新后的MPD文件携带在第一响应消息中。
方式二:MPD文件中包括至少两种投影类型对应的媒体分片的信息,服务器将推荐投影类型信息作为第一响应消息的消息参数,然后将携带该消息参数和该MPD文件的第一响应消息发送给客户端。
方式二中,服务器获取MPD文件后,自身确定推荐投影类型信息。
本实施例中,服务器可以通过如下方式确定推荐投影类型信息:
方式一:MPD文件中包含投影类型信息,服务器根据MPD文件确定推荐投影类型信息。
方式二:服务器根据统计数据确定推荐投影类型信息。
假设,统计数据包括客户端选择不同投影类型作为最佳投影类型的概率,例如统计数据中客户端选择球形、椭球形、圆柱体作为最佳投影类型的概率分别为50%、35%、15%,服务器可以根据该统计数据将球形作为推荐投影类型信息中推荐给客户端的投影类型。
方式三:S501中客户端向服务器发送的第一请求消息中包括客户端的设备信息,该客户端的设备信息可以包括客户端的设备类型或者客户端支持的投影类型,客户端的设备类型可以为客户端所在终端的类型、处理器的型号、芯片的型号等信息。服务器根据客户端的设备信息确定推荐投影类型信息,具体包括:
当客户端的设备信息包括客户端支持的投影类型时,服务器从全景视频对应的至少两种投影类型中选择客户端支持的投影类型作为推荐投影类型信息中推荐给客户端的投影类型。其中,若客户端支持全景视频对应的至少两种投影类型中的一种投影类型,则服务器将客户端支持的该投影类型作为推荐投影类型信息推荐给客户端;若客户端支持全景视频对应的至少两种投影类型中的多种投影类型,则服务器可将客户端支持的该多种投影类型的优先级信息作为推荐投影类型信息。
当客户端的设备信息包括客户端的设备类型时,服务器根据系统中不同客户端选择的投影类型的统计数据和客户端的设备类型,确定客户端的设备类型对应的投影类型,再从全景视频对应的至少两种投影类型中选择客户端的设备类型对应的投影类型作为推荐投影类型信息中推荐给客户端的投影类型。
其中,系统中不同客户端选择的投影类型的统计数据可以包括设备类型与投影类型的对应关系,该对应关系可以是服务器根据统计数据分析设置的。具体包括:服务器统计系统中不同客户端选择投影类型的相关操作及观看信息,服务器通过分析总结可以得出具有相同设备类型的客户端选择的投影类型,进而确定并维护设备类型与投影类型的对应关系。服务器统计客户端选择投影类型的相关操作及观看信息时,可以通过统计相同设备类型的客户端选择某种投影类型的次数、观看时长以及切换投影类型的概率等来确定。
例如,设备类型为A的客户端观看某全景视频时大多选择的投影类型为立方体,并且极少切换到其他投影类型,而选择圆柱体观看该全景视频时,总是很快关闭或者切换成其他投影类型;此时针对该全景视频,将设备类型为A的客户端对应的最佳投影类型设置为立方体,或者将设备类型为A的客户端对应的最佳投影类型设置为立方体和球体,但立方体的推荐优先级高于球体的推荐优先级。
本实施例中,通过上述方法可以实现服务器向客户端推荐投影类型。上述方法还可以包括如下步骤,以实现服务器向客户端传输全景视频的媒体分片:
S504、客户端接收到服务器返回的第一响应消息之后,客户端向服务器发送第二请求消息,该第二请求消息中包括媒体分片的标识;
S505、服务器向客户端发送第二响应消息,第二响应消息包括媒体分片的标识指示的全景视频的媒体分片。
本实施例中,可以通过如下方式实现客户端确定S504中的媒体分片的标识:
方式一:客户端根据客户端的设备信息以及推荐投影类型信息,确定最佳投影类类型;然后客户端根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体 分片的标识。
其中,当推荐投影类型信息包括全景视频对应的至少两种投影类型中的一种投影类型,并且客户端支持该投影类型时,客户端将推荐投影类型信息中包含的投影类型确定为最佳投影类型;或者,
当推荐投影类型信息包括至少两种投影类型中的多种投影类型的优先级指示信息时,客户端将推荐投影类型信息包括的多种投影类型中优先级最高且客户端支持的投影类型确定为最佳投影类型。
方式一尤其适用于第一请求消息不携带客户端的设备信息的场景。
方式二:客户端根据推荐投影类型信息,确定最佳投影类型;然后客户端根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识。
方式二尤其适用于第一请求消息携带客户端的设备信息的场景,此场景下推荐投影类型信息是服务器基于客户端的设备信息确定的,推荐投影类型信息的推荐效果比较准确。客户端可以直接将推荐投影类型信息推荐的一种投影类型或者多种投影类型中优先级最高的投影类型作为最佳投影类型。
上述两种方式中,如果客户端不支持推荐投影类型信息中推荐的投影类型时,客户端可以从自身支持的投影类型中选择一种投影类型作为最佳投影类型。例如客户端可以结合全景视频的处理开销、所需带宽等因素选择最佳投影类型。
如果推荐投影类型信息中推荐的投影类型与全景视频的媒体信息相结合,则客户端在选择最佳投影类型时还应考虑自身支持的媒体信息。以推荐投影类型信息中推荐的投影类型与全景视频的分辨率相结合为例,推荐投影类型信息中推荐的投影类型包括球形、椭球形、圆柱体,当全景视频的分辨率为1000000比特/秒时,球形、椭球形、圆柱体对应的推荐值分别为1、2、3(推荐值越小表示推荐的优先级越高);当全景视频的分辨率为width="640"height="480"时,球形、椭球形、圆柱体对应的推荐值分别为3、1、2。在客户端支持的投影类型为球形和椭球形,并且客户端根据设备能力以及当前带宽等确定选择的分辨率为width="640"height="480"的情况下,客户端根据上述推荐投影类型信息选择的最佳投影类型为椭球形。
上述两种方式中,客户端根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识,具体包括:
由于至少两种投影类型中包括最佳投影类型,因此至少两种投影类型对应的媒体分片的信息包括最佳投影类型对应的媒体分片的信息。最佳投影类型对应的媒体分片的信息可以确定最佳投影类型对应的媒体分片的标识,客户端向服务器发送的第二请求消息中携带的媒体分片的标识为最佳投影类型对应的媒体分片的标识,以实现客户端向服务器请求获取最佳投影类型对应的媒体分片的标识指示的全景视频的媒体分片。
例如,至少两种投影类型对应的媒体分片的信息包括球形、椭球形、圆柱体分别对应的全景视频的媒体分片的信息,在客户端选择的最佳投影类型为球形的情况下,客户端从至少两种投影类型对应的媒体分片的信息中获得球形对应的媒体分片的信息。假设球形对应的媒体分片的信息包括球形对应的媒体分片的URL,或者通过球形对应的媒体分片的信息可以确定球形对应的媒体分片的URL,客户端将球形对应的媒体分片的URL携带在第二请求消息中。
本发明实施例提供的一种投影类型推荐方法中,通过服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过本发明实施例提供的方法可以用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。本发明实施例中,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。
实施例三
基于以上实施例,本发明实施例还提供了一种服务器,该服务器可以是与图3所示的服务器相同的设备,可以采用实施例二中服务器侧执行的方法。参阅图6所示,本发明实施例提供的一种服务器600包括:接收单元601、处理单元602和发送单元603。其中,
接收单元601,用于接收客户端发送的第一请求消息,该第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
处理单元602,用于根据MPD文件的标识,获取MPD文件;其中,MPD文件包括至少两种投影类型对应的媒体分片的信息;
发送单元603,用于向客户端返回第一响应消息,该第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,推荐投影类型信息用于指示至少两种投影类型中推荐给客户端的投影类型,包括至少两种投影类型中的一种投影类型或者至少两种投影类型中的多种投影类型的优先级指示信息。
在一种可能的实现方式中,接收单元601还用于:接收客户端发送的携带媒体分片的标识的第二请求消息;
发送单元603还用于:向客户端发送第二响应消息,第二响应消息包括媒体分片的标识指示的全景视频的媒体分片。
在一种可能的实现方式中,推荐投影类型信息用于指示至少两种投影类型中推荐给客户端的投影类型,具体为:
推荐投影类型信息用于指示针对全景视频向客户端推荐至少两种投影类型中的投影类型;和/或,
推荐投影类型信息用于指示针对全景视频的不同时间段分别向客户端推荐至少两种投影类型中的投影类型;和/或,
推荐投影类型信息用于指示针对不同分辨率分别向客户端推荐至少两种投影类型中的投影类型。
在一种可能的实现方式中,推荐投影类型信息包含在MPD文件中。
在一种可能的实现方式中,第一请求消息还包括客户端的设备信息,客户端的设备信息包括客户端的设备类型或者客户端支持的投影类型;
处理单元602还用于:
在发送单元603向客户端返回第一响应消息之前,当客户端的设备信息包括客户端的设备类型时,根据系统中不同客户端选择的投影类型的统计数据以及客户端的设备类型, 确定推荐投影类型信息;或者,
在发送单元603向客户端返回第一响应消息之前,当客户端的设备信息包括客户端支持的投影类型时,根据客户端支持的投影类型,确定推荐投影类型信息。
在一种可能的实现方式中,处理单元602还用于:
在发送单元603向客户端返回第一响应消息之前,根据统计数据确定推荐投影类型信息。
上述各个单元的功能可参见实施例二客户端侧执行的方法,此处不再赘述。
基于以上实施例,本发明实施例还提供了一种客户端,该客户端可以是与图4所示的客户端相同的设备,可以采用实施例二中客户端侧执行的方法。参阅图7所示,本发明实施例提供的一种客户端700包括:发送单元701和接收单元702。其中,
发送单元701,用于向服务器发送第一请求消息,该第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
接收单元702,用于接收服务器发送的第一响应消息,该第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,推荐投影类型信息用于指示至少两种投影类型中推荐给客户端700的投影类型,包括至少两种投影类型中的一种投影类型或者至少两种投影类型中的多种投影类型的优先级指示信息。
在一种可能的实现方式中,第一响应消息包括MPD文件,推荐投影类型信息包含在MPD文件中。
在一种可能的实现方式中,客户端700还包括处理单元703,用于根据客户端700的设备信息以及推荐投影类型信息,确定最佳投影类类型;根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
发送单元701还用于:向服务器发送第二请求消息,第二请求消息中包括媒体分片的标识。
在一种可能的实现方式中,处理单元703根据客户端700的设备信息以及推荐投影类型信息,确定最佳投影类型时,具体用于:
当推荐投影类型信息包括至少两种投影类型中的一种投影类型,并且客户端700支持该投影类型时,将推荐投影类型信息中包含的投影类型确定为最佳投影类型;或者,
当推荐投影类型信息包括至少两种投影类型中的多种投影类型的优先级指示信息时,将推荐投影类型信息包括的多种投影类型中优先级最高且客户端700支持的投影类型确定为最佳投影类型。
在一种可能的实现方式中,第一请求消息中还包括客户端700的设备信息,客户端700的设备信息包括客户端700的设备类型或者客户端700支持的投影类型;
处理单元703用于:根据推荐投影类型信息,确定最佳投影类型;根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
发送单元701还用于:向服务器发送第二请求消息,第二请求消息中包括媒体分片的标识。
上述各个单元的功能可参见实施例二客户端侧执行的方法,此处不再赘述。
需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成 在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本发明实施例提供的服务器和客户端可以实现服务器向客户端推荐投影类型,通过服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过本发明实施例可以用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。本发明实施例中,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (24)

  1. 一种投影类型推荐方法,其特征在于,包括:
    服务器接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
    所述服务器根据所述MPD文件的标识,获取MPD文件;其中,所述MPD文件包括至少两种投影类型对应的媒体分片的信息;
    所述服务器向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
  2. 如权利要求1所述的方法,其特征在于,所述方法还包括:
    所述服务器接收所述客户端发送的携带媒体分片的标识的第二请求消息;
    所述服务器向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。
  3. 如权利要求1或2所述的方法,其特征在于,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:
    所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
    所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
    所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。
  4. 如权利要求1至3任一所述的方法,其特征在于,所述推荐投影类型信息包含在所述MPD文件中。
  5. 如权利要求1至3任一所述的方法,其特征在于,所述第一请求消息还包括所述客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;
    在所述服务器向所述客户端返回第一响应消息之前,所述方法还包括:
    当所述客户端的设备信息包括所述客户端的设备类型时,所述服务器根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,
    当所述客户端的设备信息包括所述客户端支持的投影类型时,所述服务器根据所述客户端支持的投影类型,确定所述推荐投影类型信息。
  6. 如权利要求1至3任一所述的方法,其特征在于,在所述服务器向所述客户端返回第一响应消息之前,所述方法还包括:
    所述服务器根据统计数据确定所述推荐投影类型信息。
  7. 一种投影类型推荐全景视频传输方法,其特征在于,包括:
    客户端向服务器发送第一请求消息,所述第一请求消息携带全景视频的媒体展示描述 MPD文件的标识;
    所述客户端接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
  8. 如权利要求7所述的方法,其特征在于,所述第一响应消息包括MPD文件,所述推荐投影类型信息包含在所述MPD文件中。
  9. 如权利要求7或8所述的方法,其特征在于,所述方法还包括:
    所述客户端根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型;
    所述客户端根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
    所述客户端向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
  10. 如权利要求9所述的方法,其特征在于,所述客户端根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类型,包括:
    当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,所述客户端将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,
    当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,所述客户端将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。
  11. 如权利要求7或8所述的方法,其特征在于,所述第一请求消息中还包括客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;所述方法还包括:
    所述客户端根据所述推荐投影类型信息,确定最佳投影类型;
    所述客户端根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
    所述客户端向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
  12. 一种服务器,其特征在于,包括:
    接收单元,用于接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
    处理单元,用于根据所述MPD文件的标识,获取MPD文件;其中,所述MPD文件包括至少两种投影类型对应的媒体分片的信息;
    发送单元,用于向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
  13. 如权利要求12所述的服务器,其特征在于,
    所述接收单元还用于:接收所述客户端发送的携带媒体分片的标识的第二请求消息;
    所述发送单元还用于:向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。
  14. 如权利要求12或13所述的服务器,其特征在于,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:
    所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
    所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,
    所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。
  15. 如权利要求12至14任一所述的服务器,其特征在于,所述推荐投影类型信息包含在所述MPD文件中。
  16. 如权利要求12至14任一所述的服务器,其特征在于,所述第一请求消息还包括所述客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;
    所述处理单元还用于:
    在所述发送单元向所述客户端返回第一响应消息之前,当所述客户端的设备信息包括所述客户端的设备类型时,根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,
    在所述发送单元向所述客户端返回第一响应消息之前,当所述客户端的设备信息包括所述客户端支持的投影类型时,根据所述客户端支持的投影类型,确定所述推荐投影类型信息。
  17. 如权利要求12至14任一所述的服务器,其特征在于,所述处理单元还用于:
    在所述发送单元向所述客户端返回第一响应消息之前,根据统计数据确定所述推荐投影类型信息。
  18. 一种客户端,其特征在于,包括:
    发送单元,用于向服务器发送第一请求消息,所述第一请求消息携带全景视频的媒体展示描述MPD文件的标识;
    接收单元,用于接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。
  19. 如权利要求18所述的客户端,其特征在于,所述第一响应消息包括MPD文件,所述推荐投影类型信息包含在所述MPD文件中。
  20. 如权利要求18或19所述的客户端,其特征在于,所述客户端还包括处理单元,用于根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型;根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
    所述发送单元还用于:向所述服务器发送第二请求消息,所述第二请求消息中包括所 述媒体分片的标识。
  21. 如权利要求20所述的客户端,其特征在于,所述处理单元根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类型时,具体用于:
    当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,
    当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。
  22. 如权利要求18或19所述的客户端,其特征在于,所述第一请求消息中还包括客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;
    所述客户端还包括处理单元,用于根据所述推荐投影类型信息,确定最佳投影类型;根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;
    所述发送单元还用于:向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。
  23. 一种服务器,其特征在于,包括存储器、处理器以及通信接口;其中,
    所述存储器用于存储计算机可读程序;
    所述处理器通过运行所述存储器中的程序,以完成如权利要求1至6任一所述的方法;
    所述通信接口用于在所述处理器的控制下接收和发送数据。
  24. 一种客户端,其特征在于,包括存储器、处理器以及通信接口;其中,
    所述存储器用于存储计算机可读程序;
    所述处理器通过运行所述存储器中的程序,以完成如权利要求7至11任一所述的方法;所述通信接口用于在所述处理器的控制下接收和发送数据。
PCT/CN2018/076504 2017-03-07 2018-02-12 一种投影类型推荐方法、服务器及客户端 WO2018161789A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710132185.5 2017-03-07
CN201710132185.5A CN108574881B (zh) 2017-03-07 2017-03-07 一种投影类型推荐方法、服务器及客户端

Publications (1)

Publication Number Publication Date
WO2018161789A1 true WO2018161789A1 (zh) 2018-09-13

Family

ID=63448044

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/076504 WO2018161789A1 (zh) 2017-03-07 2018-02-12 一种投影类型推荐方法、服务器及客户端

Country Status (2)

Country Link
CN (1) CN108574881B (zh)
WO (1) WO2018161789A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113206826B (zh) 2018-09-28 2022-10-04 华为技术有限公司 传输媒体数据的方法、客户端和服务器
CN114051152A (zh) * 2022-01-17 2022-02-15 飞狐信息技术(天津)有限公司 视频播放方法及装置、存储介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102217322A (zh) * 2011-05-27 2011-10-12 华为技术有限公司 媒体发送方法、媒体接收方法和客户端及系统
CN103747365A (zh) * 2010-09-17 2014-04-23 华为技术有限公司 基于http流的媒体内容动态插播方法、装置及系统
CN106231317A (zh) * 2016-09-29 2016-12-14 三星电子(中国)研发中心 视频处理、解码方法和装置、vr终端、视频播放系统
WO2017022363A1 (ja) * 2015-08-05 2017-02-09 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103747365A (zh) * 2010-09-17 2014-04-23 华为技术有限公司 基于http流的媒体内容动态插播方法、装置及系统
CN102217322A (zh) * 2011-05-27 2011-10-12 华为技术有限公司 媒体发送方法、媒体接收方法和客户端及系统
WO2017022363A1 (ja) * 2015-08-05 2017-02-09 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
CN106231317A (zh) * 2016-09-29 2016-12-14 三星电子(中国)研发中心 视频处理、解码方法和装置、vr终端、视频播放系统

Also Published As

Publication number Publication date
CN108574881B (zh) 2020-08-25
CN108574881A (zh) 2018-09-25

Similar Documents

Publication Publication Date Title
US20230283653A1 (en) Methods and apparatus to reduce latency for 360-degree viewport adaptive streaming
JP7436598B2 (ja) 空間的不均等ストリーミング
JP6979035B2 (ja) 仮想現実メディアコンテンツのストリーミングを向上させる方法、デバイス及びコンピュータプログラム
WO2018171487A1 (zh) 一种全景视频的播放方法和客户端
CN109565610B (zh) 处理全向视频的方法、装置以及存储介质
EP3586518A1 (en) Methods and apparatuses for image processing to optimize image resolution and for optimizing video streaming bandwidth for vr videos
Shi et al. Freedom: Fast recovery enhanced vr delivery over mobile networks
US20130297466A1 (en) Transmission of reconstruction data in a tiered signal quality hierarchy
WO2018214698A1 (zh) 一种视频信息的呈现方法和装置
CN112219403B (zh) 沉浸式媒体的渲染视角度量
US10692246B2 (en) Geometry sequence encoder and decoder
TWI786572B (zh) 沉浸式媒體提供方法、獲取方法、裝置、設備及存儲介質
US11438645B2 (en) Media information processing method, related device, and computer storage medium
CN108810567B (zh) 一种音频与视频视角匹配的方法、客户端和服务器
CN109218739B (zh) 视频流的视角切换方法、装置、设备和计算机存储介质
WO2018161789A1 (zh) 一种投影类型推荐方法、服务器及客户端
US20240119660A1 (en) Methods for transmitting and rendering a 3d scene, method for generating patches, and corresponding devices and computer programs
CA3057894C (en) Video compression using down-sampling patterns in two phases
CN111885417B (zh) Vr视频播放方法、装置、设备以及存储介质
US20220337800A1 (en) Systems and methods of server-side dynamic adaptation for viewport-dependent media processing
US20230007314A1 (en) System and method of server-side dynamic spatial and temporal adaptations for media processing and streaming

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: 18764522

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: 18764522

Country of ref document: EP

Kind code of ref document: A1