WO2023035879A1 - 自由视角视频的视角切换方法、装置、***、设备和介质 - Google Patents

自由视角视频的视角切换方法、装置、***、设备和介质 Download PDF

Info

Publication number
WO2023035879A1
WO2023035879A1 PCT/CN2022/112805 CN2022112805W WO2023035879A1 WO 2023035879 A1 WO2023035879 A1 WO 2023035879A1 CN 2022112805 W CN2022112805 W CN 2022112805W WO 2023035879 A1 WO2023035879 A1 WO 2023035879A1
Authority
WO
WIPO (PCT)
Prior art keywords
viewing angle
low
latency
room
switching
Prior art date
Application number
PCT/CN2022/112805
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 北京字节跳动网络技术有限公司
Priority to EP22866353.0A priority Critical patent/EP4297416A1/en
Priority to US18/551,913 priority patent/US20240223819A1/en
Publication of WO2023035879A1 publication Critical patent/WO2023035879A1/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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • 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/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Definitions

  • Embodiments of the present disclosure relate to Internet technologies, for example, to a method, device, system, device and medium for switching perspectives of free-viewpoint videos.
  • Embodiments of the present disclosure provide a viewing angle switching method, device, system, equipment, and medium for free viewing angle videos, so as to increase viewing angle switching speed, ensure video switching smoothness, improve user viewing experience, and reduce network bandwidth requirements at the same time.
  • the embodiment of the present disclosure provides a method for switching the angle of view of a free-angle video, which is applied to a user terminal, including:
  • the switching information determines the target video stream after the viewing angle is switched, and pushes the target video stream to the low-latency room;
  • the embodiment of the present disclosure also provides a method for switching the angle of view of a free-angle video, which is applied to a media server, including:
  • the embodiment of the present disclosure also provides a viewing angle switching device for a free viewing angle video, which is integrated in the user terminal, including:
  • the viewing angle switching information determination module is configured to determine the viewing angle switching information according to the viewing angle switching operation triggered by the user;
  • the viewing angle switching information sending module is configured to send the viewing angle switching information to the low-delay room corresponding to the client through the low-delay server, so that the media server responds to determining to monitor the viewing angle in the low-delay room A change message, determining a target video stream after viewing angle switching based on the viewing angle switching information, and pushing the target video stream to the low-latency room;
  • the target video stream playing module is configured to obtain the target video stream in the low-latency room through the low-latency server, and play the target video stream.
  • the embodiment of the present disclosure also provides a viewing angle switching device for a free viewing angle video, which is integrated in a media server, including:
  • the target video stream determining module is configured to determine the target video stream after the viewing angle switching based on the viewing angle switching information in the low-delay room in response to determining that the viewing angle change message in the low-latency room corresponding to the user terminal is heard, wherein, The viewing angle change message is generated when the user terminal sends viewing angle switching information to the low-latency room through a low-latency server, and the viewing angle switching information is determined according to a viewing angle switching operation triggered by a user;
  • the target video stream pushing module is configured to push the target video stream to the low-latency room, so that the client can obtain the target video stream in the low-latency room through a low-latency server, and Play the target video stream.
  • the embodiment of the present disclosure also provides a viewing angle switching system for a free viewing angle video, the system includes: a client, a media server, and a low-latency server;
  • each of the user terminals is configured to implement the method for switching the angle of view of the free-angle video as provided in the first aspect of the present disclosure
  • the media server is configured to implement the method for switching views of free-view videos as provided in the second aspect of the present disclosure.
  • an embodiment of the present disclosure further provides an electronic device, and the electronic device includes:
  • processors one or more processors
  • memory configured to store one or more programs
  • the one or more processors When the one or more programs are executed by the one or more processors, the one or more processors are made to implement the method for switching the angle of view of a free-angle video according to any one of the embodiments of the present disclosure.
  • the embodiments of the present disclosure also provide a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the viewpoint switching of the free-view video as described in any of the embodiments of the present disclosure is realized. method.
  • FIG. 1 is a flow chart of a method for switching a viewing angle of a free viewing angle video provided by an embodiment of the present disclosure
  • FIG. 2 is a flow chart of a viewing angle switching method for a free viewing angle video provided by another embodiment of the present disclosure
  • Fig. 3 is an example of alignment of a video stream involved in an embodiment of the present disclosure
  • FIG. 4 is a flow chart of a method for switching a viewing angle of a free viewing angle video provided by another embodiment of the present disclosure
  • Fig. 5 is an example of a set of video frames involved in an embodiment of the present disclosure
  • Fig. 6 is a schematic structural diagram of a viewing angle switching device for a free viewing angle video provided by an embodiment of the present disclosure
  • FIG. 7 is a schematic structural diagram of a viewing angle switching device for a free viewing angle video provided by another embodiment of the present disclosure.
  • Fig. 8 is a schematic structural diagram of a viewing angle switching system for a free viewing angle video provided by an embodiment of the present disclosure
  • Fig. 9 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure.
  • the term “comprise” and its variations are open-ended, ie “including but not limited to”.
  • the term “based on” is “based at least in part on”.
  • the term “one embodiment” means “at least one embodiment”; the term “another embodiment” means “at least one further embodiment”; the term “some embodiments” means “at least some embodiments.” Relevant definitions of other terms will be given in the description below.
  • Fig. 1 is a flow chart of a method for switching angles of a free-angle video provided by an embodiment of the present disclosure.
  • This embodiment is applicable to the situation of switching angles of a free-angle video, for example, it can be used for live broadcasting of a free-angle video
  • the application scenario of switching the viewing angle during the video can also be used in the application scenario of switching the viewing angle when the free viewing angle video is an on-demand video.
  • the method can be executed by an apparatus for switching an angle of view of a free-angle video, and the apparatus can be realized by software and/or hardware, and integrated in a user terminal. As shown in Figure 1, the method includes the following steps:
  • the free-view video in the embodiment of the present disclosure may be a video shot in real time, that is, a live video.
  • a live video obtained by shooting the same object in real time with cameras under different viewing angles.
  • the free-view video can also be a video that has been shot, that is, a video on demand.
  • the on-demand video obtained after shooting the same object with cameras under different viewing angles in advance.
  • the viewing angle switching operation may refer to an operation in which the user switches the current viewing angle of the currently playing free-angle video.
  • the viewing angle switching operation may be, but not limited to, a user's sliding operation or a user's clicking operation.
  • the angle-of-view switching information may be used to represent information after the angle of view is switched.
  • the viewing angle switching information may include target viewing angle information after the viewing angle switching.
  • the viewing angle switching information may include not only the target viewing angle information after the viewing angle switching, but also the current playback progress indicator when the user triggers the viewing angle switching operation, so that based on the current The playback progress indicator determines the playback position of the switched target video stream, thereby ensuring the continuity of video viewing.
  • the currently playing video frame identifier may be, but not limited to, the current playing time stamp or the sequence number of the currently playing video frame.
  • the user can trigger a viewing angle switching operation while watching a live free-view video on the user terminal.
  • the user end detects the viewing angle switching operation triggered by the user, it can determine the viewing angle switching operation according to the viewing angle switching operation. After the target perspective information.
  • the user can trigger the viewing angle switching operation while watching the on-demand free-view video on the user terminal.
  • the user terminal detects the viewing angle switching operation triggered by the user, it can determine the view angle switching operation based on the viewing angle switching operation.
  • the target viewing angle information and the current playback progress identifier when the user triggers the viewing angle switching operation.
  • the target view angle information after view switching may be determined in at least the following manner:
  • the first determination method determine the target viewing angle information after switching the viewing angle according to the sliding operation of the user.
  • the user can perform a sliding operation on the screen of the user terminal to switch the viewing angle.
  • the user terminal determines the target viewing angle information after viewing angle switching according to the user's sliding operation, which may include: if the user slides the screen to the left, the next viewing angle information in the counterclockwise direction of the current viewing angle information is used as the target viewing angle information after viewing angle switching ; If the user slides the screen to the right, the next clockwise viewing angle information of the current viewing angle information is used as the target viewing angle information after switching the viewing angle.
  • the user terminal in the embodiments of the present disclosure may also determine target viewing angle information after viewing angle switching according to the user's sliding direction and sliding distance.
  • the viewing angle offset direction is determined according to the user's sliding direction, and the viewing angle offset angle relative to the current viewing angle is determined according to the user's current sliding distance, so that multiple viewing angles can be switched at one time, and the switching operation is simplified. For example, if the user slides the screen to the left, it is determined that the viewing angle offset direction is counterclockwise; if the user slides the screen to the right, then it is determined that the viewing angle offset direction is clockwise. According to the preset correspondence between the sliding distance and the offset angle and the user's current sliding distance, the angle of view offset relative to the current angle of view can be determined.
  • the second way of determining according to the user's click on the angle of view operation, determine the target angle of view information after the angle of view is switched.
  • the viewing angle button corresponding to each viewing angle that the user can choose to watch can be displayed on the screen of the user terminal, so that the user can click the corresponding viewing angle button based on the viewing angle that the user wants to switch, so that the user terminal can quickly view the viewing angle based on the viewing angle button clicked by the user.
  • the target viewing angle information after viewing angle switching is obtained, thereby improving switching efficiency.
  • the media server may refer to a background server of the user end.
  • the low-latency server may be a server with a low-latency communication protocol.
  • the low-latency server can forward the video stream between the media server and the client to achieve low-latency video transmission.
  • Low-latency rooms are created based on client-side on low-latency servers to achieve low-latency communication effects.
  • Each client corresponds to a low-latency room.
  • Each low-latency room includes an independent client and shared media server.
  • the low-latency server may be but not limited to a real-time communication RTC (Real Time Communication) server, and the low-latency room may be but not limited to an RTC room.
  • RTC Real Time Communication
  • the media server creates a corresponding low-latency room for the client on the low-latency server, so that low-latency communication with the client can be performed through the low-latency room.
  • the client can send the viewing angle switching information to the delay server, and the delay server then sends the viewing angle switching information to the corresponding low-latency room.
  • the media server can monitor in real time whether there is a viewing angle change message in each low-latency room. If the viewing angle change message in the low-latency room corresponding to the client is detected, the media server can determine the target video after the viewing angle switching based on the viewing angle switching information. stream, and push the target video stream to the corresponding low-latency room.
  • the client can actively pull the target video stream in the low-latency room through the low-latency server, or passively receive the target video stream through the low-latency server.
  • the target video stream in the low-latency room sent by the low-latency server.
  • the client can pull the target video stream in the low-latency room through the RTC server.
  • the client can quickly obtain and play the target video stream after viewing angle switching, which improves the switching speed of viewing angles, avoids video freezes and discontinuities when switching viewing angles, and ensures smooth video switching to improve the viewing experience of users.
  • the client only needs to download one video stream, that is, the video stream under one viewing angle, and does not need to download the video streams under all angles, thus greatly reducing the network downlink bandwidth requirement.
  • the user terminal determines the viewing angle switching information according to the viewing angle switching operation triggered by the user, and sends the viewing angle switching information to the low-latency room corresponding to the user terminal through the low-latency server, so that the media server can monitor
  • the target video stream after the view switch is determined based on the view angle switching information, and the target video stream is pushed to the low-latency room.
  • the target video stream and play the target video stream so that the target video stream after the perspective switch is forwarded by the low-latency server, so that the client can quickly obtain and play the target video stream, which improves the viewing angle switching speed and avoids viewing angle switching
  • the video freezes and discontinuities that exist from time to time ensure the smoothness of video switching and improve the user viewing experience.
  • the user terminal only needs to download one video stream, which reduces the network downlink bandwidth requirements.
  • step S110 the following steps S101-S103 can also be performed to realize the playback of the free-view video under the preset viewing angle before switching:
  • the client Based on the playback operation triggered by the user for the free-view video, the client generates a video playback request and sends the video playback request to the media server.
  • the media server receives the video playback request, it can notify the low-latency server to serve the user Allocate a low-latency room to the end to push video streams in the low-latency room to achieve low-latency communication.
  • the media server can obtain the room information of the allocated low-latency room, and send the room information to the client.
  • S102 Receive room information of the low-latency room, and connect to the low-latency room corresponding to the room information through the low-latency server.
  • the client when the client receives the room information sent by the media server, it can connect to the corresponding low-latency room on the low-latency server based on the room information, so that the client can receive the video stream pushed to the low-latency room.
  • the preset angle of view may refer to a default angle of view when watching a free-angle video, which may be preset based on business requirements.
  • the media server may push video streams in a preset viewing angle to the low-latency room.
  • the client can actively use the low-latency server to pull the video stream of the preset viewing angle in the low-latency room, or passively receive the video stream of the preset viewing angle in the low-latency room sent by the low-latency server Stream, so that the client can start playing the video stream in the preset view angle.
  • the above viewing angle switching method can be used to quickly switch from the video stream at the preset viewing angle to the target video stream for playback, with low latency and smooth video switching.
  • Fig. 2 is a flow chart of a method for switching angles of a free-angle video provided by another embodiment of the present disclosure.
  • the application scenario of viewing angle switching during live video can also be used in the application scenario of performing viewing angle switching when the free viewing angle video is an on-demand video.
  • the method can be executed by an apparatus for switching an angle of view of a free-angle video, and the apparatus can be realized by software and/or hardware, and integrated in a media server. As shown in Figure 2, the method includes the following steps:
  • the viewing angle change message in the low-latency room corresponding to the user terminal is monitored, determine the target video stream after the viewing angle switching based on the viewing angle switching information in the low-delay room, wherein the viewing angle change message is the viewing angle change message on the user end.
  • the switching information is generated when it is sent to the low-latency room through the low-latency server, and the viewing angle switching information is determined according to the viewing angle switching operation triggered by the user.
  • the media server may refer to a background server of the user end.
  • the low-latency server may be a server with a low-latency communication protocol.
  • the low-latency server can forward the video stream between the media server and the client to achieve low-latency video transmission.
  • Low-latency rooms are created based on client-side on low-latency servers to achieve low-latency communication effects.
  • Each client corresponds to a low-latency room.
  • Each low-latency room includes an independent client and shared media server.
  • the low-latency server may be but not limited to an RTC server, and the low-latency room may be but not limited to an RTC room.
  • the free-view video in the embodiment of the present disclosure may be a video shot in real time, that is, a live video.
  • a live video obtained by shooting the same object in real time with cameras under different viewing angles.
  • the free-view video can also be a video that has been shot, that is, a video on demand.
  • the on-demand video obtained after shooting the same object with cameras under different viewing angles in advance.
  • the viewing angle switching operation may refer to an operation in which the user switches the current viewing angle of the currently playing free-angle video.
  • the viewing angle switching operation may be, but not limited to, a user's sliding operation or a user's clicking operation.
  • the angle-of-view switching information may be used to represent information after the angle of view is switched.
  • the viewing angle switching information may include target viewing angle information after the viewing angle switching.
  • the viewing angle switching information may include not only the target viewing angle information after the viewing angle switching, but also the current playback progress indicator when the user triggers the viewing angle switching operation, so that based on the current The playback progress indicator determines the playback position of the switched target video stream, thereby ensuring the continuity of video viewing.
  • the currently playing video frame identifier may be, but not limited to, the current playing time stamp or the sequence number of the currently playing video frame.
  • the user terminal can determine the target viewing angle information after the viewing angle switching according to the viewing angle switching operation triggered by the user, and send the target viewing angle information after the viewing angle switching to the low-latency room corresponding to the user terminal through the low-latency server. Since the angle of view information in the low-delay room is the angle of view information before switching, the angle of view information in the low-delay room can be changed to generate an angle of view change message.
  • the media server monitors the view angle change message in the low-latency room, it may determine the target video stream after the view angle is switched based on the target view angle information in the low-delay room.
  • S210 may include: according to the current live video stream corresponding to each angle information after alignment and the target angle information after angle switching in the low-latency room, determine the target video after angle switching flow.
  • the media server can receive in real time the current live video stream collected by the camera under each viewing angle, and each video frame in each current live video stream received has alignment information, so that multiple current live video streams can be aligned based on the alignment information Align live video streams to ensure synchronous playback of video streams from different perspectives.
  • the alignment information may be, but not limited to, the acquisition time stamp or the frame number of the video frame.
  • Figure 3 shows an example of alignment of a video stream. As shown in Figure 3, the video frames with the same frame number or the same acquisition time stamp in the current live video stream under each view can be used as the video frames at the same playback moment, so as to obtain the corresponding information of each view after alignment.
  • Current live video stream From the current live video streams corresponding to each angle of view information after alignment, the target current live video stream corresponding to the target angle of view information after the angle switching can be determined, that is, the target video stream after the angle switching.
  • the user terminal can determine the target viewing angle information after the viewing angle switching and the current playback progress indicator when the user triggers the viewing angle switching operation according to the viewing angle switching operation triggered by the user, and combine the target viewing angle information and the current playback progress after the viewing angle switching
  • the identifier is sent to the corresponding low-latency room of the client through the low-latency server, so that the viewing angle information in the low-latency room changes, and a viewing angle change message is generated.
  • the media server listens to the viewing angle change message in the low-latency room, it can determine the target video stream after the viewing angle is switched based on the target viewing angle information in the low-latency room and the current playback progress identifier.
  • S210 may include: determining the target video-on-demand under the target viewing angle according to the aligned video-on-demand stream corresponding to each viewing angle information and the target viewing angle information after switching the viewing angle in the low-latency room Stream: Based on the current playback progress indicator and the target on-demand video stream when the user in the low-latency room triggers the viewing angle switching operation, determine the target video stream after the viewing angle switching.
  • the media server may pre-align the on-demand video streams collected by the cameras under each view, for example, the video frames with the same frame number or the same acquisition time stamp in the on-demand video streams under each view as the same Play the video frame at the moment, so as to obtain the on-demand video stream corresponding to each viewing angle information after alignment. From the aligned video-on-demand streams corresponding to each viewing angle information, the target video-on-demand stream corresponding to the target viewing angle information after viewing angle switching can be determined.
  • the media server can determine the target video frame in the target video-on-demand stream based on the current playback progress identifier when the user triggers the viewing angle switching operation, and can perform video interception on the target video-on-demand stream based on the target video frame, and capture the target video in the target video-on-demand stream
  • the video stream after the frame is used as the target video stream after viewing angle switching.
  • the media server pushes the target video stream after viewing angle switching to the corresponding low-latency room of the client, so that the client can actively pull the target video stream in the low-latency room through the low-latency server, or passively Receive the target video stream in the low-latency room sent by the low-latency server.
  • the client can quickly obtain and play the target video stream after viewing angle switching, which improves the switching speed of viewing angles, avoids video freezes and discontinuities when switching viewing angles, and ensures the smoothness of video switching , which improves the user viewing experience.
  • the client only needs to download one video stream, that is, the video stream under one viewing angle, and does not need to download the video streams under all angles, thus greatly reducing the network downlink bandwidth requirement.
  • the user terminal determines the viewing angle switching information according to the viewing angle switching operation triggered by the user, and sends the viewing angle switching information to the low-latency room corresponding to the user terminal through the low-latency server, so that the media server listens to the When viewing angle change messages in low-latency rooms, determine the target video stream after viewing angle switching based on the angle-of-view switching information in the low-latency room, and push the target video stream to the low-latency room, and the client obtains it through the low-latency server The target video stream in the low-latency room, and play the target video stream, so that the target video stream after the perspective switch is forwarded by the low-latency server, so that the client can quickly obtain and play the target video stream, which improves the viewing angle switching speed , and avoid the discontinuity of the video when the viewing angle is switched, which ensures the smoothness of the video switching and improves the viewing experience of the user.
  • step S210 the following steps S201-S203 can also be performed to realize the playback of the free-view video under the preset viewing angle before switching:
  • the client Based on the playback operation triggered by the user for the free-view video, the client generates a video playback request, and sends the video playback request to the media server, so that the media server can receive the video playback request.
  • the media server can notify the low-latency server to allocate and create a low-latency room for the client, and monitor the viewing angle change message in the created low-latency room in real time, so that it can be pushed in time Video streams under different viewing angles ensure the switching speed of viewing angles.
  • the media server may send the room information of the allocated low-latency room to the client.
  • the client can connect to the corresponding low-latency room on the low-latency server based on the room information, so that the client can receive the video stream pushed to the low-latency room.
  • the preset angle of view may refer to a default angle of view when watching a free-angle video, which may be preset based on business requirements.
  • the media server can push video streams under preset viewing angles to the low-latency room to achieve low-latency communication effects.
  • the client can actively use the low-latency server to pull the video stream of the preset viewing angle in the low-latency room, or passively receive the video stream of the preset viewing angle in the low-latency room sent by the low-latency server Stream, so that the client can start playing the video stream in the preset view angle.
  • the above viewing angle switching method can be used to quickly switch from the video stream at the preset viewing angle to the target video stream for playback, with low latency and smooth video switching.
  • Fig. 4 is a flow chart of a free-view video viewing angle switching method provided by another implementation 3 of the present disclosure. This embodiment is based on the above-mentioned embodiment on the media server side, and pushes the target video stream in the live video scene. described in detail. The explanations of terms that are the same as or corresponding to those in the above-mentioned multiple embodiments will not be repeated here.
  • the method for switching the angle of view of the free-angle video provided in this embodiment includes the following steps:
  • each set of video frames may be cached.
  • Each cached set of video frames includes aligned live video frames under each viewing angle.
  • Figure 5 shows an example of a set of video frames. As shown in FIG. 5 , each obtained video frame set is cached, so that the currently latest cached M video frame sets can be obtained. It should be noted that, as time goes by, the currently latest cached set of M video frames is updated in real time.
  • merging the video frames with the same alignment information in the current live video stream under each view into a set of video frames may include: combining the video frames with the same acquisition time stamp in the current live video stream under each view Frames are merged into a video frame set; or, video frames with the same frame sequence number in the current live video stream under each view are merged into a video frame set.
  • the media server may sequentially determine the target video frame set according to the cache sequence of each video frame set that has not yet been pushed from among the latest preset number of video frame sets cached. For example, if the video frame caching frequency is the same as the pushing frequency, that is, none of the preset number of video frame sets that are currently cached has been pushed, then step S420 may include: among the preset number of video frame sets with the earliest acquisition time The video frame set or the video frame set with the smallest frame sequence number is determined as the target video frame set.
  • the video frame caching frequency and push frequency are inconsistent, that is, the preset number of video frames in the latest cache has not been pushed, then the current latest cached preset Among the number of video frame sets, the next video frame set of the last pushed video frame set is used as the target video frame set, so that the earliest cached video that has not been pushed yet in the preset number of video frame sets currently cached The collection of frames is pushed to the client.
  • S430 According to the target viewing angle information after the viewing angle switching in the low-latency room, determine the target video frame after the viewing angle switching from the target video frame set, push the target video frame to the low-latency room, and return to perform the operation of S410 .
  • the media server may use the video frame corresponding to the target viewing angle information in the target video frame set as the target video frame after viewing angle switching, and send the target video frame to the low-latency
  • the client can obtain the target video frame in the low-latency room through the low-latency server.
  • the media server sends the target video frame, return to perform the operation of S410, so as to determine the target video frame to be pushed next, and push it to the low-latency room, and so on, so that the client can obtain the target video stream after the viewing angle is switched , and play the target video stream.
  • the target video frame to the low-latency room may also include: when there are multiple client terminals, after the video frame pushing traversal of the low-latency room corresponding to each client terminal is completed, cache The set of target video frames in is deleted.
  • the media server After the media server determines the set of target video frames to be pushed, it can traverse the low-latency rooms corresponding to each client, and determine from the set of target video frames based on the viewing angle information in each low-latency room Output the corresponding video frame and send the corresponding video frame to the low-latency room.
  • the media server After the media server has traversed all the low-latency rooms, it can delete the target video frame set from the cache, so that the pushed video frame set can be deleted in time, freeing up memory space and improving operating performance.
  • the media server may return to step S410 to push the next video frame, thereby completing the streaming operation of the video frame.
  • the media server determines the target video frame set from the preset number of video frame sets by obtaining the latest preset number of video frame sets cached, and switches according to the viewing angle in the low-latency room
  • the target viewing angle information of the target video frame is determined from the target video frame set to determine the target video frame after the viewing angle switch, and the target video frame is pushed to the low-latency room, so that the low-latency room corresponding to each client can be based on the target video frame set Traversal pushes video frames, so that the media server only needs to take out the target video frame set from the cache once, which can meet the push requirements of all clients, reduce the number of cache reads and writes, and improve operating performance.
  • the following is an embodiment of a viewing angle switching device for a free-view video provided by an embodiment of the present disclosure.
  • This device is based on the same idea as the method for switching a viewing angle of a free-view video in the above-mentioned embodiment on the user side.
  • the method for switching the view angle of a free-view video provided in the above-mentioned embodiment on the user terminal side refer to the method for switching the view angle of a free-view video provided in the above-mentioned embodiment on the user terminal side.
  • FIG. 6 is a schematic structural diagram of an apparatus for switching an angle of view of a free-angle video provided by an embodiment of the present disclosure. This embodiment is applicable to the case of switching an angle of view of a free-angle video, and the apparatus is integrated in a user end.
  • the device includes: a viewing angle switching information determining module 610 , a viewing angle switching information sending module 620 and a target video stream playing module 630 .
  • the viewing angle switching information determination module 610 is configured to determine the viewing angle switching information according to the viewing angle switching operation triggered by the user; the viewing angle switching information sending module 620 is configured to send the viewing angle switching information to the corresponding low-latency Time room, so that when the media server monitors the viewing angle change message in the low-latency room, it determines the target video stream after the viewing angle switching based on the viewing angle switching information, and pushes the target video stream to the low-latency room; the target video stream playback module 630, set to obtain the target video stream in the low-latency room through the low-latency server, and play the target video stream.
  • the user terminal determines the viewing angle switching information according to the viewing angle switching operation triggered by the user, and sends the viewing angle switching information to the low-latency room corresponding to the user terminal through the low-latency server, so that the media server listens to the When viewing angle change messages in low-latency rooms, determine the target video stream after viewing angle switching based on the angle-of-view switching information in the low-latency room, and push the target video stream to the low-latency room, and the client obtains it through the low-latency server The target video stream in the low-latency room, and play the target video stream, so that the target video stream after the perspective switch is forwarded by the low-latency server, so that the client can quickly obtain and play the target video stream, which improves the viewing angle switching speed , and avoid the discontinuity of the video when the viewing angle is switched, which ensures the smoothness of the video switching and improves the viewing experience of the user.
  • the viewing angle switching information includes the target viewing angle information after the viewing angle switching;
  • the currently playing video frame is identified as the current playing time stamp or the sequence number of the currently playing video frame.
  • the viewing angle switching information determination module 610 is configured to: determine the target viewing angle information after the viewing angle is switched according to the user's sliding operation or the user's clicking the viewing angle operation.
  • the viewing angle switching information determination module 610 is further set to:
  • next viewing angle information of the current viewing angle information in the counterclockwise direction is used as the target viewing angle information after the viewing angle switching; if the user slides the screen to the right, the next viewing angle information of the current viewing angle information in the clockwise direction The information is used as the target viewing angle information after the viewing angle is switched.
  • the device also includes:
  • the video playback request sending module is configured to send a video playback request to the media server before determining the viewing angle switching information according to the viewing angle switching operation triggered by the user, so that the media server can create a low latency server corresponding to the client based on the video playback request through the low-latency server. Delay the room, and send the room information of the low-delay room to the client;
  • the room information receiving module is configured to receive the room information of the low-latency room, and connect to the low-latency room corresponding to the room information through the low-latency server;
  • the preset angle of view video stream playback module is set to obtain the video stream in the low-latency room through the low-latency server, and play the obtained video stream, wherein the obtained video stream is the one under the preset angle of view pushed by the media server video stream.
  • the low-latency server is a real-time communication RTC server
  • the low-latency room is an RTC room.
  • the viewing angle switching device for free viewing angle video provided by the embodiments of the present disclosure can execute the viewing angle switching method for free viewing angle video provided in the user terminal embodiment of the present disclosure, and has corresponding functional modules and beneficial effects for performing the viewing angle switching method for free viewing angle video .
  • the following is an embodiment of the viewing angle switching device for free-viewing video provided by the embodiments of the present disclosure.
  • This device is based on the same idea as the viewing angle switching method for free-viewing video in the above-mentioned embodiment on the media server side.
  • the viewing angle switching method for free-viewing video in the above-mentioned embodiment on the media server side For details that are not described in detail in the embodiment, refer to the method for switching the view angle of a free-view video provided in the above-mentioned embodiment on the media server side.
  • FIG. 7 is a schematic structural diagram of an apparatus for switching an angle of view of a free-angle video provided by another embodiment of the present disclosure. This embodiment is applicable to the case of switching an angle of view of a free-angle video, and the apparatus is integrated in a media server. As shown in FIG. 7 , the device includes: a target video stream determining module 710 and a target video stream pushing module 720 .
  • the target video stream determining module 710 is configured to determine the target video stream after the viewing angle switching based on the viewing angle switching information in the low-latency room if the viewing angle change message in the low-latency room corresponding to the user terminal is monitored, wherein, The viewing angle change message is generated when the user terminal sends the viewing angle switching information to the low-latency room through the low-latency server, and the viewing angle switching information is determined according to the viewing angle switching operation triggered by the user; the target video stream push module 720 is set to set the target The video stream is pushed to the low-latency room, so that the client can obtain the target video stream in the low-latency room through the low-latency server, and play the target video stream.
  • the user end determines the viewing angle switching information according to the viewing angle switching operation triggered by the user, and sends the viewing angle switching information to the low-latency room corresponding to the user end through the low-latency server, so that the media server monitors the When viewing angle change messages in the low-latency room, determine the target video stream after the viewing angle switch based on the angle-of-view switching information in the low-latency room, and push the target video stream to the low-latency room, and the client obtains it through the low-latency server The target video stream in the low-latency room, and play the target video stream, so that the target video stream after the perspective switch is forwarded by the low-latency server, so that the client can quickly obtain and play the target video stream, which improves the viewing angle switching speed , and avoid the discontinuity of the video when the viewing angle is switched, which ensures the smoothness of the video switching and improves the viewing experience of the user.
  • the target video stream determining module 710 and the target video stream pushing module 720 include:
  • a video frame set acquisition unit configured to acquire a preset number of video frame sets currently cached, each video frame set including aligned video frames under each viewing angle;
  • the target video frame set determination unit is configured to determine the target video frame set from a preset number of video frame sets
  • the target video frame pushing unit is configured to determine the target video frame after the switching of the viewing angle from the target video frame set according to the target viewing angle information after the switching of the viewing angle in the low-latency room, and push the target video frame to the low-latency room, And return to perform the operation of obtaining the preset number of video frame sets currently cached.
  • the device also includes:
  • the current live video stream acquisition unit is configured to obtain the current live video stream currently collected by the camera under each viewing angle and the corresponding information of each video frame in the current live video stream before obtaining the latest preset number of video frame sets cached. alignment information;
  • the video frame combining unit is configured to combine the video frames with the same alignment information in the current live video stream under each viewing angle into a video frame set, and cache the combined video frame set.
  • the video frame merging unit is set to:
  • the target video frame set determination unit is set to:
  • the video frame set with the earliest acquisition time or the video frame set with the smallest frame sequence number among the preset number of video frame sets is determined as the target video frame set.
  • the device also includes:
  • the target video frame deletion unit is set to, after the target video frame is pushed to the low-latency room, when there are multiple client terminals, after the video frame push traversal of the low-latency room corresponding to each client terminal is completed, the The set of target video frames in the cache is deleted.
  • the target video stream determination module 710 is also set to:
  • the target video stream after the angle of view switching is determined.
  • the target video stream determination module 710 is also set to:
  • the on-demand video stream corresponding to each angle of view information after alignment and the target angle of view information after the angle of view switching in the low-latency room determine the target on-demand video stream under the target angle of view; trigger the angle of view switching operation based on the user in the low-latency room
  • the current playback progress identifier and the target on-demand video stream at the time determine the target video stream after the viewing angle is switched.
  • the device also includes:
  • the video playback request receiving module is configured to receive the video playback request sent by the client before listening to the viewing angle change message in the low-latency room corresponding to the client;
  • the low-latency room creation module is set to create a low-latency room corresponding to the client through the low-latency server based on the video playback request, and monitor the viewing angle change message of the low-latency room;
  • the room information sending module is configured to send the room information of the low-latency room to the client, so that the client connects to the low-latency room corresponding to the room information through the low-latency server;
  • the preset angle of view video stream push module is set to push the video stream under the preset angle of view to the low-latency room, so that the client can obtain the video stream in the low-latency room through the low-latency server, and play the obtained video stream.
  • the viewing angle switching device for free-view video provided by the embodiment of the present disclosure can execute the viewing angle switching method for free-view video provided by the media server-side embodiment of the present disclosure, and has corresponding functional modules and beneficial effects for performing the viewing angle switching method for free-view video .
  • FIG. 8 is a schematic structural diagram of an angle switching system for a free-angle video provided by an embodiment of the present disclosure. This embodiment is applicable to the case of performing viewing angle switching on a free viewing angle video. As shown in Figure 8, the system includes: a client 810, a media server 820 and a low-latency server 830
  • each client 810 can be set to implement the free-view angle switching method provided by the client-side embodiment of the present disclosure; the media server 820 can be set to implement the method as described in the third embodiment and the third embodiment of the media server side of the present disclosure.
  • the low-latency server 830 is configured to forward the video stream between the client 810 and the media server 820 to achieve a low-latency technical effect.
  • the user terminal determines the perspective switching information according to the perspective switching operation triggered by the user, and sends the perspective switching information to the low-latency room corresponding to the user terminal through the low-latency server .
  • the media server monitors the viewing angle change message in the low-latency room, it determines the target video stream after the viewing angle switching based on the viewing angle switching information, and pushes the target video stream to the low-latency room.
  • the client obtains the target video stream in the low-latency room through the low-latency server, and plays the target video stream, so that the target video stream after viewing angle switching is forwarded by the low-latency server, enabling the client to quickly obtain and play the target video stream
  • the video stream improves the viewing angle switching speed and avoids the discontinuous situation of the video when switching the viewing angle, which ensures the smoothness of the video switching and improves the user viewing experience.
  • the client only needs to download one video stream, which reduces the network Downlink bandwidth requirements.
  • FIG. 9 it shows a schematic structural diagram of an electronic device (such as a terminal device or a server in FIG. 9 ) 900 suitable for implementing an embodiment of the present disclosure.
  • the terminal equipment in the embodiment of the present disclosure may include but not limited to mobile phones, notebook computers, digital broadcast receivers, personal digital assistants (Personal Digital Assistant, PDA), tablet computers (PAD), portable multimedia players (Portable Media Player, PMP devices), mobile terminals such as vehicle-mounted terminals (such as vehicle-mounted navigation terminals), and fixed terminals such as digital TVs and desktop computers.
  • PDA Personal Digital Assistant
  • PAD tablet computers
  • PMP devices portable multimedia players
  • mobile terminals such as vehicle-mounted terminals (such as vehicle-mounted navigation terminals)
  • fixed terminals such as digital TVs and desktop computers.
  • the electronic device shown in FIG. 9 is only an example, and should not limit the functions and application scope of the embodiments of the present disclosure.
  • an electronic device 900 may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 901, which may be randomly accessed according to a program stored in a read-only memory (ROM) 902 or loaded from a storage device 908.
  • a processing device such as a central processing unit, a graphics processing unit, etc.
  • RAM read-only memory
  • various appropriate actions and processes are executed by programs in the memory (RAM) 903 .
  • RAM 903 In the RAM 903, various programs and data necessary for the operation of the electronic device 900 are also stored.
  • the processing device 901, ROM 902, and RAM 903 are connected to each other through a bus 904.
  • An input/output (I/O) interface 905 is also connected to the bus 904 .
  • an input device 906 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; including, for example, a liquid crystal display (Liquid Crystal Display, LCD) , an output device 907 such as a speaker, a vibrator, etc.; a storage device 908 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 909.
  • the communication means 909 may allow the electronic device 900 to perform wireless or wired communication with other devices to exchange data. While FIG. 9 shows electronic device 900 having various means, it is to be understood that implementing or having all of the means shown is not a requirement. More or fewer means may alternatively be implemented or provided.
  • embodiments of the present disclosure include a computer program product including a computer program carried on a non-transitory computer readable medium, the computer program including program code configured to execute the method shown in the flowchart.
  • the computer program may be downloaded and installed from a network via communication means 909, or from storage means 908, or from ROM 902.
  • the processing device 901 the above-mentioned functions defined in the methods of the embodiments of the present disclosure are executed.
  • the electronic device provided by the embodiment of the present disclosure belongs to the same idea as the method for switching the angle of view of the free-angle video provided by the above-mentioned embodiment.
  • the embodiment of the present disclosure is the same as the above-mentioned The embodiments have the same beneficial effect.
  • An embodiment of the present disclosure provides a computer storage medium on which a computer program is stored, and when the program is executed by a processor, the method for switching an angle of view of a free-angle video provided in any of the above embodiments is implemented.
  • the above-mentioned computer-readable medium in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two.
  • a computer readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to, electrical connections with one or more wires, portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable Programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which can transmit, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer readable medium may be transmitted by any appropriate medium, including but not limited to electrical wires, optical fiber cables, radio frequency (RF), etc., or any suitable combination of the foregoing.
  • the client and the server can communicate using any currently known or future network protocols such as Hypertext Transfer Protocol (HyperText Transfer Protocol, HTTP), and can communicate with digital data in any form or medium
  • HTTP Hypertext Transfer Protocol
  • Examples of communication networks include local area networks (LANs), wide area networks (WANs), internetworks (eg, the Internet), and peer-to-peer networks (eg, ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
  • the above-mentioned computer-readable medium may be included in the above-mentioned electronic device, or may exist independently without being incorporated into the electronic device.
  • the above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device:
  • the target video stream after the viewing angle switching is determined based on the viewing angle switching information in the low-delay room, wherein the viewing angle change message is the viewing angle switching information on the user end It is generated when the low-latency server is sent to the low-latency room, and the viewing angle switching information is determined according to the viewing angle switching operation triggered by the user; the target video stream is pushed to the low-latency room, so that the client can obtain low-latency video through the low-latency server. Delay the target video stream in the room and play the target video stream.
  • Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, or combinations thereof, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and Includes conventional procedural programming languages - such as the "C" language or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer can be connected to the user computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as through an Internet service provider). Internet connection).
  • LAN local area network
  • WAN wide area network
  • Internet service provider such as AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • each block in a flowchart or block diagram may represent a module, program segment, or portion of code that contains one or more logical functions for implementing specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented by a dedicated hardware-based system that performs the specified functions or operations , or may be implemented by a combination of dedicated hardware and computer instructions.
  • the units involved in the embodiments described in the present disclosure may be implemented by software or by hardware. Wherein, the name of the unit does not constitute a limitation on the unit itself under certain circumstances, for example, the editable content display unit may also be described as an "editing unit".
  • exemplary types of hardware logic components include: Field Programmable Gate Arrays (Field Programmable Gate Arrays, FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (Application Specific Standard Parts, ASSP), System-on-a-chip (SOC), Complex Programmable Logic Device (Complex Programmable Logic Device, CPLD) and so on.
  • a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device.
  • a machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
  • a machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing.
  • machine-readable storage media would include one or more wire-based electrical connections, portable computer discs, hard drives, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, compact disk read only memory (CD-ROM), optical storage, magnetic storage, or any suitable combination of the foregoing.
  • RAM random access memory
  • ROM read only memory
  • EPROM or flash memory erasable programmable read only memory
  • CD-ROM compact disk read only memory
  • magnetic storage or any suitable combination of the foregoing.
  • Example 1 provides a viewing angle switching method for a free-viewing video, which is applied to a user terminal, and the method includes:
  • the viewing angle switching information is sent to the low-latency room corresponding to the client through the low-latency server, so that when the media server listens to the viewing angle change message in the low-delay room, it determines based on the viewing angle switching information
  • Example 2 provides a method for switching angles of a free-angle video, which is applied to a user terminal, and the method further includes:
  • the viewing angle switching information includes target viewing angle information after viewing angle switching
  • the viewing angle switching information includes target viewing angle information after viewing angle switching and a current playback progress indicator when the user triggers the viewing angle switching operation.
  • Example 3 provides a viewing angle switching method for a free-viewing video, which is applied to a user terminal, and the method further includes:
  • the identifier of the currently playing video frame is the current playing time stamp or the serial number of the currently playing video frame.
  • Example 4 provides a method for switching angles of a free-angle video, which is applied to a user terminal, and the method further includes:
  • the determining the target viewing angle information after the viewing angle switching according to the viewing angle switching operation includes:
  • the target viewing angle information after switching the viewing angle is determined.
  • Example 5 provides a method for switching angles of a free-angle video, which is applied to a user terminal, and the method further includes:
  • the determining the target viewing angle information after switching the viewing angle according to the sliding operation of the user includes:
  • the next viewing angle information in the counterclockwise direction of the current viewing angle information is used as the target viewing angle information after switching the viewing angle;
  • the next viewing angle information in the clockwise direction of the current viewing angle information is used as the target viewing angle information after switching the viewing angle.
  • Example 6 provides a method for switching angles of a free-angle video, which is applied to a user terminal, and the method further includes:
  • the method before determining the viewing angle switching information according to the viewing angle switching operation triggered by the user, the method further includes:
  • the video stream in the low-latency room is obtained through the low-latency server, and the obtained video stream is played, wherein the obtained video stream is a video stream at a preset viewing angle pushed by the media server.
  • Example 7 provides a method for switching angles of a free-angle video, which is applied to a user terminal, and the method further includes:
  • the low-latency server is a real-time communication RTC server
  • the low-latency room is an RTC room.
  • Example 8 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method includes:
  • the target video stream after the viewing angle switching is determined based on the viewing angle switching information in the low-delay room, wherein the viewing angle change message is in the It is generated when the user terminal sends the viewing angle switching information to the low-latency room through the low-latency server, and the viewing angle switching information is determined according to the viewing angle switching operation triggered by the user;
  • Example 9 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • determining the target video stream after viewing angle switching based on the viewing angle switching information in the low-delay room; pushing the target video stream to the low-delay room includes:
  • each video frame set includes aligned video frames under each viewing angle
  • the target view angle information after the view angle switching in the low-latency room determine the target video frame after the view-switching from the set of target video frames, and push the target video frame to the low-delay room, And return to perform the operation of obtaining the preset number of video frame sets currently cached.
  • Example 10 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • Example 11 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • video frames with the same alignment information in the current live video stream under each view are combined into a video frame set, including:
  • Example 12 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • determining a target video frame set from the preset number of video frame sets includes:
  • the video frame set with the earliest acquisition time or the video frame set with the smallest frame sequence number among the preset number of video frame sets is determined as the target video frame set.
  • Example 13 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • the target video frame to the low-latency room after pushing the target video frame to the low-latency room, it also includes:
  • the target video frame set in the cache is deleted.
  • Example Fourteen provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • determining the target video stream after viewing angle switching based on the viewing angle switching information in the low-latency room includes:
  • the target video stream after the angle of view switching is determined.
  • Example 15 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • determining the target video stream after viewing angle switching based on the viewing angle switching information in the low-latency room includes:
  • the on-demand video stream corresponding to each angle of view information after alignment and the target angle of view information after the angle of view switching in the low-latency room determine the target video on-demand stream under the target angle of view;
  • the target video stream after the viewing angle switching is determined.
  • Example 16 provides a method for switching angles of a free-angle video, which is applied to a media server, and the method further includes:
  • the viewing angle change message in the low-latency room corresponding to the client it also includes:
  • Pushing the video stream at the preset viewing angle to the low-latency room so that the client obtains the video stream in the low-latency room through the low-latency server, and plays the obtained video stream.
  • Example 17 provides a viewing angle switching device for a free-viewing video, which is integrated in a user terminal, and the device includes:
  • the viewing angle switching information determination module is configured to determine the viewing angle switching information according to the viewing angle switching operation triggered by the user;
  • the viewing angle switching information sending module is configured to send the viewing angle switching information to the low-delay room corresponding to the client through the low-delay server, so that when the media server monitors the viewing angle change message in the low-delay room determining a target video stream after viewing angle switching based on the viewing angle switching information, and pushing the target video stream to the low-latency room;
  • the target video stream playing module is configured to obtain the target video stream in the low-latency room through the low-latency server, and play the target video stream.
  • Example 18 provides a viewing angle switching device for free-viewing video, which is integrated in a media server, and the device includes:
  • the target video stream determination module is configured to determine the target video stream after the viewing angle switching based on the viewing angle switching information in the low-delay room if the viewing angle change message in the low-delay room corresponding to the user terminal is monitored, wherein the The viewing angle change message is generated when the user terminal sends viewing angle switching information to the low-latency room through the low-latency server, and the viewing angle switching information is determined according to the viewing angle switching operation triggered by the user;
  • the target video stream pushing module is configured to push the target video stream to the low-latency room, so that the client can obtain the target video stream in the low-latency room through a low-latency server, and Play the target video stream.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本公开实施例公开了一种自由视角视频的视角切换方法、装置、***、设备和介质,该方法应用于用户端,包括:根据用户触发的视角切换操作,确定视角切换信息(S110);将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,以使媒体服务器响应于确定监听到低延时房间中的视角变化消息,基于视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间(S120);通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流(S130)。

Description

自由视角视频的视角切换方法、装置、***、设备和介质
本申请要求在2021年9月9日提交中国专利局、申请号为202111056276.8的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本公开实施例涉及互联网技术,例如涉及一种自由视角视频的视角切换方法、装置、***、设备和介质。
背景技术
随着互联网技术的快速发展和用户需求的日益增多,一种自由视角视频被研发,使得用户可以从不同视角下观看视频。用户在观看自由视角视频的过程中可以自由切换视角,但在切换视角时切换速度较慢,往往会存在视频卡顿不连续的情况,大大降低了用户观看体验。
发明内容
本公开实施例提供了一种自由视角视频的视角切换方法、装置、***、设备和介质,以提高视角切换速度,保证视频切换流畅度,提升用户观看体验,同时也降低网络带宽要求。
第一方面,本公开实施例提供了一种自由视角视频的视角切换方法,应用于用户端,包括:
根据用户触发的视角切换操作,确定视角切换信息;
将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器响应于确定监听到所述低延时房间中的视角变化消息时,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;
通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
第二方面,本公开实施例还提供了一种自由视角视频的视角切换方法,应用于媒体服务器,包括:
响应于确定监听到用户端对应的低延时房间中的视角变化消息,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;
将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
第三方面,本公开实施例还提供了一种自由视角视频的视角切换装置,集成于用户端,包括:
视角切换信息确定模块,设置为根据用户触发的视角切换操作,确定视角切换信息;
视角切换信息发送模块,设置为将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器响应于确定监听到所述低延时房间中的视角变化消息,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;
目标视频流播放模块,设置为通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
第四方面,本公开实施例还提供了一种自由视角视频的视角切换装置,集成于媒体服务 器,包括:
目标视频流确定模块,设置为响应于确定监听到用户端对应的低延时房间中的视角变化消息,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;
目标视频流推送模块,设置为将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
第五方面,本公开实施例还提供了一种自由视角视频的视角切换***,所述***包括:用户端、媒体服务器和低延时服务器;
其中,每个所述用户端设置为实现如本公开第一方面所提供的自由视角视频的视角切换方法;
所述媒体服务器设置为实现如本公开第二方面所提供的自由视角视频的视角切换方法。
第六方面,本公开实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储器,设置为存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本公开实施例任一所述的自由视角视频的视角切换方法。
第七方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开实施例任一所述的自由视角视频的视角切换方法。
附图说明
图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1是本公开一实施例提供的一种自由视角视频的视角切换方法的流程图;
图2是本公开另一实施例提供的一种自由视角视频的视角切换方法的流程图;
图3是本公开一实施例所涉及的一种视频流的对齐示例;
图4是本公开另一实施例提供的一种自由视角视频的视角切换方法的流程图;
图5是本公开一实施例所涉及的一种视频帧集合的示例;
图6是本公开一实施例提供的一种自由视角视频的视角切换装置的结构示意图;
图7是本公开另一实施例提供的一种自由视角视频的视角切换装置的结构示意图;
图8是本公开一实施例提供的一种自由视角视频的视角切换***的结构示意图;
图9是本公开一实施例提供的一种电子设备的结构示意图。
具体实施方式
应当理解,本公开的方法实施方式中记载的多个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技 术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
图1为本公开一实施例提供的一种自由视角视频的视角切换方法的流程图,本实施例可适用于对自由视角视频进行视角切换的情况,例如是可以用于在自由视角视频为直播视频时进行视角切换的应用场景,也可以用于在自由视角视频为点播视频时进行视角切换的应用场景。该方法可以由自由视角视频的视角切换装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于用户端中。如图1所示,该方法包括以下步骤:
S110、根据用户触发的视角切换操作,确定视角切换信息。
其中,本公开实施例中的自由视角视频可以是一种实时拍摄的视频,即直播视频。例如,利用不同视角下的摄像头对同一对象进行实时拍摄,获得的直播视频。自由视角视频也可以是一种已经拍摄完成的视频,即点播视频。例如,预先利用不同视角下的摄像头对同一对象进行拍摄完成后获得的点播视频。视角切换操作可以是指用户对当前播放的自由视角视频的当前观看视角进行切换的操作。例如,视角切换操作可以是但不限于用户滑动操作或者用户点击操作。视角切换信息可以用于表征视角切换后的信息。例如,若将本公开实施例中的视角切换方式应用到视频直播场景中,则视角切换信息可以包括视角切换后的目标视角信息。若将本公开实施例中的视角切换方式应用到视频点播场景中,则视角切换信息除了包括视角切换后的目标视角信息,还可以包括用户触发视角切换操作时的当前播放进度标识,以便基于当前播放进度标识确定出切换后的目标视频流的播放位置,从而保证视频观看的连贯性。其中,当前播放视频帧标识可以是但不限于当时播放时间戳或者当前播放视频帧序号。
例如,在视频直播场景中,用户在用户端上观看直播的自由视角视频的过程中可以触发视角切换操作,用户端在检测到用户触发的视角切换操作时,可以根据视角切换操作确定出视角切换后的目标视角信息。在视频点播场景中,用户在用户端上观看点播后的自由视角视频的过程中可以触发视角切换操作,用户端在检测到用户触发的视角切换操作时,可以根据视角切换操作确定出视角切换后的目标视角信息和用户触发视角切换操作时的当前播放进度标识。
示例性地,在视频直播场景和视频点播场景中,视角切换后的目标视角信息可以通过至少如下方式进行确定:
第一种确定方式:根据用户滑动操作确定视角切换后的目标视角信息。
例如,用户可以在用户端屏幕上进行滑动操作来进行视角切换。例如,用户端根据用户滑动操作,确定视角切换后的目标视角信息,可以包括:若用户向左滑动屏幕,则将当前视角信息沿逆时针方向的下一视角信息作为视角切换后的目标视角信息;若用户向右滑动屏幕,则将当前视角信息沿顺时针方向的下一视角信息作为视角切换后的目标视角信息。本公开实施例中的用户端还可以根据用户滑动方向和滑动距离确定视角切换后的目标视角信息。例如,根据用户滑动方向确定视角偏移方向,根据用户当前滑动距离确定相对于当前视角的视角偏移角度,从而可以一次性切换多个视角,简化切换操作。示例性地,若用户向左滑动屏幕,则确定视角偏移方向为逆时针方向;若用户向右滑动屏幕,则确定视角偏移方向为顺时针方向。根据预先设置的滑动距离与偏移角度之间的对应关系和用户当前滑动距离,可以确定出相对于当前视角的视角偏移角度。
第二种确定方式:根据用户点击视角操作,确定视角切换后的目标视角信息。
例如,可以在用户端的屏幕上展示出用户可选择观看的每个视角对应的视角按钮,使得用户可以基于想要切换的视角点击相应的视角按钮,从而用户端可以基于用户点击的视角按钮快速地获得视角切换后的目标视角信息,进而提高了切换效率。
S120、将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,以使媒体服 务器监听到低延时房间中的视角变化消息时,基于视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间。
其中,媒体服务器可以是指用户端的后台服务器。低延时服务器可以是一种具有低延时通信协议的服务器。低延时服务器可以将视频流在媒体服务器与用户端之间进行转发,以实现低延时的视频传输。低延时房间是在低延迟服务器上基于用户端创建的,用于实现低延时的通信效果。每个用户端对应一个低延时房间。每个低延迟房间中包括一个独立的用户端和共用的媒体服务器。例如,低延时服务器可以为但不限于实时通信RTC(Real Time Communication)服务器,低延时房间可以为但不限于RTC房间。
例如,在用户端开始播放自由视角视频之前,媒体服务器为该用户端在低延时服务器创建一个相应的低延迟房间,以便可以通过该低延迟房间与用户端进行低延时通信。用户端在获得视角切换信息之后,可以将视角切换信息发送至延时服务器,延时服务器再将视角切换信息发送至相应的低延时房间。媒体服务器可以实时监听每个低延时房间中是否存在视角变化消息,若监听到用户端对应的低延时房间中的视角变化消息时,媒体服务器可以基于视角切换信息确定视角切换后的目标视频流,并将该目标视频流推送至相应的低延时房间。
S130、通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流。
例如,媒体服务器将视角切换后的目标视频流推送至相应的低延时房间之后,用户端可以主动地通过低延时服务器拉取低延时房间中的目标视频流,也可以被动地接收通过低延时服务器发送的低延时房间中的目标视频流。例如,在低延时服务器为RTC服务器时,用户端可以通过RTC服务器拉取低延时房间中的目标视频流。通过利用低延时服务器,可以使得用户端快速地获得并播放视角切换后的目标视频流,提高了视角切换速度,避免了视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验。同时,用户端只需下载一路视频流,即一个观看视角下的视频流,无需下载所有视角下的视频流,从而也大大降低了网络下行带宽要求。
本公开实施例的技术方案,用户端通过根据用户触发的视角切换操作,确定视角切换信息,并将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,以使媒体服务器监听到低延时房间中的视角变化消息时,基于视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间,用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流,从而视角切换后的目标视频流通过低延时服务器的转发,使得用户端可以快速获得并播放该目标视频流,提高了视角切换速度,并避免视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验,同时用户端只需下载一路视频流,降低了网络下行带宽要求。
在上述技术方案的基础上,在步骤S110之前,还可以通过执行如下步骤S101-S103实现切换前的预设视角下的自由视角视频的播放:
S101、向媒体服务器发送视频播放请求,以使媒体服务器基于视频播放请求通过低延时服务器创建用户端对应的低延时房间,并将低延时房间的房间信息发送至用户端。
例如,用户端基于用户针对自由视角视频触发的播放操作,生成视频播放请求,并将该视频播放请求发送至媒体服务器,媒体服务器接收到该视频播放请求时,可以通知低延时服务器为该用户端分配一个低延时房间,以便在该低延迟房间中推送视频流,实现低延迟的通信效果。媒体服务器可以获得所分配的低延迟房间的房间信息,并将该房间信息发送至用户端。
S102、接收低延时房间的房间信息,并通过低延时服务器连接房间信息对应的低延时房间。
例如,用户端接收到媒体服务器发送的房间信息时,可以基于该房间信息连接低延时服务器上相应的低延时房间,从而使得用户端可以接收到推送至该低延迟房间的视频流。
S103、通过低延时服务器获得低延时房间中的视频流,并播放所获得的视频流,其中,所获得的视频流为媒体服务器推送的预设视角下的视频流。
其中,预设视角可以是指观看自由视角视频时的默认视角,其可以基于业务需求进行预先设置。
例如,在创建用户端对应的低延时房间之后,媒体服务器可以向该低延时房间推送预设视角下的视频流。用户端可以主动地通过低延时服务器拉取低延时房间中的预设视角下的视频流,也可以被动地接收通过低延时服务器发送的低延时房间中的预设视角下的视频流,使得用户端可以开始播放预设视角下的视频流。当用户触发视角切换操作时,可以通过上述视角切换方式,快速地从预设视角下的视频流切换至目标视频流进行播放,低时延,保证了视频切换流畅度。
图2为本公开另一实施例提供的一种自由视角视频的视角切换方法的流程图,本实施例可适用于对自由视角视频进行视角切换的情况,例如是可以用于在自由视角视频为直播视频时进行视角切换的应用场景,也可以用于在自由视角视频为点播视频时进行视角切换的应用场景。该方法可以由自由视角视频的视角切换装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于媒体服务器中。如图2所示,该方法包括以下步骤:
S210、若监听到用户端对应的低延时房间中的视角变化消息,则基于低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,视角变化消息是在用户端将视角切换信息通过低延时服务器发送至低延时房间时生成,视角切换信息是根据用户触发的视角切换操作确定的。
其中,媒体服务器可以是指用户端的后台服务器。低延时服务器可以是一种具有低延时通信协议的服务器。低延时服务器可以将视频流在媒体服务器与用户端之间进行转发,以实现低延时的视频传输。低延时房间是在低延迟服务器上基于用户端创建的,用于实现低延时的通信效果。每个用户端对应一个低延时房间。每个低延迟房间中包括一个独立的用户端和共用的媒体服务器。例如,低延时服务器可以为但不限于RTC服务器,低延时房间可以为但不限于RTC房间。
其中,本公开实施例中的自由视角视频可以是一种实时拍摄的视频,即直播视频。例如,利用不同视角下的摄像头对同一对象进行实时拍摄,获得的直播视频。自由视角视频也可以是一种已经拍摄完成的视频,即点播视频。例如,预先利用不同视角下的摄像头对同一对象进行拍摄完成后获得的点播视频。视角切换操作可以是指用户对当前播放的自由视角视频的当前观看视角进行切换的操作。例如,视角切换操作可以是但不限于用户滑动操作或者用户点击操作。视角切换信息可以用于表征视角切换后的信息。例如,若将本公开实施例中的视角切换方式应用到视频直播场景中,则视角切换信息可以包括视角切换后的目标视角信息。若将本公开实施例中的视角切换方式应用到视频点播场景中,则视角切换信息除了包括视角切换后的目标视角信息,还可以包括用户触发视角切换操作时的当前播放进度标识,以便基于当前播放进度标识确定出切换后的目标视频流的播放位置,从而保证视频观看的连贯性。其中,当前播放视频帧标识可以是但不限于当时播放时间戳或者当前播放视频帧序号。
对于视频直播场景,用户端可以根据用户触发的视角切换操作确定出视角切换后的目标视角信息,并将视角切换后的目标视角信息通过低延时服务器发送至用户端对应的低延时房间。由于低延迟房间内的视角信息为切换前的视角信息,从而可以使得低延时房间中的视角信息发生变化,生成视角变化消息。媒体服务器在监听到该低延时房间中的视角变化消息时,可以基于低延时房间中的目标视角信息确定视角切换后的目标视频流。
示例性地,在视频直播场景中,S210可以包括:根据对齐后的每个视角信息对应的当前直播视频流和低延时房间中的视角切换后的目标视角信息,确定视角切换后的目标视频流。
例如,媒体服务器可以实时接收每个视角下的摄像头所采集的当前直播视频流,接收的每个当前直播视频流中的每个视频帧均具有对齐信息,从而可以基于该对齐信息将多个当前直播视频流进行对齐操作,以保证不同视角下的视频流同步播放。其中,对齐信息可以是但不限于视频帧的采集时间戳或者帧序号。图3给出了一种视频流的对齐示例。如图3所示,可以将每个视角下的当前直播视频流中具有相同帧序号或者具有相同采集时间戳的视频帧作为同一播放时刻的视频帧,从而获得对齐后的每个视角信息对应的当前直播视频流。从对齐后的每个视角信息对应的当前直播视频流中可以确定出视角切换后的目标视角信息所对应的目标当前直播视频流,即视角切换后的目标视频流。
对于视频点播场景,用户端可以根据用户触发的视角切换操作确定出视角切换后的目标视角信息和用户触发视角切换操作时的当前播放进度标识,并将视角切换后的目标视角信息和当前播放进度标识通过低延时服务器发送至用户端对应的低延时房间,使得低延时房间中的视角信息发生变化,生成视角变化消息。媒体服务器在监听到该低延时房间中的视角变化消息时,可以基于低延时房间中的目标视角信息和当前播放进度标识确定视角切换后的目标视频流。
示例性地,在视频点播场景中,S210可以包括:根据对齐后的每个视角信息对应的点播视频流和低延时房间中的视角切换后的目标视角信息,确定目标视角下的目标点播视频流;基于低延时房间中的用户触发视角切换操作时的当前播放进度标识和目标点播视频流,确定视角切换后的目标视频流。
例如,媒体服务器可以预先对每个视角下的摄像头所采集的点播视频流进行对齐操作,比如,将每个视角下的点播视频流中具有相同帧序号或者具有相同采集时间戳的视频帧作为同一播放时刻的视频帧,从而获得对齐后的每个视角信息对应的点播视频流。从对齐后的每个视角信息对应的点播视频流中可以确定出视角切换后的目标视角信息所对应的目标点播视频流。媒体服务器可以基于用户触发视角切换操作时的当前播放进度标识确定出目标点播视频流中的目标视频帧,并可以基于目标视频帧对目标点播视频流进行视频截取,将目标点播视频流中目标视频帧之后的视频流,作为视角切换后的目标视频流。
S220、将目标视频流推送至低延时房间,以使用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流。
例如,媒体服务器将视角切换后的目标视频流推送至用户端对应的低延时房间,从而用户端可以主动地通过低延时服务器拉取低延时房间中的目标视频流,也可以被动地接收通过低延时服务器发送的低延时房间中的目标视频流。通过利用低延时服务器,用户端可以快速地获得并播放视角切换后的目标视频流,提高了视角切换速度,避免了视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验。同时,用户端只需下载一路视频流,即一个观看视角下的视频流,无需下载所有视角下的视频流,从而也大大降低了网络下行带宽要求。
本公开实施例的技术方案,用户端通过根据用户触发的视角切换操作确定视角切换信息,并将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,使得媒体服务器在监听到低延时房间中的视角变化消息时,基于低延时房间中的视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间,用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流,从而视角切换后的目标视频流通过低延时服务器的转发,使得用户端可以快速获得并播放该目标视频流,提高了视角切换速度,并避免视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验,同时用户端只需下载一路视频流,降低了网络下行带宽要求。
在上述技术方案的基础上,在步骤S210之前,还可以通过执行如下步骤S201-S203实现切换前的预设视角下的自由视角视频的播放:
S201、接收用户端发送的视频播放请求。
例如,用户端基于用户针对自由视角视频触发的播放操作,生成视频播放请求,并将该视频播放请求发送至媒体服务器,使得媒体服务器可以接收到该视频播放请求。
S202、基于视频播放请求通过低延时服务器创建用户端对应的低延时房间,并监听低延时房间的视角变化消息。
例如,媒体服务器接收到该视频播放请求后,可以通知低延时服务器为该用户端分配创建出一个低延时房间,并实时监听创建的低延时房间中的视角变化消息,以便可以及时推送不同视角下的视频流,保证视角切换速度。
S203、将低延时房间的房间信息发送至用户端,以使用户端通过低延时服务器连接房间信息对应的低延时房间。
例如,媒体服务器可以将所分配的低延迟房间的房间信息发送至用户端。用户端可以基于该房间信息连接低延时服务器上相应的低延时房间,从而使得用户端可以接收到推送至该低延迟房间的视频流。
S204、向低延时房间推送预设视角下的视频流,以使用户端通过低延时服务器获得低延时房间中的视频流,并播放所获得的视频流。
其中,预设视角可以是指观看自由视角视频时的默认视角,其可以基于业务需求进行预先设置。
例如,媒体服务器可以向该低延时房间推送预设视角下的视频流,以实现低延迟的通信效果。用户端可以主动地通过低延时服务器拉取低延时房间中的预设视角下的视频流,也可以被动地接收通过低延时服务器发送的低延时房间中的预设视角下的视频流,使得用户端可以开始播放预设视角下的视频流。当用户触发视角切换操作时,可以通过上述视角切换方式,快速地从预设视角下的视频流切换至目标视频流进行播放,低时延,保证了视频切换流畅度。
图4为本公开另一实施三提供的一种自由视角视频的视角切换方法的流程图,本实施例在上述媒体服务器侧实施例的基础上,对视频直播场景中的目标视频流的推送方式进行了详细描述。其中与上述多个实施例相同或相应的术语的解释在此不再赘述。
参见图4,本实施例提供的自由视角视频的视角切换方法包括以下步骤:
S410、获取当前最新缓存的预设数量个视频帧集合,每个视频帧集合包括对齐后的每个视角下的视频帧。
例如,在视频直播场景中,随着时间的推移,可以获得越来越多的视频帧集合,并将每个视频帧集合进行缓存。缓存的每个视频帧集合中均包括对齐后的每个视角下的直播视频帧。例如,图5给出了一种视频帧集合的示例。如图5所示,将获得的每个视频帧集合进行缓存,以便可以获取当前最新缓存的M个视频帧集合。需要说明的是,随着时间的推移,当前最新缓存的M个视频帧集合进行实时更新。
示例性地,如图5所示,在S410之前,还可以包括:获取每个视角下摄像头当前采集的当前直播视频流和当前直播视频流中的每个视频帧对应的对齐信息;将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,并将合并后的视频帧集合进行缓存。
示例性地,将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,可以包括:将每个视角下的当前直播视频流中的采集时间戳相同的视频帧合并为一个视频帧集合;或者,将每个视角下的当前直播视频流中的帧序号相同的视频帧合并为一个视频帧集合。
S420、从预设数量个视频帧集合中确定目标视频帧集合。
例如,媒体服务器可以从当前最新缓存的预设数量个视频帧集合中,按照还未推送的每 个视频帧集合的缓存先后顺序,依次确定为目标视频帧集合。例如,若视频帧的缓存频率和推送频率一致,即当前最新缓存的预设数量个视频帧集合均未被推送,则步骤S420可以包括:将预设数量个视频帧集合中的采集时间最早的视频帧集合或者帧序号最小的视频帧集合确定为目标视频帧集合。若因网络问题没有及时获得摄像头采集的视频流而导致视频帧的缓存频率和推送频率不一致,即当前最新缓存的预设数量个视频帧集合部分未被推送,则可以将当前最新缓存的预设数量个视频帧集合中的,上次推送的视频帧集合的下一视频帧集合作为目标视频帧集合,从而可以将当前最新缓存的预设数量个视频帧集合中还未推送的最早缓存的视频帧集合推送给用户端。本公开实施例通过从缓存的预设数量个视频帧集合中确定目标视频帧集合,可以避免因没有及时获得摄像头采集的视频流而导致视频流推送中断的情况,从而可以进一步降低延时,保证视频观看流畅度。
S430、根据低延时房间中的视角切换后的目标视角信息,从目标视频帧集合中确定视角切换后的目标视频帧,并将目标视频帧推送至低延时房间,并返回执行S410的操作。
例如,媒体服务器可以基于根据低延时房间中的目标视角信息,将目标视频帧集合中该目标视角信息对应的视频帧作为视角切换后的目标视频帧,并将该目标视频帧发送至低延时房间中,使得用户端可以通过低延时服务器获得低延时房间中的该目标视频帧。媒体服务器可以发送目标视频帧之后,返回执行S410的操作,以便确定出下一推送的目标视频帧,并推送至低延迟房间,依次进行类推,从而可以使得用户端获得视角切换后的目标视频流,并播放目标视频流。
示例性地,在将目标视频帧推送至低延时房间之后,还可以包括:当存在多个用户端时,对每个用户端对应的低延时房间进行视频帧推送遍历结束后,将缓存中的目标视频帧集合进行删除。
例如,媒体服务器在确定出待推送的目标视频帧集合后,可以对每个用户端对应的低延时房间进行遍历,基于每个低延时房间中的视角信息,从目标视频帧集合中确定出相应的视频帧,并将相应的视频帧发送至低延时房间。当媒体服务器遍历完成所有的低延时房间后,可以将目标视频帧集合从缓存中删除,从而可以将已推送的视频帧集合进行及时删除,释放内存空间,提高运行性能。在将缓存中的目标视频帧集合进行删除之后,媒体服务器可以返回执行步骤S410的操作,以推送下一视频帧,从而完成视频帧的推流操作。
本公开实施例的技术方案,媒体服务器通过获取当前最新缓存的预设数量个视频帧集合,从预设数量个视频帧集合中确定目标视频帧集合,并根据低延时房间中的视角切换后的目标视角信息,从目标视频帧集合中确定视角切换后的目标视频帧,并将目标视频帧推送至低延时房间,从而可以基于目标视频帧集合对每个用户端对应的低延时房间进行遍历推送视频帧,使得媒体服务器从缓存中只需取出一次目标视频帧集合,便可以满足所有用户端的推送需求,降低了缓存读写次数,提高了运行性能。
以下是本公开实施例提供的自由视角视频的视角切换装置的实施例,该装置与上述用户端侧实施例的自由视角视频的视角切换方法属于同一个构思,在自由视角视频的视角切换装置的实施例中未详尽描述的细节内容,可以参考上述用户端侧实施例所提供的自由视角视频的视角切换方法。
图6为本公开一实施例提供的一种自由视角视频的视角切换装置的结构示意图,本实施例可适用于对自由视角视频进行视角切换的情况,该装置集成于用户端。如图6所示,该装置包括:视角切换信息确定模块610、视角切换信息发送模块620和目标视频流播放模块630。
其中,视角切换信息确定模块610,设置为根据用户触发的视角切换操作,确定视角切换信息;视角切换信息发送模块620,设置为将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,以使媒体服务器监听到低延时房间中的视角变化消息时,基于视角切 换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间;目标视频流播放模块630,设置为通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流。
本公开实施例的技术方案,用户端通过根据用户触发的视角切换操作确定视角切换信息,并将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,使得媒体服务器在监听到低延时房间中的视角变化消息时,基于低延时房间中的视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间,用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流,从而视角切换后的目标视频流通过低延时服务器的转发,使得用户端可以快速获得并播放该目标视频流,提高了视角切换速度,并避免视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验,同时用户端只需下载一路视频流,降低了网络下行带宽要求。
在上述技术方案的基础上,在视频直播场景中,视角切换信息包括视角切换后的目标视角信息;在视频点播场景中,视角切换信息包括视角切换后的目标视角信息和用户触发视角切换操作时的当前播放进度标识。
在上述多个技术方案的基础上,当前播放视频帧标识为当时播放时间戳或者当前播放视频帧序号。
在上述多个技术方案的基础上,视角切换信息确定模块610,设置为:根据用户滑动操作或者用户点击视角操作,确定视角切换后的目标视角信息。
在上述多个技术方案的基础上,视角切换信息确定模块610,还设置为:
若用户向左滑动屏幕,则将当前视角信息沿逆时针方向的下一视角信息作为视角切换后的目标视角信息;若用户向右滑动屏幕,则将当前视角信息沿顺时针方向的下一视角信息作为视角切换后的目标视角信息。
在上述多个技术方案的基础上,该装置还包括:
视频播放请求发送模块,设置为在根据用户触发的视角切换操作,确定视角切换信息之前,向媒体服务器发送视频播放请求,以使媒体服务器基于视频播放请求通过低延时服务器创建用户端对应的低延时房间,并将低延时房间的房间信息发送至用户端;
房间信息接收模块,设置为接收低延时房间的房间信息,并通过低延时服务器连接房间信息对应的低延时房间;
预设视角视频流播放模块,设置为通过低延时服务器获得低延时房间中的视频流,并播放所获得的视频流,其中,所获得的视频流为媒体服务器推送的预设视角下的视频流。
在上述多个技术方案的基础上,低延时服务器为实时通信RTC服务器,低延时房间为RTC房间。
本公开实施例所提供的自由视角视频的视角切换装置可执行本公开用户端侧实施例所提供的自由视角视频的视角切换方法,具备执行自由视角视频的视角切换方法相应的功能模块和有益效果。
值得注意的是,上述装置所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开实施例的保护范围。
以下是本公开实施例提供的自由视角视频的视角切换装置的实施例,该装置与上述媒体服务器侧实施例的自由视角视频的视角切换方法属于同一个构思,在自由视角视频的视角切换装置的实施例中未详尽描述的细节内容,可以参考上述媒体服务器侧实施例所提供的自由视角视频的视角切换方法。
图7为本公开另一实施例提供的一种自由视角视频的视角切换装置的结构示意图,本实施例可适用于对自由视角视频进行视角切换的情况,该装置集成于媒体服务器。如图7所示, 该装置包括:目标视频流确定模块710和目标视频流推送模块720。
其中,目标视频流确定模块710,设置为若监听到用户端对应的低延时房间中的视角变化消息,则基于低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,视角变化消息是在用户端将视角切换信息通过低延时服务器发送至低延时房间时生成,视角切换信息是根据用户触发的视角切换操作确定的;目标视频流推送模块720,设置为将目标视频流推送至低延时房间,以使用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流。
本公开实施例的技术方案,用户端通过根据用户触发的视角切换操作确定视角切换信息,并将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,使得媒体服务器在监听到低延时房间中的视角变化消息时,基于低延时房间中的视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间,用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流,从而视角切换后的目标视频流通过低延时服务器的转发,使得用户端可以快速获得并播放该目标视频流,提高了视角切换速度,并避免视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验,同时用户端只需下载一路视频流,降低了网络下行带宽要求。
在上述技术方案的基础上,目标视频流确定模块710和目标视频流推送模块720,包括:
视频帧集合获取单元,设置为获取当前最新缓存的预设数量个视频帧集合,每个视频帧集合包括对齐后的每个视角下的视频帧;
目标视频帧集合确定单元,设置为从预设数量个视频帧集合中确定目标视频帧集合;
目标视频帧推送单元,设置为根据低延时房间中的视角切换后的目标视角信息,从目标视频帧集合中确定视角切换后的目标视频帧,并将目标视频帧推送至低延时房间,并返回执行获得当前最新缓存的预设数量个视频帧集合的操作。
在上述多个技术方案的基础上,该装置还包括:
当前直播视频流获取单元,设置为在获取当前最新缓存的预设数量个视频帧集合之前,获取每个视角下摄像头当前采集的当前直播视频流和当前直播视频流中的每个视频帧对应的对齐信息;
视频帧合并单元,设置为将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,并将合并后的视频帧集合进行缓存。
在上述多个技术方案的基础上,视频帧合并单元,设置为:
将每个视角下的当前直播视频流中的采集时间戳相同的视频帧合并为一个视频帧集合;或者,将每个视角下的当前直播视频流中的帧序号相同的视频帧合并为一个视频帧集合。
在上述多个技术方案的基础上,目标视频帧集合确定单元,设置为:
将预设数量个视频帧集合中的采集时间最早的视频帧集合或者帧序号最小的视频帧集合确定为目标视频帧集合。
在上述多个技术方案的基础上,该装置还包括:
目标视频帧删除单元,设置为,在将目标视频帧推送至低延时房间之后,当存在多个用户端时,对每个用户端对应的低延时房间进行视频帧推送遍历结束后,将缓存中的目标视频帧集合进行删除。
在上述多个技术方案的基础上,目标视频流确定模块710,还设置为:
根据对齐后的每个视角信息对应的当前直播视频流和低延时房间中的视角切换后的目标视角信息,确定视角切换后的目标视频流。
在上述多个技术方案的基础上,目标视频流确定模块710,还设置为:
根据对齐后的每个视角信息对应的点播视频流和低延时房间中的视角切换后的目标视角信息,确定目标视角下的目标点播视频流;基于低延时房间中的用户触发视角切换操作时的 当前播放进度标识和目标点播视频流,确定视角切换后的目标视频流。
在上述多个技术方案的基础上,该装置还包括:
视频播放请求接收模块,设置为在监听到用户端对应的低延时房间中的视角变化消息之前,接收用户端发送的视频播放请求;
低延时房间创建模块,设置为基于视频播放请求通过低延时服务器创建用户端对应的低延时房间,并监听低延时房间的视角变化消息;
房间信息发送模块,设置为将低延时房间的房间信息发送至用户端,以使用户端通过低延时服务器连接房间信息对应的低延时房间;
预设视角视频流向推送模块,设置为低延时房间推送预设视角下的视频流,以使用户端通过低延时服务器获得低延时房间中的视频流,并播放所获得的视频流。
本公开实施例所提供的自由视角视频的视角切换装置可执行本公开媒体服务器侧实施例所提供的自由视角视频的视角切换方法,具备执行自由视角视频的视角切换方法相应的功能模块和有益效果。
值得注意的是,上述装置所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开实施例的保护范围。
图8为本公开实施例提供的一种自由视角视频的视角切换***的结构示意图。本实施例可适用于对自由视角视频进行视角切换的情况。如图8所示,该***包括:用户端810、媒体服务器820和低延时服务器830
其中,每个用户端810可以设置为实现如本公开用户端侧实施例所提供的自由视角视频的视角切换方法;媒体服务器820可以设置为实现如本公开媒体服务器侧实施例和实施例三所提供的自由视角视频的视角切换方法。低延时服务器830设置为将视频流在用户端810和媒体服务器820之间进行转发,以实现低延时的技术效果。
本公开实施例提供的自由视角视频的视角切换***,用户端通过根据用户触发的视角切换操作,确定视角切换信息,并将视角切换信息通过低延时服务器发送至用户端对应的低延时房间。媒体服务器监听到低延时房间中的视角变化消息时,基于视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间。用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流,从而视角切换后的目标视频流通过低延时服务器的转发,可以使得用户端快速获得并播放该目标视频流,提高了视角切换速度,并避免视角切换时存在的视频卡顿不连续的情况,保证了视频切换流畅度,提升了用户观看体验,同时用户端只需下载一路视频流,降低了网络下行带宽要求。
下面参考图9,其示出了适于用来实现本公开实施例的电子设备(例如图9中的终端设备或服务器)900的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,PDA)、平板电脑(PAD)、便携式多媒体播放(Portable Media Player,PMP器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图9示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,电子设备900可以包括处理装置(例如中央处理器、图形处理器等)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储装置908加载到随机访问存储器(RAM)903中的程序而执行多种适当的动作和处理。在RAM 903中,还存储有电子设备900操作所需的多种程序和数据。处理装置901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
通常,以下装置可以连接至I/O接口905:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置906;包括例如液晶显示器(Liquid Crystal Display,LCD)、扬声器、振动器等的输出装置907;包括例如磁带、硬盘等的存储装置908;以及通信装置909。通信装置909可以允许电子设备900与其他设备进行无线或有线通信以交换数据。虽然图9示出了具有多种装置的电子设备900,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含设置为执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置909从网络上被下载和安装,或者从存储装置908被安装,或者从ROM 902被安装。在该计算机程序被处理装置901执行时,执行本公开实施例的方法中限定的上述功能。
本公开实施例提供的电子设备与上述实施例提供的自由视角视频的视角切换方法属于同一构思,未在本公开实施例中详尽描述的技术细节可参见上述实施例,并且本公开实施例与上述实施例具有相同的有益效果。
本公开实施例提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任意实施例所提供的自由视角视频的视角切换方法。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、射频(RF)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如超文本传输协议(HyperText Transfer Protocol,HTTP)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(LAN),广域网(WAN),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
根据用户触发的视角切换操作,确定视角切换信息;将视角切换信息通过低延时服务器发送至用户端对应的低延时房间,以使媒体服务器监听到低延时房间中的视角变化消息时, 基于视角切换信息确定视角切换后的目标视频流,并将目标视频流推送至低延时房间;通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流。
或者,
若监听到用户端对应的低延时房间中的视角变化消息,则基于低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,视角变化消息是在用户端将视角切换信息通过低延时服务器发送至低延时房间时生成,视角切换信息是根据用户触发的视角切换操作确定的;将目标视频流推送至低延时房间,以使用户端通过低延时服务器获得低延时房间中的目标视频流,并播放目标视频流。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开多种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,可编辑内容显示单元还可以被描述为“编辑单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用标准产品(Application Specific Standard Parts,ASSP)、片上***(System-on-a-chip,SOC)、复杂可编程逻辑设备(Complex Programmable Logic Device,CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,【示例一】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法包括:
根据用户触发的视角切换操作,确定视角切换信息;
将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体 服务器监听到所述低延时房间中的视角变化消息时,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;
通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
根据本公开的一个或多个实施例,【示例二】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法还包括:
例如,在视频直播场景中,所述视角切换信息包括视角切换后的目标视角信息;
在视频点播场景中,所述视角切换信息包括视角切换后的目标视角信息和用户触发视角切换操作时的当前播放进度标识。
根据本公开的一个或多个实施例,【示例三】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法还包括:
例如,所述当前播放视频帧标识为当时播放时间戳或者当前播放视频帧序号。
根据本公开的一个或多个实施例,【示例四】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法还包括:
例如,所述根据所述视角切换操作,确定视角切换后的目标视角信息,包括:
根据用户滑动操作或者用户点击视角操作,确定视角切换后的目标视角信息。
根据本公开的一个或多个实施例,【示例五】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法还包括:
例如,所述根据用户滑动操作,确定视角切换后的目标视角信息,包括:
若用户向左滑动屏幕,则将当前视角信息沿逆时针方向的下一视角信息作为视角切换后的目标视角信息;
若用户向右滑动屏幕,则将当前视角信息沿顺时针方向的下一视角信息作为视角切换后的目标视角信息。
根据本公开的一个或多个实施例,【示例六】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法还包括:
例如,在所述根据用户触发的视角切换操作,确定视角切换信息之前,还包括:
向所述媒体服务器发送视频播放请求,以使所述媒体服务器基于所述视频播放请求通过所述低延时服务器创建所述用户端对应的低延时房间,并将所述低延时房间的房间信息发送至所述用户端;
接收所述低延时房间的房间信息,并通过所述低延时服务器连接所述房间信息对应的所述低延时房间;
通过所述低延时服务器获得所述低延时房间中的视频流,并播放所获得的视频流,其中,所获得的视频流为所述媒体服务器推送的预设视角下的视频流。
根据本公开的一个或多个实施例,【示例七】提供了一种自由视角视频的视角切换方法,应用于用户端,该方法还包括:
例如,所述低延时服务器为实时通信RTC服务器,所述低延时房间为RTC房间。
根据本公开的一个或多个实施例,【示例八】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法包括:
若监听到用户端对应的低延时房间中的视角变化消息,则基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;
将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
根据本公开的一个或多个实施例,【示例九】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流;将所述目标视频流推送至所述低延时房间,包括:
获取当前最新缓存的预设数量个视频帧集合,每个视频帧集合包括对齐后的每个视角下的视频帧;
从所述预设数量个视频帧集合中确定目标视频帧集合;
根据所述低延时房间中的视角切换后的目标视角信息,从所述目标视频帧集合中确定视角切换后的目标视频帧,并将所述目标视频帧推送至所述低延时房间,并返回执行所述获得当前最新缓存的预设数量个视频帧集合的操作。
根据本公开的一个或多个实施例,【示例十】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,在所述获取当前最新缓存的预设数量个视频帧集合之前,还包括:
获取每个视角下摄像头当前采集的当前直播视频流和所述当前直播视频流中的每个视频帧对应的对齐信息;
将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,并将合并后的视频帧集合进行缓存。
根据本公开的一个或多个实施例,【示例十一】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,包括:
将每个视角下的当前直播视频流中的采集时间戳相同的视频帧合并为一个视频帧集合;或者,
将每个视角下的当前直播视频流中的帧序号相同的视频帧合并为一个视频帧集合。
根据本公开的一个或多个实施例,【示例十二】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,从所述预设数量个视频帧集合中确定目标视频帧集合,包括:
将所述预设数量个视频帧集合中的采集时间最早的视频帧集合或者帧序号最小的视频帧集合确定为目标视频帧集合。
根据本公开的一个或多个实施例,【示例十三】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,在将所述目标视频帧推送至所述低延时房间之后,还包括:
当存在多个用户端时,对每个用户端对应的低延时房间进行视频帧推送遍历结束后,将缓存中的所述目标视频帧集合进行删除。
根据本公开的一个或多个实施例,【示例十四】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:
根据对齐后的每个视角信息对应的当前直播视频流和所述低延时房间中的视角切换后的目标视角信息,确定视角切换后的目标视频流。
根据本公开的一个或多个实施例,【示例十五】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:
根据对齐后的每个视角信息对应的点播视频流和所述低延时房间中的视角切换后的目标视角信息,确定目标视角下的目标点播视频流;
基于所述低延时房间中的用户触发视角切换操作时的当前播放进度标识和所述目标点播视频流,确定视角切换后的目标视频流。
根据本公开的一个或多个实施例,【示例十六】提供了一种自由视角视频的视角切换方法,应用于媒体服务器,该方法还包括:
例如,在所述监听到用户端对应的低延时房间中的视角变化消息之前,还包括:
接收所述用户端发送的视频播放请求;
基于所述视频播放请求通过所述低延时服务器创建所述用户端对应的低延时房间,并监听所述低延时房间的视角变化消息;
将所述低延时房间的房间信息发送至所述用户端,以使所述用户端通过低延时服务器连接所述房间信息对应的所述低延时房间;
向所述低延时房间推送预设视角下的视频流,以使所述用户端通过所述低延时服务器获得所述低延时房间中的视频流,并播放所获得的视频流。
根据本公开的一个或多个实施例,【示例十七】提供了一种自由视角视频的视角切换装置,集成于用户端,该装置包括:
视角切换信息确定模块,设置为根据用户触发的视角切换操作,确定视角切换信息;
视角切换信息发送模块,设置为将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器监听到所述低延时房间中的视角变化消息时,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;
目标视频流播放模块,设置为通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
根据本公开的一个或多个实施例,【示例十八】提供了一种自由视角视频的视角切换装置,集成于媒体服务器,该装置包括:
目标视频流确定模块,设置为若监听到用户端对应的低延时房间中的视角变化消息,则基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;
目标视频流推送模块,设置为将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
此外,虽然采用特定次序描绘了多种操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的多种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。

Claims (20)

  1. 一种自由视角视频的视角切换方法,应用于用户端,包括:
    根据用户触发的视角切换操作,确定视角切换信息;
    将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器响应于确定监听到所述低延时房间中的视角变化消息,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;
    通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
  2. 根据权利要求1所述的方法,其中,
    在视频直播场景中,所述视角切换信息包括视角切换后的目标视角信息;
    在视频点播场景中,所述视角切换信息包括视角切换后的目标视角信息和用户触发视角切换操作时的当前播放进度标识。
  3. 根据权利要求2所述的方法,其中,所述当前播放视频帧标识为当时播放时间戳或者当前播放视频帧序号。
  4. 根据权利要求2所述的方法,其中,所述根据用户触发的视角切换操作,确定视角切换后的目标视角信息,包括:
    根据用户滑动操作或者用户点击视角操作,确定视角切换后的目标视角信息。
  5. 根据权利要求4所述的方法,其中,所述根据用户滑动操作,确定视角切换后的目标视角信息,包括:
    响应于确定用户向左滑动屏幕,将当前视角信息沿逆时针方向的下一视角信息作为视角切换后的目标视角信息;
    响应于确定用户向右滑动屏幕,将当前视角信息沿顺时针方向的下一视角信息作为视角切换后的目标视角信息。
  6. 根据权利要求1所述的方法,在所述根据用户触发的视角切换操作,确定视角切换信息之前,还包括:
    向所述媒体服务器发送视频播放请求,以使所述媒体服务器基于所述视频播放请求通过所述低延时服务器创建所述用户端对应的低延时房间,并将所述低延时房间的房间信息发送至所述用户端;
    接收所述低延时房间的房间信息,并通过所述低延时服务器连接所述房间信息对应的所述低延时房间;
    通过所述低延时服务器获得所述低延时房间中的视频流,并播放所获得的视频流,其中,所获得的视频流为所述媒体服务器推送的预设视角下的视频流。
  7. 根据权利要求1-6任一所述的方法,其中,所述低延时服务器为实时通信RTC服务器,所述低延时房间为RTC房间。
  8. 一种自由视角视频的视角切换方法,应用于媒体服务器,包括:
    响应于确定监听到用户端对应的低延时房间中的视角变化消息,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;
    将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
  9. 根据权利要求8所述的方法,其中,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:
    获取当前最新缓存的预设数量个视频帧集合,每个视频帧集合包括对齐后的每个视角下的视频帧;
    从所述预设数量个视频帧集合中确定目标视频帧集合;
    根据所述低延时房间中的视角切换后的目标视角信息,从所述目标视频帧集合中确定视角切换后的目标视频帧;
    所述将所述目标视频流推送至所述低延时房间,包括:
    将所述目标视频帧推送至所述低延时房间,并返回执行所述获得当前最新缓存的预设数量个视频帧集合的操作。
  10. 根据权利要求9所述的方法,在所述获取当前最新缓存的预设数量个视频帧集合之前,还包括:
    获取每个视角下摄像头当前采集的当前直播视频流和所述当前直播视频流中的每个视频帧对应的对齐信息;
    将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,并将合并后的视频帧集合进行缓存。
  11. 根据权利要求10所述的方法,其中,所述将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,包括:
    将每个视角下的当前直播视频流中的采集时间戳相同的视频帧合并为一个视频帧集合;或者,
    将每个视角下的当前直播视频流中的帧序号相同的视频帧合并为一个视频帧集合。
  12. 根据权利要求9所述的方法,其中,所述从所述预设数量个视频帧集合中确定目标视频帧集合,包括:
    将所述预设数量个视频帧集合中的采集时间最早的视频帧集合或者帧序号最小的视频帧集合确定为目标视频帧集合。
  13. 根据权利要求9所述的方法,在将所述目标视频帧推送至所述低延时房间之后,还包括:
    响应于确定存在多个用户端,对每个用户端对应的低延时房间进行视频帧推送遍历结束后,将缓存中的所述目标视频帧集合进行删除。
  14. 根据权利要求8所述的方法,其中,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:
    根据对齐后的每个视角信息对应的当前直播视频流和所述低延时房间中的视角切换后的目标视角信息,确定视角切换后的目标视频流。
  15. 根据权利要求8所述的方法,其中,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:
    根据对齐后的每个视角信息对应的点播视频流和所述低延时房间中的视角切换后的目标视角信息,确定目标视角下的目标点播视频流;
    基于所述低延时房间中的用户触发视角切换操作时的当前播放进度标识和所述目标点播视频流,确定视角切换后的目标视频流。
  16. 一种自由视角视频的视角切换装置,集成于用户端,包括:
    视角切换信息确定模块,设置为根据用户触发的视角切换操作,确定视角切换信息;
    视角切换信息发送模块,设置为将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器响应于确定监听到所述低延时房间中的视角变化消息,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;
    目标视频流播放模块,设置为通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
  17. 一种自由视角视频的视角切换装置,集成于媒体服务器,包括:
    目标视频流确定模块,设置为响应于确定监听到用户端对应的低延时房间中的视角变化消息,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;
    目标视频流推送模块,设置为将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
  18. 一种自由视角视频的视角切换***,包括:用户端、媒体服务器和低延时服务器;
    其中,所述用户端设置为实现如权利要求1-7中任一所述的自由视角视频的视角切换方法;
    所述媒体服务器设置为实现如权利要求8-15中任一所述的自由视角视频的视角切换方法。
  19. 一种电子设备,包括:
    一个或多个处理器;
    存储器,设置为存储一个或多个程序;
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-15中任一所述的自由视角视频的视角切换方法。
  20. 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-15中任一所述的自由视角视频的视角切换方法。
PCT/CN2022/112805 2021-09-09 2022-08-16 自由视角视频的视角切换方法、装置、***、设备和介质 WO2023035879A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP22866353.0A EP4297416A1 (en) 2021-09-09 2022-08-16 Angle-of-view switching method, apparatus and system for free angle-of-view video, and device and medium
US18/551,913 US20240223819A1 (en) 2021-09-09 2022-08-16 Angle-of-view switching method, apparatus and system for free angle-of-view video, and device and medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111056276.8A CN113794942B (zh) 2021-09-09 2021-09-09 自由视角视频的视角切换方法、装置、***、设备和介质
CN202111056276.8 2021-09-09

Publications (1)

Publication Number Publication Date
WO2023035879A1 true WO2023035879A1 (zh) 2023-03-16

Family

ID=79182898

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/112805 WO2023035879A1 (zh) 2021-09-09 2022-08-16 自由视角视频的视角切换方法、装置、***、设备和介质

Country Status (4)

Country Link
US (1) US20240223819A1 (zh)
EP (1) EP4297416A1 (zh)
CN (1) CN113794942B (zh)
WO (1) WO2023035879A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113794942B (zh) * 2021-09-09 2022-12-02 北京字节跳动网络技术有限公司 自由视角视频的视角切换方法、装置、***、设备和介质
CN114390324A (zh) * 2022-03-23 2022-04-22 阿里云计算有限公司 视频处理方法、***以及云转播方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102055967A (zh) * 2009-10-28 2011-05-11 ***通信集团公司 多视点视频的视角切换以及编码方法和装置
US20150296247A1 (en) * 2012-02-29 2015-10-15 ExXothermic, Inc. Interaction of user devices and video devices
US20170280054A1 (en) * 2016-03-22 2017-09-28 Le Holdings (Beijing) Co., Ltd. Method and electronic device for panoramic live broadcast
WO2020012062A2 (en) * 2018-07-13 2020-01-16 Nokia Technologies Oy Multi-viewpoint multi-user audio user experience
CN110944140A (zh) * 2019-11-30 2020-03-31 北京城市网邻信息技术有限公司 远程展示方法、远程展示***、电子装置、存储介质
US20210014558A1 (en) * 2018-04-04 2021-01-14 Huawei Technologies Co., Ltd. Media Information Processing Method, Related Device, and Computer Storage Medium
CN112261421A (zh) * 2020-10-12 2021-01-22 Oppo广东移动通信有限公司 虚拟现实的显示方法、装置、电子设备及存储介质
CN112333448A (zh) * 2020-11-04 2021-02-05 北京金山云网络技术有限公司 视频编码、解码方法和装置、电子设备和存储介质
CN112738010A (zh) * 2019-10-28 2021-04-30 阿里巴巴集团控股有限公司 数据交互方法及***、交互终端、可读存储介质
CN113794942A (zh) * 2021-09-09 2021-12-14 北京字节跳动网络技术有限公司 自由视角视频的视角切换方法、装置、***、设备和介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8875208B1 (en) * 2007-11-21 2014-10-28 Skype High quality multimedia transmission from a mobile device for live and on-demand viewing
CN102325261A (zh) * 2011-09-14 2012-01-18 上海交通大学 立体视频采集合成***的视间视频数据消抖同步方法
US9078012B2 (en) * 2012-10-09 2015-07-07 Christoph Bieselt Viewing angle switching for live broadcasts and on demand video playback
US9118843B2 (en) * 2013-01-17 2015-08-25 Google Inc. Methods and systems for creating swivel views from a handheld device
EP3245792A1 (en) * 2014-12-25 2017-11-22 Echostar Ukraine, L.L.C. Simultaneously viewing multiple camera angles
CN107534789B (zh) * 2015-06-25 2021-04-27 松下知识产权经营株式会社 影像同步装置及影像同步方法
US9848212B2 (en) * 2015-07-10 2017-12-19 Futurewei Technologies, Inc. Multi-view video streaming with fast and smooth view switch
CN106612426B (zh) * 2015-10-26 2018-03-16 华为技术有限公司 一种多视点视频传输方法及装置
CN106358036B (zh) * 2016-08-31 2018-05-08 杭州当虹科技有限公司 一种以预设视角观看虚拟现实视频的方法
JP2018207153A (ja) * 2017-05-30 2018-12-27 株式会社Tbsテレビ 情報処理装置、情報処理方法、及びプログラム
CN114143606A (zh) * 2018-08-22 2022-03-04 华为技术有限公司 一种实现视频流切换的方法、装置和***
CN111669518A (zh) * 2019-03-07 2020-09-15 阿里巴巴集团控股有限公司 多角度自由视角交互方法及装置、介质、终端、设备
CN111447462B (zh) * 2020-05-20 2022-07-05 上海科技大学 基于视角切换的视频直播方法、***、存储介质及终端
CN111866525A (zh) * 2020-09-23 2020-10-30 腾讯科技(深圳)有限公司 多视点视频的播放控制方法及装置、电子设备、存储介质
CN112019927B (zh) * 2020-09-23 2023-01-06 Oppo广东移动通信有限公司 视频直播方法、连麦设备、直播***及存储介质
CN112929580A (zh) * 2021-01-14 2021-06-08 北京奇艺世纪科技有限公司 多视角视频播放方法、装置、***、服务器和客户端设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102055967A (zh) * 2009-10-28 2011-05-11 ***通信集团公司 多视点视频的视角切换以及编码方法和装置
US20150296247A1 (en) * 2012-02-29 2015-10-15 ExXothermic, Inc. Interaction of user devices and video devices
US20170280054A1 (en) * 2016-03-22 2017-09-28 Le Holdings (Beijing) Co., Ltd. Method and electronic device for panoramic live broadcast
US20210014558A1 (en) * 2018-04-04 2021-01-14 Huawei Technologies Co., Ltd. Media Information Processing Method, Related Device, and Computer Storage Medium
WO2020012062A2 (en) * 2018-07-13 2020-01-16 Nokia Technologies Oy Multi-viewpoint multi-user audio user experience
CN112738010A (zh) * 2019-10-28 2021-04-30 阿里巴巴集团控股有限公司 数据交互方法及***、交互终端、可读存储介质
CN110944140A (zh) * 2019-11-30 2020-03-31 北京城市网邻信息技术有限公司 远程展示方法、远程展示***、电子装置、存储介质
CN112261421A (zh) * 2020-10-12 2021-01-22 Oppo广东移动通信有限公司 虚拟现实的显示方法、装置、电子设备及存储介质
CN112333448A (zh) * 2020-11-04 2021-02-05 北京金山云网络技术有限公司 视频编码、解码方法和装置、电子设备和存储介质
CN113794942A (zh) * 2021-09-09 2021-12-14 北京字节跳动网络技术有限公司 自由视角视频的视角切换方法、装置、***、设备和介质

Also Published As

Publication number Publication date
US20240223819A1 (en) 2024-07-04
CN113794942A (zh) 2021-12-14
EP4297416A1 (en) 2023-12-27
CN113794942B (zh) 2022-12-02

Similar Documents

Publication Publication Date Title
WO2023035879A1 (zh) 自由视角视频的视角切换方法、装置、***、设备和介质
WO2022262459A1 (zh) 投屏方法、装置、电子设备和存储介质
WO2023051243A1 (zh) 视频码率切换方法、装置、电子设备及存储介质
WO2022095840A1 (zh) 直播间创建方法、装置、电子设备及存储介质
WO2023071598A1 (zh) 音视频同步监控方法、装置、电子设备及存储介质
WO2023165371A1 (zh) 音频播放方法、装置、电子设备及存储介质
CN111970524A (zh) 交互类直播连麦的控制方法、装置、***、设备及介质
WO2023179406A1 (zh) 一种播放信息的同步方法、装置、终端设备和存储介质
CN111818383A (zh) 视频数据的生成方法、***、装置、电子设备及存储介质
CN114095671A (zh) 云会议直播***、方法、装置、设备及介质
CN113542856A (zh) 在线录像的倒放方法、装置、设备和计算机可读介质
WO2023197811A1 (zh) 视频下载、传输方法、装置、终端设备、服务器及介质
WO2023179404A1 (zh) 直播启播方法、设备及程序产品
WO2022218425A1 (zh) 一种录音推流方法、装置、设备及介质
CN112153322B (zh) 数据分发方法、装置、设备及存储介质
CN114584822B (zh) 一种同步播放方法、装置、终端设备和存储介质
CN112040328A (zh) 数据交互方法、装置和电子设备
CN110708314A (zh) 直播流数据上传方法、装置、电子设备及存储介质
CN113794936B (zh) 一种精彩瞬间生成方法、装置、***、设备和介质
WO2022188688A1 (zh) 信息发送方法、装置、电子设备及计算机可读存储介质
CN111800649A (zh) 存储视频的方法和装置以及生成视频的方法和装置
CN117499688B (zh) 直播连麦中音视频合流处理方法、设备及存储介质
CN115834966A (zh) 一种视频播放方法、装置、设备和存储介质
CN113794836B (zh) 一种子弹时间视频生成方法、装置、***、设备和介质
CN114827742B (zh) 直播互动方法、装置、计算机设备及计算机可读介质

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022866353

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 18551913

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2022866353

Country of ref document: EP

Effective date: 20230921

NENP Non-entry into the national phase

Ref country code: DE