WO2023035879A1 - 自由视角视频的视角切换方法、装置、系统、设备和介质 - Google Patents
自由视角视频的视角切换方法、装置、系统、设备和介质 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 100
- 230000008859 change Effects 0.000 claims abstract description 46
- 230000001960 triggered effect Effects 0.000 claims abstract description 34
- 230000004044 response Effects 0.000 claims abstract description 8
- 238000004891 communication Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012546 transfer Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/21805—Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client 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/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content 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
Description
Claims (20)
- 一种自由视角视频的视角切换方法,应用于用户端,包括:根据用户触发的视角切换操作,确定视角切换信息;将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器响应于确定监听到所述低延时房间中的视角变化消息,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
- 根据权利要求1所述的方法,其中,在视频直播场景中,所述视角切换信息包括视角切换后的目标视角信息;在视频点播场景中,所述视角切换信息包括视角切换后的目标视角信息和用户触发视角切换操作时的当前播放进度标识。
- 根据权利要求2所述的方法,其中,所述当前播放视频帧标识为当时播放时间戳或者当前播放视频帧序号。
- 根据权利要求2所述的方法,其中,所述根据用户触发的视角切换操作,确定视角切换后的目标视角信息,包括:根据用户滑动操作或者用户点击视角操作,确定视角切换后的目标视角信息。
- 根据权利要求4所述的方法,其中,所述根据用户滑动操作,确定视角切换后的目标视角信息,包括:响应于确定用户向左滑动屏幕,将当前视角信息沿逆时针方向的下一视角信息作为视角切换后的目标视角信息;响应于确定用户向右滑动屏幕,将当前视角信息沿顺时针方向的下一视角信息作为视角切换后的目标视角信息。
- 根据权利要求1所述的方法,在所述根据用户触发的视角切换操作,确定视角切换信息之前,还包括:向所述媒体服务器发送视频播放请求,以使所述媒体服务器基于所述视频播放请求通过所述低延时服务器创建所述用户端对应的低延时房间,并将所述低延时房间的房间信息发送至所述用户端;接收所述低延时房间的房间信息,并通过所述低延时服务器连接所述房间信息对应的所述低延时房间;通过所述低延时服务器获得所述低延时房间中的视频流,并播放所获得的视频流,其中,所获得的视频流为所述媒体服务器推送的预设视角下的视频流。
- 根据权利要求1-6任一所述的方法,其中,所述低延时服务器为实时通信RTC服务器,所述低延时房间为RTC房间。
- 一种自由视角视频的视角切换方法,应用于媒体服务器,包括:响应于确定监听到用户端对应的低延时房间中的视角变化消息,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
- 根据权利要求8所述的方法,其中,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:获取当前最新缓存的预设数量个视频帧集合,每个视频帧集合包括对齐后的每个视角下的视频帧;从所述预设数量个视频帧集合中确定目标视频帧集合;根据所述低延时房间中的视角切换后的目标视角信息,从所述目标视频帧集合中确定视角切换后的目标视频帧;所述将所述目标视频流推送至所述低延时房间,包括:将所述目标视频帧推送至所述低延时房间,并返回执行所述获得当前最新缓存的预设数量个视频帧集合的操作。
- 根据权利要求9所述的方法,在所述获取当前最新缓存的预设数量个视频帧集合之前,还包括:获取每个视角下摄像头当前采集的当前直播视频流和所述当前直播视频流中的每个视频帧对应的对齐信息;将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,并将合并后的视频帧集合进行缓存。
- 根据权利要求10所述的方法,其中,所述将每个视角下的当前直播视频流中具有相同对齐信息的视频帧合并为一个视频帧集合,包括:将每个视角下的当前直播视频流中的采集时间戳相同的视频帧合并为一个视频帧集合;或者,将每个视角下的当前直播视频流中的帧序号相同的视频帧合并为一个视频帧集合。
- 根据权利要求9所述的方法,其中,所述从所述预设数量个视频帧集合中确定目标视频帧集合,包括:将所述预设数量个视频帧集合中的采集时间最早的视频帧集合或者帧序号最小的视频帧集合确定为目标视频帧集合。
- 根据权利要求9所述的方法,在将所述目标视频帧推送至所述低延时房间之后,还包括:响应于确定存在多个用户端,对每个用户端对应的低延时房间进行视频帧推送遍历结束后,将缓存中的所述目标视频帧集合进行删除。
- 根据权利要求8所述的方法,其中,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:根据对齐后的每个视角信息对应的当前直播视频流和所述低延时房间中的视角切换后的目标视角信息,确定视角切换后的目标视频流。
- 根据权利要求8所述的方法,其中,所述基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,包括:根据对齐后的每个视角信息对应的点播视频流和所述低延时房间中的视角切换后的目标视角信息,确定目标视角下的目标点播视频流;基于所述低延时房间中的用户触发视角切换操作时的当前播放进度标识和所述目标点播视频流,确定视角切换后的目标视频流。
- 一种自由视角视频的视角切换装置,集成于用户端,包括:视角切换信息确定模块,设置为根据用户触发的视角切换操作,确定视角切换信息;视角切换信息发送模块,设置为将所述视角切换信息通过低延时服务器发送至所述用户端对应的低延时房间,以使媒体服务器响应于确定监听到所述低延时房间中的视角变化消息,基于所述视角切换信息确定视角切换后的目标视频流,并将所述目标视频流推送至所述低延时房间;目标视频流播放模块,设置为通过所述低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
- 一种自由视角视频的视角切换装置,集成于媒体服务器,包括:目标视频流确定模块,设置为响应于确定监听到用户端对应的低延时房间中的视角变化消息,基于所述低延时房间中的视角切换信息确定视角切换后的目标视频流,其中,所述视角变化消息是在所述用户端将视角切换信息通过低延时服务器发送至所述低延时房间时生成,所述视角切换信息是根据用户触发的视角切换操作确定的;目标视频流推送模块,设置为将所述目标视频流推送至所述低延时房间,以使所述用户端通过低延时服务器获得所述低延时房间中的所述目标视频流,并播放所述目标视频流。
- 一种自由视角视频的视角切换系统,包括:用户端、媒体服务器和低延时服务器;其中,所述用户端设置为实现如权利要求1-7中任一所述的自由视角视频的视角切换方法;所述媒体服务器设置为实现如权利要求8-15中任一所述的自由视角视频的视角切换方法。
- 一种电子设备,包括:一个或多个处理器;存储器,设置为存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-15中任一所述的自由视角视频的视角切换方法。
- 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-15中任一所述的自由视角视频的视角切换方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
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 |
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 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111056276.8 | 2021-09-09 | ||
CN202111056276.8A CN113794942B (zh) | 2021-09-09 | 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 (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113794942B (zh) * | 2021-09-09 | 2022-12-02 | 北京字节跳动网络技术有限公司 | 自由视角视频的视角切换方法、装置、系统、设备和介质 |
CN114390324A (zh) * | 2022-03-23 | 2022-04-22 | 阿里云计算有限公司 | 视频处理方法、系统以及云转播方法 |
CN115834966A (zh) * | 2022-11-07 | 2023-03-21 | 抖音视界有限公司 | 一种视频播放方法、装置、设备和存储介质 |
Citations (10)
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)
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 |
US10110946B2 (en) * | 2014-12-25 | 2018-10-23 | Echostar Uraine, L.L.C. | Simultaneously viewing multiple camera angles |
EP3316589B1 (en) * | 2015-06-25 | 2024-02-28 | Panasonic Intellectual Property Management Co., Ltd. | Video synchronization device and video synchronization method |
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テレビ | 情報処理装置、情報処理方法、及びプログラム |
CN110858925B (zh) * | 2018-08-22 | 2021-10-15 | 华为技术有限公司 | 一种实现视频流切换的方法、设备、系统和存储介质 |
CN111669518A (zh) * | 2019-03-07 | 2020-09-15 | 阿里巴巴集团控股有限公司 | 多角度自由视角交互方法及装置、介质、终端、设备 |
CN111447462B (zh) * | 2020-05-20 | 2022-07-05 | 上海科技大学 | 基于视角切换的视频直播方法、系统、存储介质及终端 |
CN112019927B (zh) * | 2020-09-23 | 2023-01-06 | Oppo广东移动通信有限公司 | 视频直播方法、连麦设备、直播系统及存储介质 |
CN111866525A (zh) * | 2020-09-23 | 2020-10-30 | 腾讯科技(深圳)有限公司 | 多视点视频的播放控制方法及装置、电子设备、存储介质 |
CN112929580A (zh) * | 2021-01-14 | 2021-06-08 | 北京奇艺世纪科技有限公司 | 多视角视频播放方法、装置、系统、服务器和客户端设备 |
-
2021
- 2021-09-09 CN CN202111056276.8A patent/CN113794942B/zh active Active
-
2022
- 2022-08-16 US US18/551,913 patent/US20240223819A1/en active Pending
- 2022-08-16 EP EP22866353.0A patent/EP4297416A1/en active Pending
- 2022-08-16 WO PCT/CN2022/112805 patent/WO2023035879A1/zh active Application Filing
Patent Citations (10)
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 |
CN113794942B (zh) | 2022-12-02 |
EP4297416A1 (en) | 2023-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023035879A1 (zh) | 自由视角视频的视角切换方法、装置、系统、设备和介质 | |
WO2022262459A1 (zh) | 投屏方法、装置、电子设备和存储介质 | |
WO2023051243A1 (zh) | 视频码率切换方法、装置、电子设备及存储介质 | |
WO2022095840A1 (zh) | 直播间创建方法、装置、电子设备及存储介质 | |
CN111970524B (zh) | 交互类直播连麦的控制方法、装置、系统、设备及介质 | |
WO2023071598A1 (zh) | 音视频同步监控方法、装置、电子设备及存储介质 | |
WO2023165371A1 (zh) | 音频播放方法、装置、电子设备及存储介质 | |
CN111818383B (zh) | 视频数据的生成方法、系统、装置、电子设备及存储介质 | |
CN114827698A (zh) | 一种播放信息的同步方法、装置、终端设备和存储介质 | |
CN114095671A (zh) | 云会议直播系统、方法、装置、设备及介质 | |
CN113542856A (zh) | 在线录像的倒放方法、装置、设备和计算机可读介质 | |
WO2023197811A1 (zh) | 视频下载、传输方法、装置、终端设备、服务器及介质 | |
WO2023179404A1 (zh) | 直播启播方法、设备及程序产品 | |
WO2022218425A1 (zh) | 一种录音推流方法、装置、设备及介质 | |
CN112153322B (zh) | 数据分发方法、装置、设备及存储介质 | |
CN114584822B (zh) | 一种同步播放方法、装置、终端设备和存储介质 | |
CN112040328A (zh) | 数据交互方法、装置和电子设备 | |
CN113242446A (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 |