CN111083523A - Panoramic video playing method and terminal - Google Patents
Panoramic video playing method and terminal Download PDFInfo
- Publication number
- CN111083523A CN111083523A CN201911229335.XA CN201911229335A CN111083523A CN 111083523 A CN111083523 A CN 111083523A CN 201911229335 A CN201911229335 A CN 201911229335A CN 111083523 A CN111083523 A CN 111083523A
- Authority
- CN
- China
- Prior art keywords
- panoramic video
- terminal
- panoramic
- visual field
- description information
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000000007 visual effect Effects 0.000 claims description 135
- 238000005192 partition Methods 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 20
- 238000012216 screening Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000003139 buffering effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 210000003128 head Anatomy 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 3
- 210000005252 bulbus oculi Anatomy 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000001508 eye Anatomy 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000000638 solvent extraction Methods 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/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- 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/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234363—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44016—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440263—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The application relates to the field of computers, and discloses a panoramic video playing method and a panoramic video playing terminal, which are used for solving the problems of long playing buffer time, occupation of storage space, poor user experience and low terminal scheduling efficiency. The method comprises the steps that a terminal receives description information sets of panoramic video blocks of L panoramic videos sent by a server and a first panoramic video sent by the server, each piece of description information meeting a view field rule is screened out from the obtained L-1 description information sets, content data of the panoramic video blocks corresponding to each piece of description information is obtained, the content data of each panoramic video block is spliced in the first panoramic video according to a splicing rule, and a target panoramic video is generated and played. The target panoramic video is spliced in the panoramic video blocks belonging to the panoramic videos with different resolution levels, the resolution ratios of all the panoramic video blocks are the same, the scheduling efficiency is improved, the storage space is saved, the playing buffer time is shortened, and the user experience is improved.
Description
Technical Field
The present application relates to the field of computers, and in particular, to a method and a terminal for playing a panoramic video.
Background
The panoramic video is a video shot in 360 degrees in all directions by using a three-dimensional (3D) camera, and when a user watches the panoramic video, the user can randomly adjust the video to watch the panoramic video in the modes of head movement, eyeball movement, remote controller control and the like.
The following three panoramic video transmission schemes are currently provided for servers:
the first scheme is as follows: the server adopts a full-view transmission scheme, encodes the complete panoramic video into a single code stream and transmits the single code stream to the terminal.
Scheme II: the server adopts a Field of View (FOV) transmission scheme, and equally divides the high-resolution original panoramic video into a plurality of panoramic video blocks to ensure that the resolution of each panoramic video block is the same; the server samples the original panoramic video to generate a panoramic video with low resolution; and finally, the server transmits all the panoramic video blocks in the visual field and the low-resolution panoramic video to the terminal together.
The third scheme is as follows: the server adopts an FOV transmission scheme to sample an original panoramic video, then generates panoramic videos with a plurality of resolutions, then respectively performs blocking processing on the panoramic videos with the resolutions, for the panoramic video blocks corresponding to the panoramic videos with different resolutions, the resolutions of the panoramic video blocks are also different, and transmits the panoramic video blocks to the terminal.
When the server side adopts the first scheme to transmit video data, the terminal can select a corresponding video picture from the decoded panoramic video to play for the user; when the server side transmits video data by adopting the scheme two, the terminal plays high-resolution panoramic video blocks for the user visual angle area and plays low-resolution panoramic video for the area outside the user visual angle; when the server side transmits video data by adopting the scheme III, the terminal plays high-resolution panoramic video blocks for the user visual angle area, and as the distance between the area outside the user visual angle and the current viewpoint is longer, the terminal plays low-resolution panoramic video blocks for the area.
The adoption of the scheme can bring the following problems to the terminal: due to the fact that the video data required to be transmitted in the first scheme is large in amount and the panoramic video is high in resolution, if the decoding performance of the terminal is low, the buffering time is long when the panoramic video is played; in addition, the user does not necessarily need to watch all panoramic video pictures, and the server directly transmits the complete panoramic video to the terminal, so that the storage space of the terminal is occupied.
And in the second scheme, the low-resolution panoramic video is played in an area outside the visual angle of the user, so that when the terminal receives a video direction conversion instruction input by the user, a new current frame browsed by the user is generated, and the low-resolution panoramic video is played in the current frame, thereby reducing the user experience.
Since the third scheme needs to divide a large number of video blocks and the resolutions of the panoramic video blocks belonging to the panoramic videos with different resolutions are different, the code rate difference between the panoramic video blocks belonging to the panoramic videos with different resolutions is large, the transmission stability is affected, and the terminal scheduling efficiency is reduced.
In view of the above, the present application provides a new panoramic video playing method to overcome the above-mentioned drawbacks.
Disclosure of Invention
The embodiment of the application provides a panoramic video playing method and a server, and aims to solve the problems of long playing buffering time, occupation of terminal storage space, poor user experience and low terminal scheduling efficiency.
The method for playing the panoramic video, provided by the embodiment of the application, comprises the following steps:
the method comprises the steps that a terminal sends a playing request to a server and receives description information sets of panoramic video blocks of L panoramic videos sent by the server, wherein the resolution levels of the L panoramic videos are different, and the resolutions of the panoramic video blocks belonging to different panoramic videos are the same;
the terminal receives a first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level in the L panoramic videos;
the terminal screens out all description information which accords with the view field rule from the obtained L-1 description information sets based on a preset view field rule, and determines panoramic video blocks corresponding to all the description information;
the terminal requests and receives content data of corresponding panoramic video blocks sent by the server;
and the terminal splices the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule to generate and play a target panoramic video.
Optionally, one piece of description information includes a position sequence number of one panoramic video block, a first view area, and a resolution level of a panoramic video to which the panoramic video block belongs, where the first view area represents a presentation area of the panoramic video block in the panoramic video to which the panoramic video block belongs.
Optionally, the screening, by the terminal, of each piece of description information meeting the view field rule from the L-1 pieces of description information sets obtained based on a preset view field rule, and determining a panoramic video block corresponding to each piece of description information includes:
the terminal determines the position of the picture center point of the current frame browsed by the user in the first panoramic video;
the terminal determines a second visual field area and a third visual field area based on the position of the picture center point and a preset terminal visual angle, wherein the second visual field area represents a visual area of a current frame browsed by a user in the first panoramic video, and the third visual field area represents a non-visual area of the current frame browsed by the user in the first panoramic video;
the terminal divides the third visual field area into a plurality of third visual field area partitions based on the position of the picture center point, and respectively determines the second visual field area and each third visual field area partition as well as the corresponding designated resolution level;
the terminal determines a description information set corresponding to the second visual field region and each third visual field region partition according to the resolution level corresponding to the second visual field region and each third visual field region partition;
and the terminal respectively aims at the second visual field area and each third visual field area subarea, acquires each piece of description information corresponding to the second visual field area and each third visual field area subarea from a corresponding description information set, and determines a corresponding panoramic video block based on each piece of description information.
Optionally, the requesting and receiving, by the terminal, content data of any panoramic video block sent by the server includes:
the terminal judges whether the content data of any one panoramic video block is cached locally or not, and if yes, the content data of any one panoramic video block cached locally is obtained; otherwise, sending a data downloading request to the server, and receiving the content data of any panoramic video block sent by the server.
Optionally, the terminal splices the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule, and generates and plays a corresponding target panoramic video, including:
the terminal determines a target area of each panoramic video block in the first panoramic video according to the resolution level of the panoramic video to which the panoramic video block belongs;
and the terminal splices the obtained content data of each panoramic video block in a corresponding target area according to the first view field area of the panoramic video block to generate and play a corresponding target panoramic video.
Correspondingly, the embodiment of the present application further provides a panoramic video playing terminal, which at least includes:
the device comprises an acquisition unit, a playing unit and a playing unit, wherein the acquisition unit is used for sending a playing request to a server and receiving description information sets of panoramic video blocks of L panoramic videos sent by the server, the resolution levels of the L panoramic videos are different, and the resolutions of the panoramic video blocks belonging to different panoramic videos are the same;
receiving a first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level in the L panoramic videos;
the processing unit is used for screening out each description information meeting the view field rule from the obtained L-1 description information sets based on a preset view field rule and determining a panoramic video block corresponding to each description information;
requesting and receiving content data of corresponding panoramic video blocks sent by the server;
and the playing unit is used for splicing the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule to generate and play the target panoramic video.
Optionally, one piece of description information includes a position sequence number of one panoramic video block, a first view area, and a resolution level of a panoramic video to which the panoramic video block belongs, where the first view area represents a presentation area of the panoramic video block in the panoramic video to which the panoramic video block belongs.
Optionally, based on a preset view field rule, screening each piece of description information meeting the view field rule from the obtained L-1 pieces of description information sets, and determining a panoramic video block corresponding to each piece of description information, where the processing unit is configured to:
determining the position of the picture center point of the current frame browsed by the user in the first panoramic video;
the terminal determines a second visual field area and a third visual field area based on the position of the picture center point and a preset terminal visual angle, wherein the second visual field area represents a visual area of a current frame browsed by a user in the first panoramic video, and the third visual field area represents a non-visual area of the current frame browsed by the user in the first panoramic video;
the terminal divides the third visual field area into a plurality of third visual field area partitions based on the position of the picture center point, and respectively determines the second visual field area and each third visual field area partition as well as the corresponding designated resolution level;
the terminal determines a description information set corresponding to the second visual field region and each third visual field region partition according to the resolution level corresponding to the second visual field region and each third visual field region partition;
and the terminal respectively aims at the second visual field area and each third visual field area subarea, acquires each piece of description information corresponding to the second visual field area and each third visual field area subarea from a corresponding description information set, and determines a corresponding panoramic video block based on each piece of description information.
Optionally, the processing unit is configured to request and receive content data of any one panoramic video chunk sent by the server, and the processing unit is configured to:
judging whether the content data of any one panoramic video block is cached locally or not, and if so, acquiring the content data of any one panoramic video block cached locally; otherwise, sending a data downloading request to the server, and receiving the content data of any panoramic video block sent by the server.
Optionally, the obtained content data of each panoramic video block is spliced in the first panoramic video according to a preset splicing rule, so as to generate and play a corresponding target panoramic video, where the playing unit is configured to:
determining a target area of each panoramic video block in the first panoramic video according to the resolution level of the panoramic video to which the panoramic video block belongs;
and splicing the obtained content data of each panoramic video block in a corresponding target area according to the first view field area of the panoramic video block to generate and play a corresponding target panoramic video.
Correspondingly, an embodiment of the present application further provides a computing device, including:
a memory for storing program instructions;
and the processor is used for calling the program instructions stored in the memory and executing the method according to the obtained program.
Accordingly, embodiments of the present application also provide a computer-readable non-volatile storage medium, which includes computer-readable instructions, and when the computer-readable instructions are read and executed by a computer, the computer is caused to execute the above-mentioned method.
The beneficial effect of this application is as follows:
in the embodiment of the application, a terminal receives description information sets of panoramic video blocks of L panoramic videos sent by a server and a first panoramic video sent by the server, each piece of description information meeting a view field rule is screened out from the obtained L-1 description information sets, content data of the panoramic video block corresponding to each piece of description information is obtained, the content data of each panoramic video block is spliced in the first panoramic video according to a splicing rule, and a target panoramic video is generated and played. Because the resolutions of the panoramic video blocks belonging to different panoramic videos are the same, the code rate difference between the panoramic video blocks is smaller, the transmission stability is improved, and the terminal does not need to consider the resolutions of the corresponding panoramic video blocks when scheduling each description information, thereby improving the terminal scheduling efficiency; secondly, the terminal determines corresponding panoramic video blocks according to the acquired description information which accords with the view field rule, and receives content data of the corresponding panoramic video blocks, instead of storing the content data of all the video blocks locally, so that the storage space of the terminal can be saved, and the first panoramic video is the L panoramic videos with the lowest resolution, thereby greatly reducing the playing buffer time and reducing the requirement on the decoding capability of the terminal; and finally, the target panoramic video is formed by splicing panoramic videos with different resolution levels in a blocking mode, so that the resolution of an area outside the visual angle of a user is improved, and the user experience is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic diagram of a terminal device provided in an embodiment of the present application;
fig. 2 is a schematic flowchart of a process in which a server generates description information sets of panoramic video blocks of L panoramic videos according to an embodiment of the present application;
fig. 3 is a block diagram of L panoramic videos provided in an embodiment of the present application;
fig. 4 is a schematic diagram of position sequence numbers of panoramic video blocks of a level 4 panoramic video according to an embodiment of the present application;
fig. 5 is a schematic flowchart of a process of playing a panoramic video by a terminal according to an embodiment of the present application;
FIG. 6 is a schematic view of a second field of view and various third field of view zones provided in accordance with an embodiment of the present application;
fig. 7 is a spliced target panoramic video provided in an embodiment of the present application;
fig. 8 is a schematic structural diagram of a panoramic video playing terminal according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a computing device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the present invention will be described in further detail with reference to the accompanying drawings, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The following detailed description of preferred embodiments of the present application refers to the accompanying drawings.
Referring to fig. 1, an embodiment of the present application provides a terminal for playing a panoramic video, which specifically includes a display device 101 and a control device 102.
The display device 101 may be a liquid crystal display, an OLED display, and a projection display device, and the specific type, size, resolution, and the like of the display device are not limited, and those skilled in the art can understand that the display device 101 may be changed in performance and configuration according to actual needs.
The control device 102 may control the display device 101 through infrared communication, bluetooth communication, wired, wireless network or other short-distance communication methods, for example, when the control device 102 is a remote controller, a user may input a corresponding control instruction through a volume up/down key, a channel control key, an up/down/left/right movement key, a voice input key, a menu key, an on/off key, etc. on the remote controller, so as to implement the function of controlling the display device 101. For another example, when the control device 102 is a mouse, the user may input a corresponding control command by clicking a left or right button of the mouse, moving the mouse, or the like, so as to control the display device 101. For another example, when the control device 102 is a gyro sensor, the acquired user operation signal is converted into a corresponding control command to realize a function of controlling the display device 101.
In this embodiment of the application, the terminal may be a device having a function of processing panoramic video data, such as a smart phone, a tablet computer, a desktop computer, a notebook computer, a smart television, a Virtual Reality (VR) head display device, and the like. The terminal and the server carry out data communication through various communication modes, and the terminal can be allowed to be in communication connection through a local area network, a wireless local area network and other networks.
Referring to fig. 2, the process of generating the description information set of the panoramic video chunk by the server is specifically as follows:
s201: the server samples the original panoramic video to generate S panoramic videos, wherein the resolution ratios of the panoramic videos are different.
Because the resolution of the original panoramic video is very high, if the original panoramic video is directly transmitted to a terminal, the server has a large data transmission amount, and the pressure of network transmission bandwidth can be increased certainly; for a terminal, if the decoding performance of the terminal is low, the buffering time is long or the terminal cannot decode the panorama video effectively. Therefore, in the embodiment of the present application, the original panoramic video is sampled first to generate S panoramic videos, and the resolutions of the panoramic videos are different.
S202: the server acquires L panoramic videos, wherein the L panoramic videos comprise an original panoramic video and S panoramic videos.
S203: and the server divides the L panoramic videos into I levels according to the resolution, wherein the ith panoramic video is divided into the ith level.
The higher the resolution of the panoramic video, the higher the level at which the panoramic video is divided, e.g., the lowest resolution of the panoramic video of level 1 and the highest resolution of the panoramic video of level I.
S204: and the server acquires the ith-level panoramic video.
S205: the server equally divides the ith-level panoramic video into segments to obtain all ith-level panoramic video segments, and determines the position sequence number of each ith-level panoramic video segment and the corresponding first view area.
Firstly, the server performs equal division processing on the i-th level panoramic video by adopting a quadtree structure, so that the i-th level panoramic video can be divided into 2i-1×2i-1Partitioning the panoramic video;
secondly, determining the position sequence number of each ith-level panoramic video block according to a set sequence;
and finally, calculating each ith-level panoramic video block by using a formula (1), wherein the corresponding latitude and longitude range (namely the presentation area) in the ith-level panoramic video is subsequently abbreviated as the first view area.
S206: judging whether the L panoramic videos are processed or not, if so, executing a step 207; otherwise, return to step 204.
S207: the server stores the position sequence number of each panoramic video block belonging to the same-level panoramic video, the first view field area and the resolution level of the panoramic video to which each panoramic video block belongs as a description information set, and finally generates L description information sets.
In an embodiment of the present application, a Media Presentation Description (MPD) file or other Description file may be used to store the position number of the panoramic video chunk, the first view area, and the resolution level of the panoramic video to which the panoramic video chunk belongs. For example, the server stores the number of each panoramic video block belonging to the same-level panoramic video, the first view area, and the resolution level of the panoramic video to which each panoramic video block belongs in one MPD file, and finally generates L MPD files.
The resolution of the original panoramic video is m × n, and the resolution m '× n' of the i-th panoramic video isAnd the resolution of each panoramic video block in the i-th level isIt can be known from calculation that the resolutions of all panoramic video blocks at the same level are the same, and the resolutions of all panoramic video blocks at different levels are also the same.
To facilitate understanding of the above steps 201 to 205, a specific example is described with reference to fig. 3. The resolution of the original panoramic video a is 1024 × 1024.
A1, after sampling the original panoramic video A, the server obtains a panoramic video B with the resolution of 512 multiplied by 512; after sampling the panoramic video B, the server obtains a panoramic video C with the resolution ratio of 256 multiplied by 256; and after the server samples the panoramic video C, obtaining a panoramic video D with the resolution of 128 multiplied by 128.
A2, the original panoramic video a is divided into level 4, the panoramic video B is divided into level 3, the panoramic video C is divided into level 2, and the panoramic video D is divided into level 1 according to the size of the resolution.
A3, level 4 panoramic video a is divided into 64 panoramic video tiles, the resolution of one level 4 panoramic video tile is 128 × 128;
the level 3 panoramic video B is divided into 16 panoramic video blocks, one level 3 panoramic video block having a resolution of 128 × 128;
the level 2 panoramic video a is divided into 4 panoramic video blocks, one level 2 panoramic video block having a resolution of 128 × 128;
the level 1 panoramic video a is divided into 1 panoramic video block, and the resolution of one level 1 panoramic video block is 128 × 128.
A4, a panorama video block a [ ④ ], <1>, (-180 °, -135 °), (67.5 °, 90 °), a panorama video block b [ ④ ], <2>, (-135 °, -90 °), (67.5 °, 90 °), … …, and so on, stores the position number of each panorama video block belonging to the same level of panorama video, the first field of view region, and the resolution level of the panorama video to which each panorama video block belongs in one MPD file, finally generates L MPD files, wherein the position numbers of the panorama video blocks for each level 4 are as shown in fig. 4.
Referring to fig. 5, the process of playing the panoramic video by the terminal is as follows:
s501: the terminal sends a playing request to the server and receives description information sets of panoramic video blocks of L panoramic videos sent by the server, wherein the resolutions of the L panoramic videos are different, and the resolutions of the panoramic video blocks belonging to different panoramic videos are the same.
In the embodiment of the application, after the server samples the original panoramic video, L panoramic videos are obtained, the resolution of each panoramic video is different, and the L panoramic videos are divided into I levels according to the size of the resolution, wherein the L-th panoramic video is divided into the I-th level; and respectively carrying out equal division processing on the L panoramic videos of different levels to obtain panoramic video blocks of different levels. Because of the high resolution panoramic video, namely the high-grade panoramic video, the divided panoramic video has a large number of blocks; the panoramic video with low resolution ratio, namely the panoramic video with low grade, has less divided panoramic video blocks, so that compared with the method that the server adopts an FOV transmission scheme, the total number of the panoramic video blocks divided by the server in the embodiment of the application is less, and the resolution ratios of the divided panoramic video blocks are the same for the panoramic videos with different grades, so that the terminal does not need to consider the resolution ratio of the panoramic video blocks when selecting the panoramic video blocks, and further improves the scheduling efficiency of the terminal.
S502: the terminal receives a first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level of the L panoramic videos.
In the embodiment of the application, the terminal sends a video data request to the server and receives and plays the first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level of the L panoramic videos, so that the network transmission bandwidth pressure of the server is reduced, and the buffering time for the terminal to decompress the videos is shortened.
S503: and the terminal screens out all description information which accord with the view field rule from the obtained L-1 description information sets based on a preset view field rule, and determines the panoramic video blocks corresponding to all the description information.
The terminal can directly screen out all description information which accords with the field of view rule from the obtained L-1 description information sets; or screening out each description information which accords with the view field rule from the obtained L-1 description information sets after receiving a video direction conversion instruction input by a user.
In the embodiment of the present application, due to different terminals, the manner of inputting the video direction conversion instruction is different, specifically:
if the terminal is a mobile phone or a tablet personal computer, an action signal of a user rotating the body of the mobile phone can be captured through a built-in gyroscope sensor, and an action signal of the user pressing and dragging a touch screen can also be captured, so that the action signal is converted into a video direction conversion instruction;
if the terminal is a desktop computer or a notebook computer, the user can input a video direction conversion instruction by clicking left and right mouse buttons, moving the mouse and the like, or input a video direction conversion instruction by using up/down/left/right moving keys on a keyboard;
if the terminal is an intelligent television, a user can input a video direction conversion instruction through a volume plus-minus key, a channel control key, an up/down/left/right moving key, a voice input key, a menu key, a power-on/off key and the like on a remote controller, the intelligent television can be connected with a mobile phone in a Bluetooth or wireless network mode, the user inputs the video direction conversion instruction to the intelligent television by rotating a mobile phone body, pressing and dragging a touch screen or other modes, a camera can be arranged on the intelligent television, and the action signal is converted into the video direction conversion instruction by capturing the action signals of head action, eyeball action and the like of the user;
if the terminal is a VR head display device, a user inputs a video direction conversion signal to the VR head display device in a mode of rotating the head and rotating eyes.
In the embodiment of the application, the process of screening each description information meeting the view field rule by the terminal is as follows:
and B1, the terminal determines the position of the center point of the picture of the current frame browsed by the user in the first panoramic video.
When a user browses a current frame of the first panoramic video, the longitude and latitude of a center point of the current frame are calculated by adopting the prior art.
And B2, the terminal determines a second visual field area and a third visual field area based on the position of the picture center point and a preset terminal visual angle, wherein the second visual field area represents the visual area of the current frame browsed by the user in the first panoramic video, and the third visual field area represents the non-visual area of the current frame browsed by the user in the first panoramic video.
The terminal view angle refers to the maximum presentation range of the screen device of the terminal when the panoramic video is played. And determining the area which cannot be seen by the user browsing the current frame in the first panoramic video as a third visual field area.
For example, a longitude and latitude coordinate system is established by taking a screen central point of a smart phone as an original point, the range of the panoramic video presented by the screen of the smart phone is longitude-45 degrees to 45 degrees, latitude is 0-90 degrees, the longitude and latitude coordinates of the picture central point are (45 degrees and 22.5 degrees), and a rectangular area with the longitude of 0-45 degrees and the latitude of-22.5-67.5 degrees is obtained through calculation.
B3, the terminal divides the third visual field area into a plurality of third visual field area partitions based on the position of the central point of the screen, and determines the second visual field area and each third visual field area partition respectively and respectively corresponding to the specified resolution levels.
Referring to fig. 6, the terminal divides the third view area into a plurality of third view area partitions based on the position of the center point of the screen. In the embodiment of the application, the server adopts a quadtree structure to equally divide the panoramic video of each resolution level, that is, one panoramic video is divided into at least 4 panoramic video blocks. As can be seen from fig. 3, the panoramic video with the lowest resolution level can only partition 1 panoramic video partition, while the panoramic video with the lower resolution level can partition 4 panoramic video partitions, but the panoramic video with the lowest resolution level and the panoramic video with the lower resolution level cover the same range, so that when the terminal determines the resolution level for the third view area partition farthest from the center point of the screen, only the panoramic video partition with the lowest resolution level or any one of the panoramic video partitions with the lower resolution level needs to be considered.
In order to improve the user experience and shorten the buffering time, the terminal in the embodiment of the application is a second view field area closest to the central point of the picture, and the panoramic video with the highest level is selected for blocking; selecting a panoramic video block with a higher level for a third view field area partition which is closer to the center point of the picture; and selecting a panoramic video block with lower grade or a panoramic video block with the lowest grade for a third view field zone subarea which is farthest from the center of the picture. The resolution ratios of the panoramic video blocks of the panoramic videos with different levels are the same, the panoramic video with high resolution ratio is small, the panoramic video with low resolution ratio is large, therefore, the resolution ratio of the panoramic video obtained by splicing the panoramic videos with high levels is high, the resolution ratio of the panoramic video obtained by splicing the panoramic videos with low levels is low, but compared with the prior art that the panoramic video with the lowest resolution ratio is configured for the area outside the user visual angle, the embodiment of the application is the area outside the user visual angle, the panoramic video blocks with different resolution ratio levels are configured, the resolution ratio of the area outside the user visual angle is greatly improved, and the watching experience of a user is greatly improved.
And B4, determining the description information sets corresponding to the second visual field region and each third visual field region partition by the terminal according to the resolution levels corresponding to the second visual field region and each third visual field region partition.
B5, the terminal acquires, from the corresponding description information set, respective description information corresponding to the second visual field region and each third visual field region section, for the second visual field region and each third visual field region section, respectively.
For the second visual field region, determining each first visual field region matched with the second visual field region from the description information set matched with the resolution level of the second visual field region, and acquiring each piece of description information corresponding to each determined first visual field region set.
For example, in the description information set belonging to the panoramic video block of the level 4 panoramic video, the terminal screens out each first view area covered in the second view area for the second view area close to the center point of the screen, and acquires each description information corresponding to each first view area.
For a third visual field area partition, determining each first visual field area matched with the third visual field area partition from the description information set matched with the resolution level of the third visual field area partition, and acquiring each piece of description information corresponding to each determined first visual field area set.
For another example, the terminal screens out each first view area covered in a third view area partition farthest from the center point of the screen in the description information set belonging to the panoramic video block of the level 2 panoramic video, and acquires each description information corresponding to each first view area.
And B6, determining the corresponding panoramic video block based on the description information.
One description information contains the position sequence number of one panoramic video block, the first view field area and the resolution level of the panoramic video to which the panoramic video block belongs, so that the corresponding panoramic video block can be matched according to the obtained description information.
S504: and the terminal requests and receives the content data of the corresponding panoramic video block sent by the server.
In the embodiment of the present application, a process of receiving content data of a corresponding panoramic video block by a terminal is described as follows:
and C1, the terminal acquires a panoramic video block in the current frame browsed by the user.
In the embodiment of the application, the terminal preferentially traverses the panoramic video blocks with high resolution level.
C2, the terminal judges whether the content data of the panoramic video block is cached locally, if yes, the step C3 is executed; otherwise, step C4 is performed.
In the embodiment of the application, when the reference count of the panoramic video block Y is 0, the representation panoramic video block Y does not exist in the current frame browsed by the user, so that the content data of the panoramic video block Y is not cached locally; when the reference count of the panoramic video block Y is 1, representing that the panoramic video block Y is added to the current frame browsed by the user for the first time, so that the content data of the panoramic video block Y is not cached locally; when the reference count of the panoramic video block Y is 2, the representative panoramic video block Y exists in both the previous frame browsed by the user and the current frame browsed by the user, and thus the content data of the panoramic video block Y is locally cached.
For the panoramic video block Y with the reference count of 1, the terminal needs to send a data downloading request to the server and receive content data of the panoramic video block Y sent by the server; for the panoramic video block Y with the reference count of 2, the content data of the panoramic video block Y may be directly retrieved from the local. The content data of the panoramic video blocks represent the video content of the panoramic video blocks.
And C3, the terminal acquires the content data of the local cached panoramic video blocks.
And C4, the terminal sends a data downloading request to the server and receives the content data of the panoramic video blocks sent by the server.
The terminal respectively executes the steps of traversing each panoramic video block of the current frame browsed by the user in two threads and reading the content data of the panoramic video block with the reference count of 1 in the server, and the time spent on reading the content data is very long, so that the situation that when the terminal has traversed each description information of the current frame browsed by the user but has not read all the required content data, the user inputs a video conversion direction instruction again to generate a new current frame browsed by the user and acquires corresponding new description information can occur. Therefore, the terminal needs to determine whether the panoramic video block Y of the content data just read is still in the current frame browsed by the latest user.
If the reference count of the panoramic video block Y of the content data which is just read is 0, indicating that the corresponding description information is not in the current frame browsed by the latest user, and deleting the content data of the panoramic video block in the terminal memory; if the reference count of the panoramic video block Y of the content data just read is 1 or 2, it indicates that the corresponding description information is still in the current frame browsed by the latest user.
C5, judging whether all the panoramic video blocks of the current frame browsed by the user are processed, if yes, executing the step C6; otherwise, return to step C1.
After traversing all the panoramic video blocks of the current frame browsed by the user, the terminal needs to traverse all the panoramic video blocks of the previous frame browsed by the user, screen out the panoramic video blocks only existing in the previous frame browsed by the user but not in the current frame browsed by the user, and delete the content data of the corresponding panoramic video blocks in the memory to save the storage space of the terminal.
Optionally, subtracting 1 from the reference count of each panoramic video block in the previous frame browsed by the user, and when the reference count of the panoramic video block is 0, representing that the panoramic video block only exists in the previous frame browsed by the user and does not exist in the current frame browsed by the user; when the reference count of the panoramic video block Y is 1, the representative panoramic video block exists in both the previous frame browsed by the user and the current frame browsed by the user.
For example, the reference count of the panoramic video block Y is 2, and when the terminal traverses the previous frame browsed by the user, the reference count of the panoramic video block Y is updated to 1, which indicates that the panoramic video block Y still exists in the current frame browsed by the user.
For another example, the reference count of the panoramic video block Y is 1, and when the terminal traverses the previous frame browsed by the user, the reference count of the panoramic video block Y is updated to 0, which indicates that the panoramic video block Y is not in the current frame browsed by the user, and in order to save the storage space of the terminal, the content data of the panoramic video block Y is deleted in the terminal memory.
And C6, the terminal acquires the content data of the corresponding panoramic video blocks aiming at each panoramic video block of the current frame browsed by the user.
S505: and the terminal splices the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule to generate and play the target panoramic video.
Optionally, the process of generating the target panoramic video by the terminal is as follows:
d1, the terminal determines the target area of each panoramic video block in the first panoramic video according to the resolution level of the panoramic video to which the panoramic video block belongs.
D2, the terminal splices the obtained content data of each panoramic video block in a corresponding target area according to the first view angle area of the panoramic video block, and generates and plays a corresponding target panoramic video. The stitched second panoramic video is shown in fig. 7.
Based on the same inventive concept, fig. 8 exemplarily shows a schematic structural diagram of a terminal for panoramic video playing provided by an embodiment of the present application, and includes at least an obtaining unit 801, a processing unit 802, and a playing unit 803, wherein,
an obtaining unit 801, configured to send a play request to a server, and receive description information sets of panoramic video chunks of L panoramic videos sent by the server, where resolution levels of the L panoramic videos are different, and resolutions of panoramic video chunks belonging to different panoramic videos are the same;
receiving a first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level in the L panoramic videos;
a processing unit 802, configured to screen, based on a preset field of view rule, each piece of description information that meets the field of view rule from the L-1 pieces of description information sets obtained, and determine a panoramic video block corresponding to each piece of description information;
requesting and receiving content data of corresponding panoramic video blocks sent by the server;
and a playing unit 803, configured to splice the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule, and generate and play a target panoramic video.
Optionally, one piece of description information includes a position sequence number of one panoramic video block, a first view area, and a resolution level of a panoramic video to which the panoramic video block belongs, where the first view area represents a presentation area of the panoramic video block in the panoramic video to which the panoramic video block belongs.
Optionally, based on a preset view field rule, each piece of description information meeting the view field rule is screened from the obtained L-1 pieces of description information sets, and the processing unit 802 is configured to determine a panoramic video block corresponding to each piece of description information:
determining the position of the picture center point of the current frame browsed by the user in the first panoramic video;
the terminal determines a second visual field area and a third visual field area based on the position of the picture center point and a preset terminal visual angle, wherein the second visual field area represents a visual area of a current frame browsed by a user in the first panoramic video, and the third visual field area represents a non-visual area of the current frame browsed by the user in the first panoramic video;
the terminal divides the third visual field area into a plurality of third visual field area partitions based on the position of the picture center point, and respectively determines the second visual field area and each third visual field area partition as well as the corresponding designated resolution level;
the terminal determines a description information set corresponding to the second visual field region and each third visual field region partition according to the resolution level corresponding to the second visual field region and each third visual field region partition;
and the terminal respectively aims at the second visual field area and each third visual field area subarea, acquires each piece of description information corresponding to the second visual field area and each third visual field area subarea from a corresponding description information set, and determines a corresponding panoramic video block based on each piece of description information.
Optionally, the processing unit 802 is specifically configured to request and receive content data of any panoramic video block sent by the server, and to:
judging whether the content data of any one panoramic video block is cached locally or not, and if so, acquiring the content data of any one panoramic video block cached locally; otherwise, sending a data downloading request to the server, and receiving the content data of any panoramic video block sent by the server.
Optionally, according to a preset stitching rule, stitching content data of each obtained panoramic video block in the first panoramic video to generate and play a corresponding target panoramic video, where the playing unit 803 is configured to:
determining a target area of each panoramic video block in the first panoramic video according to the resolution level of the panoramic video to which the panoramic video block belongs;
and splicing the obtained content data of each panoramic video block in a corresponding target area according to the first view field area of the panoramic video block to generate and play a corresponding target panoramic video.
Based on the same inventive concept, fig. 9 schematically illustrates a structural diagram of a computing device provided in an embodiment of the present application, and includes at least a memory 901 and a processor 902;
a memory 901 for storing program instructions;
and the processor 902 is used for calling the program instructions stored in the memory and executing the method for playing the panoramic video according to the obtained program.
Based on the same inventive concept, an embodiment of the present invention further provides a computer-readable non-volatile storage medium, which includes computer-readable instructions, and when the computer reads and executes the computer-readable instructions, the computer is caused to execute the above method for playing the panoramic video.
In summary, the terminal receives the description information sets of the panoramic video blocks of the L panoramic videos sent by the server and the first panoramic video sent by the server, screens out each piece of description information meeting the view field rule from the obtained L-1 description information sets, obtains content data of the panoramic video block corresponding to each piece of description information, splices the content data of each panoramic video block in the first panoramic video according to the splicing rule, and generates and plays the target panoramic video.
Although the resolution levels of the L panoramic videos are different, the resolution of the panoramic video blocks belonging to different panoramic videos is the same, so that when the terminal schedules each description information, the resolution of the corresponding panoramic video block does not need to be considered, and the scheduling efficiency of the terminal is improved; secondly, the terminal only stores the L description information sets locally, but does not store the content data separated from all the panoramic videos locally, so that the time for downloading the content data and the storage space of the terminal are saved, and the first panoramic video is the L panoramic videos with the lowest resolution, thereby greatly reducing the playing buffer time and the user waiting time and also reducing the requirement on the decoding capability of the terminal; finally, screening all description information which accords with a view field rule from description information sets with different resolution ratios, splicing content data of panoramic video blocks corresponding to all the description information into a first panoramic video, and generating a target panoramic video, namely splicing the target panoramic video by the panoramic video blocks with different resolution ratios.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.
Claims (10)
1. A method for panoramic video playback, comprising:
the method comprises the steps that a terminal sends a playing request to a server and receives description information sets of panoramic video blocks of L panoramic videos sent by the server, wherein the resolution levels of the L panoramic videos are different, and the resolutions of the panoramic video blocks belonging to different panoramic videos are the same;
the terminal receives a first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level in the L panoramic videos;
the terminal screens out all description information which accords with the view field rule from the obtained L-1 description information sets based on a preset view field rule, and determines panoramic video blocks corresponding to all the description information;
the terminal requests and receives content data of corresponding panoramic video blocks sent by the server;
and the terminal splices the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule to generate and play a target panoramic video.
2. The method according to claim 1, wherein one piece of description information includes a position number of one panoramic video block, a first view area, and a resolution level of a panoramic video to which the one panoramic video block belongs, and the first view area represents a presentation area of the one panoramic video block in the panoramic video to which the one panoramic video block belongs.
3. The method of claim 2, wherein the terminal screens out respective description information meeting the field of view rule from the obtained L-1 description information sets based on a preset field of view rule, and determines a panoramic video block corresponding to the respective description information, including:
the terminal determines the position of the picture center point of the current frame browsed by the user in the first panoramic video;
the terminal determines a second visual field area and a third visual field area based on the position of the picture center point and a preset terminal visual angle, wherein the second visual field area represents a visual area of a current frame browsed by a user in the first panoramic video, and the third visual field area represents a non-visual area of the current frame browsed by the user in the first panoramic video;
the terminal divides the third visual field area into a plurality of third visual field area partitions based on the position of the picture center point, and respectively determines the second visual field area and each third visual field area partition as well as the corresponding designated resolution level;
the terminal determines a description information set corresponding to the second visual field region and each third visual field region partition according to the resolution level corresponding to the second visual field region and each third visual field region partition;
and the terminal respectively aims at the second visual field area and each third visual field area subarea, acquires each piece of description information corresponding to the second visual field area and each third visual field area subarea from a corresponding description information set, and determines a corresponding panoramic video block based on each piece of description information.
4. The method of claim 2, wherein the requesting and receiving, by the terminal, content data of any one panoramic video chunk transmitted by the server comprises:
the terminal judges whether the content data of any one panoramic video block is cached locally or not, and if yes, the content data of any one panoramic video block cached locally is obtained; otherwise, sending a data downloading request to the server, and receiving the content data of any panoramic video block sent by the server.
5. The method according to any one of claims 1 to 4, wherein the terminal stitches the obtained content data of each panoramic video block in the first panoramic video according to a preset stitching rule to generate and play a corresponding target panoramic video, and the method comprises:
the terminal determines a target area of each panoramic video block in the first panoramic video according to the resolution level of the panoramic video to which the panoramic video block belongs;
and the terminal splices the obtained content data of each panoramic video block in a corresponding target area according to the first view field area of the panoramic video block to generate and play a corresponding target panoramic video.
6. A panoramic video playing terminal, characterized by at least comprising:
the device comprises an acquisition unit, a playing unit and a playing unit, wherein the acquisition unit is used for sending a playing request to a server and receiving description information sets of panoramic video blocks of L panoramic videos sent by the server, the resolution levels of the L panoramic videos are different, and the resolutions of the panoramic video blocks belonging to different panoramic videos are the same;
receiving a first panoramic video sent by the server, wherein the first panoramic video is the lowest resolution level in the L panoramic videos;
the processing unit is used for screening out each description information meeting the view field rule from the obtained L-1 description information sets based on a preset view field rule and determining a panoramic video block corresponding to each description information;
requesting and receiving content data of corresponding panoramic video blocks sent by the server;
and the playing unit is used for splicing the obtained content data of each panoramic video block in the first panoramic video according to a preset splicing rule to generate and play the target panoramic video.
7. The terminal according to claim 6, wherein one piece of description information includes a position number of one panoramic video block, a first view area, and a resolution level of a panoramic video to which the one panoramic video block belongs, and the first view area represents a presentation area of the one panoramic video block in the panoramic video to which the one panoramic video block belongs.
8. The terminal according to claim 7, wherein based on a preset view field rule, each piece of description information meeting the view field rule is screened from the obtained L-1 pieces of description information sets, and the processing unit is configured to:
determining the position of the picture center point of the current frame browsed by the user in the first panoramic video;
the terminal determines a second visual field area and a third visual field area based on the position of the picture center point and a preset terminal visual angle, wherein the second visual field area represents a visual area of a current frame browsed by a user in the first panoramic video, and the third visual field area represents a non-visual area of the current frame browsed by the user in the first panoramic video;
the terminal divides the third visual field area into a plurality of third visual field area partitions based on the position of the picture center point, and respectively determines the second visual field area and each third visual field area partition as well as the corresponding designated resolution level;
the terminal determines a description information set corresponding to the second visual field region and each third visual field region partition according to the resolution level corresponding to the second visual field region and each third visual field region partition;
and the terminal respectively aims at the second visual field area and each third visual field area subarea, acquires each piece of description information corresponding to the second visual field area and each third visual field area subarea from a corresponding description information set, and determines a corresponding panoramic video block based on each piece of description information.
9. The terminal of claim 7, wherein the processing unit is configured to request and receive content data of any one panoramic video chunk sent by the server, and wherein the processing unit is configured to:
judging whether the content data of any one panoramic video block is cached locally or not, and if so, acquiring the content data of any one panoramic video block cached locally; otherwise, sending a data downloading request to the server, and receiving the content data of any panoramic video block sent by the server.
10. The terminal according to any one of claims 6 to 9, wherein the obtained content data of each panoramic video block is spliced in the first panoramic video according to a preset splicing rule, so as to generate and play a corresponding target panoramic video, and the playing unit is configured to:
determining a target area of each panoramic video block in the first panoramic video according to the resolution level of the panoramic video to which the panoramic video block belongs;
and splicing the obtained content data of each panoramic video block in a corresponding target area according to the first view field area of the panoramic video block to generate and play a corresponding target panoramic video.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229335.XA CN111083523A (en) | 2019-12-04 | 2019-12-04 | Panoramic video playing method and terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229335.XA CN111083523A (en) | 2019-12-04 | 2019-12-04 | Panoramic video playing method and terminal |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111083523A true CN111083523A (en) | 2020-04-28 |
Family
ID=70312901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911229335.XA Pending CN111083523A (en) | 2019-12-04 | 2019-12-04 | Panoramic video playing method and terminal |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111083523A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113422962A (en) * | 2020-12-30 | 2021-09-21 | 北京所思信息科技有限责任公司 | Video coding method and coder |
CN113422963A (en) * | 2020-12-30 | 2021-09-21 | 北京所思信息科技有限责任公司 | Video decoding method and decoder |
CN114979762A (en) * | 2022-04-12 | 2022-08-30 | 北京字节跳动网络技术有限公司 | Video downloading and transmission method, device, terminal equipment, server and medium |
CN115103023A (en) * | 2022-06-14 | 2022-09-23 | 北京字节跳动网络技术有限公司 | Video caching method, device, equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108063976A (en) * | 2017-11-20 | 2018-05-22 | 北京奇艺世纪科技有限公司 | A kind of method for processing video frequency and device |
US20180310010A1 (en) * | 2017-04-20 | 2018-10-25 | Nokia Technologies Oy | Method and apparatus for delivery of streamed panoramic images |
CN108965847A (en) * | 2017-05-27 | 2018-12-07 | 华为技术有限公司 | A kind of processing method and processing device of panoramic video data |
CN109565610A (en) * | 2016-05-25 | 2019-04-02 | 皇家Kpn公司 | Omnidirectional's video flowing of space tiling is broadcast |
-
2019
- 2019-12-04 CN CN201911229335.XA patent/CN111083523A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109565610A (en) * | 2016-05-25 | 2019-04-02 | 皇家Kpn公司 | Omnidirectional's video flowing of space tiling is broadcast |
US20190174150A1 (en) * | 2016-05-25 | 2019-06-06 | Koninklijke Kpn N.V. | Spatially Tiled Omnidirectional Video Streaming |
US20180310010A1 (en) * | 2017-04-20 | 2018-10-25 | Nokia Technologies Oy | Method and apparatus for delivery of streamed panoramic images |
CN108965847A (en) * | 2017-05-27 | 2018-12-07 | 华为技术有限公司 | A kind of processing method and processing device of panoramic video data |
CN108063976A (en) * | 2017-11-20 | 2018-05-22 | 北京奇艺世纪科技有限公司 | A kind of method for processing video frequency and device |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113422962A (en) * | 2020-12-30 | 2021-09-21 | 北京所思信息科技有限责任公司 | Video coding method and coder |
CN113422963A (en) * | 2020-12-30 | 2021-09-21 | 北京所思信息科技有限责任公司 | Video decoding method and decoder |
CN113422963B (en) * | 2020-12-30 | 2022-07-19 | 北京所思信息科技有限责任公司 | Video decoding method and decoder |
CN113422962B (en) * | 2020-12-30 | 2022-07-19 | 北京所思信息科技有限责任公司 | Video coding method and coder |
CN114979762A (en) * | 2022-04-12 | 2022-08-30 | 北京字节跳动网络技术有限公司 | Video downloading and transmission method, device, terminal equipment, server and medium |
CN114979762B (en) * | 2022-04-12 | 2024-06-07 | 北京字节跳动网络技术有限公司 | Video downloading and transmitting method and device, terminal equipment, server and medium |
CN115103023A (en) * | 2022-06-14 | 2022-09-23 | 北京字节跳动网络技术有限公司 | Video caching method, device, equipment and storage medium |
CN115103023B (en) * | 2022-06-14 | 2024-04-05 | 北京字节跳动网络技术有限公司 | Video caching method, device, equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111083523A (en) | Panoramic video playing method and terminal | |
CN109640188B (en) | Video preview method and device, electronic equipment and computer readable storage medium | |
RU2580064C2 (en) | Adjustable and progressive mobile device street view | |
US20230136808A1 (en) | Control display method, electronic device, and non-transitory computer-readable storage medium | |
CN105763909B (en) | Method, equipment and the medium that adaptive media content is cleared up on remote equipment | |
AU2015280330B2 (en) | Efficient frame rendering | |
US20210398249A1 (en) | Image distribution device, image distribution system, image distribution method, and image distribution program | |
KR20150006771A (en) | Method and device for rendering selected portions of video in high resolution | |
CN108632631B (en) | Method and device for downloading video fragments in panoramic video | |
US20240040211A1 (en) | Methods, Systems, and Media For Presenting Interactive Elements Within Video Content | |
JP2009518103A (en) | Method and system for enabling a user to play a large screen game with a mobile device | |
CN110832849B (en) | Predictive bit rate selection for 360 degree video streaming | |
EP4277287A1 (en) | Multimedia information processing method and apparatus, electronic device, and storage medium | |
JP6178705B2 (en) | Video distribution system, video distribution apparatus, and video distribution program | |
CN115474085B (en) | Media content playing method, device, equipment and storage medium | |
CN111258519B (en) | Screen split implementation method, device, terminal and medium | |
CN114077375A (en) | Interaction method and device, electronic equipment and storage medium | |
WO2023143217A1 (en) | Special effect prop display method, apparatus, device, and storage medium | |
JP2023519372A (en) | 3D video processing method, apparatus, readable storage medium and electronic equipment | |
WO2021244651A1 (en) | Information display method and device, and terminal and storage medium | |
TW201942821A (en) | Information processing device, information processing method, and program | |
CN112698778A (en) | Method and device for target transmission between devices and electronic device | |
WO2023155708A1 (en) | View angle switching method and apparatus, electronic device, storage medium and program product | |
JP6684306B2 (en) | Terminal device, video distribution device, program | |
TW201942713A (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200428 |
|
RJ01 | Rejection of invention patent application after publication |