CN109218739B - Method, device and equipment for switching visual angle of video stream and computer storage medium - Google Patents

Method, device and equipment for switching visual angle of video stream and computer storage medium Download PDF

Info

Publication number
CN109218739B
CN109218739B CN201710547015.3A CN201710547015A CN109218739B CN 109218739 B CN109218739 B CN 109218739B CN 201710547015 A CN201710547015 A CN 201710547015A CN 109218739 B CN109218739 B CN 109218739B
Authority
CN
China
Prior art keywords
video
video stream
visual angle
time
view
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.)
Active
Application number
CN201710547015.3A
Other languages
Chinese (zh)
Other versions
CN109218739A (en
Inventor
盛骁杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201710547015.3A priority Critical patent/CN109218739B/en
Publication of CN109218739A publication Critical patent/CN109218739A/en
Application granted granted Critical
Publication of CN109218739B publication Critical patent/CN109218739B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server

Landscapes

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

Abstract

The invention provides a method, a device and equipment for switching visual angles of video streams and a computer storage medium, wherein a video sending end respectively generates N paths of video streams aiming at each visual angle, preset time difference sequentially exists between the same fragments of each path of video stream, the time difference is smaller than the fragment length, and N is an integer larger than 1. The video receiving end acquires an event triggering the video stream to be switched from a first visual angle to a second visual angle; determining a fragment with a fragment starting time after the occurrence time of the event and a difference value with the occurrence time meeting a set condition from the N paths of video streams of the second visual angle; downloading the target video stream where the fragment is located from the determined fragment; and after the video stream at the first visual angle is played to the determined starting time of the fragment, playing the downloaded target video stream. The invention can shorten the time for switching the visual angles of the video streams, so that a user can experience the video streams with clear images as soon as possible.

Description

Method, device and equipment for switching visual angle of video stream and computer storage medium
[ technical field ] A method for producing a semiconductor device
The present invention relates to the field of computer application technologies, and in particular, to a method, an apparatus, a device, and a computer storage medium for switching a view angle of a video stream.
[ background of the invention ]
The compression technology of panoramic video has become an important research point in the technical field of Virtual Reality (VR), panoramic video generally requires the panoramic video to be mapped and expanded into a planar image during video transcoding, and different models may be adopted during mapping and expansion, such as an Equirectangular cylindrical projection model, a CubeMap (cube map projection) model, a Pyramid (Pyramid projection) model, a Pyramid variant model, and the like. Some of the models are models of rate-indifferent allocation, such as the Equirectangular model and the CubeMap model, which evenly allocate the rate over the unfolded plane of the panoramic video. And the other models are view-based rate allocation models, such as a Pyramid model and a Pyramid variant model, which divide the panoramic video into multiple paths of videos, so that each path of mapped video has high definition at a specific view, and the resolution is reduced at a place far away from the view, that is, the rate is allocated intensively at the specific view, thereby reducing the area of the coded image mapped by each path, and enabling the coding rate to be greatly reduced.
The Pyramid model and the variant model thereof adopt a multi-path mapping mode to reduce the coding resolution when each path of view angle is watched, and when the view angle of a user watching the panoramic video changes at a video receiving end, the coding resolution can be switched among coding streams of different view angles inevitably when the video streams are downloaded. Usually, the coded streams of the respective views are switched and aligned in units of a GOP (Group of pictures), which is a Group of coded video frames starting with one I frame. Since the encoding of I-frames is not referring to and dependent on any other frame, switching between video streams of respective views can be in units of GOPs. As shown in fig. 1, the coded streams of three different views are respectively sliced into slices in units of GOPs, and the length of each slice is uniform, for example, 1 second. And moreover, it is required to ensure that the GOPs of different views are strictly aligned, when view switching occurs to the GOP1 of view 1, if the view switching occurs to view 3, the video receiving end can start downloading from the GOP2 of the video stream of view 3, thereby realizing seamless playing of the video stream.
For example, as shown in fig. 2, when a view switch occurs from a time point T1 of a GOP1 of view 1, a GOP2 of view 3 is downloaded from a time point T1. When the GOP1 of view 1 is completely played, the video receiving end starts to switch to play the video stream of view 3 at the time point of T2, that is, the video stream starts to play from the GOP2 of view 3. Since the switching of the playback video stream can be performed only at the GOP boundary, even if the network download speed is very fast, the user can only switch to the video stream of view 3 at the time point of T2 at the earliest. In the time period from T1 to T2, the user still watches the video stream at viewing angle 1 despite the change of the user viewing angle, and the image definition is poor, so the user experience is poor.
[ summary of the invention ]
In view of the above, the present invention provides a method, an apparatus, a device and a computer storage medium for switching a view angle of a video stream, so as to shorten a time for switching a view angle of the video stream, so that a user can experience the video stream with clear images as soon as possible.
The specific technical scheme is as follows:
the invention provides a method for switching visual angles of video streams, which comprises the following steps:
acquiring an event triggering the video stream to be switched from a first visual angle to a second visual angle;
determining a fragment with a fragment starting time after the occurrence time of the event and a difference value with the occurrence time meeting a set condition from the N paths of video streams of the second visual angle;
downloading the target video stream where the fragment is located from the determined fragment;
after the video stream at the first visual angle is played to the determined starting time of the fragment, playing the downloaded target video stream;
and a preset time difference sequentially exists between the same fragments of the N paths of video streams at the second visual angle, the time difference is smaller than the fragment length, and N is an integer larger than 1.
According to a preferred embodiment of the present invention, the acquiring an event triggering the video stream to switch from the first view angle to the second view angle includes:
receiving an instruction for triggering the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
capturing a gesture which triggers the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
a transition of a user perspective from a first perspective to a second perspective is detected.
According to a preferred embodiment of the present invention, the N videos use the same bitrate, and the video contents of the video streams are aligned in time.
According to a preferred embodiment of the present invention, the N video streams use the same slice length.
According to a preferred embodiment of the present invention, the setting conditions include: closest to the time of occurrence.
According to a preferred embodiment of the present invention, the slice comprises a group of pictures GOP.
According to a preferred embodiment of the present invention, the video stream is a video stream of a panoramic video.
The invention also provides a method for generating the video stream, which comprises the following steps:
n paths of video streams are respectively generated aiming at each visual angle, a preset time difference exists between the same fragments of each path of video stream in sequence, the time difference is smaller than the fragment length, and N is an integer larger than 1.
According to a preferred embodiment of the present invention, the N videos use the same bitrate, and the video contents of the video streams are aligned in time.
According to a preferred embodiment of the present invention, the N video streams use the same slice length.
According to a preferred embodiment of the invention, the method further comprises:
and storing the N paths of video streams of each view angle in a preset storage space, and providing the download address of each path of video stream of each view angle to a video receiving end.
According to a preferred embodiment of the present invention, the slice comprises a group of pictures GOP.
According to a preferred embodiment of the present invention, the video stream is a video stream of a panoramic video.
The invention also provides a device for switching the visual angle of the video stream, which comprises:
the event acquisition unit is used for acquiring an event which triggers the video stream to be switched from a first visual angle to a second visual angle;
the target determining unit is used for determining a fragment of which the fragment starting time is after the occurrence time of the event and the difference value with the occurrence time meets the set condition from the N paths of video streams of the second visual angle;
the video downloading unit is used for downloading the target video stream where the fragment is positioned from the fragment determined by the target determining unit;
the video playing unit is used for playing the downloaded target video stream after the video stream at the first visual angle is played to the determined starting time of the fragment;
and a preset time difference sequentially exists between the same fragments of the N paths of video streams at the second visual angle, the time difference is smaller than the fragment length, and N is an integer larger than 1.
According to a preferred embodiment of the present invention, when acquiring an event triggering a video stream to be switched from a first view to a second view, the event acquiring unit specifically performs:
receiving an instruction for triggering the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
capturing a gesture which triggers the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
a transition of a user perspective from a first perspective to a second perspective is detected.
According to a preferred embodiment of the present invention, the N videos use the same bitrate, and the video contents of the video streams are aligned in time.
According to a preferred embodiment of the present invention, the N video streams use the same slice length.
According to a preferred embodiment of the present invention, the setting conditions include: closest to the time of occurrence.
According to a preferred embodiment of the present invention, the slice comprises a group of pictures GOP.
According to a preferred embodiment of the present invention, the video stream is a video stream of a panoramic video.
The present invention also provides a video stream generating apparatus, including:
and the video stream generating unit is used for respectively generating N paths of video streams aiming at each visual angle, wherein a preset time difference exists between the same fragments of each path of video stream in sequence, the time difference is smaller than the fragment length, and N is an integer larger than 1.
According to a preferred embodiment of the present invention, the N videos use the same bitrate, and the video contents of the video streams are aligned in time.
According to a preferred embodiment of the present invention, the N video streams use the same slice length.
According to a preferred embodiment of the invention, the apparatus further comprises:
and the storage processing unit is used for storing the N paths of video streams of all the visual angles in a preset storage space and providing the download addresses of all the paths of video streams of all the visual angles to the video receiving end.
According to a preferred embodiment of the present invention, the slice comprises a group of pictures GOP.
According to a preferred embodiment of the present invention, the video stream is a video stream of a panoramic video.
The invention also provides an apparatus comprising
A memory including one or more programs;
one or more processors, coupled to the memory, execute the one or more programs to perform the operations performed in the above-described methods.
The invention also provides an apparatus comprising
A memory including one or more programs;
one or more processors, coupled to the memory, that execute the one or more programs to perform the operations performed in the above-described methods.
The present invention also provides a computer storage medium encoded with a computer program that, when executed by one or more computers, causes the one or more computers to perform the operations performed in the above-described method.
The present invention also provides a computer storage medium encoded with a computer program that, when executed by one or more computers, causes the one or more computers to perform the operations performed in the above-described method.
According to the technical scheme, N paths of video streams which are mutually staggered exist in each visual angle, namely, the preset time difference smaller than the fragment length exists between the same fragments of the N paths of video streams in sequence. After an event that a video stream is switched from a first visual angle to a second visual angle is acquired, a fragment of which the fragment starting time is after the occurrence time of the event and the difference value with the occurrence time meets set conditions in the N paths of video streams at the second visual angle can be determined, so that the determined fragment starting time of the fragment can be switched to a target video stream where the fragment is located for playing, the playing switching can be performed without waiting for the end of the current fragment, the waiting time of the video stream when the video stream is switched among different visual angles can be shortened, and a user can experience the video stream with clear images as soon as possible.
[ description of the drawings ]
FIG. 1 is a diagram illustrating a video stream of each view in the prior art;
FIG. 2 is a diagram illustrating a video stream switching between different views according to the prior art;
FIG. 3 is a schematic diagram of a system on which an embodiment of the present invention is based;
FIG. 4a is a schematic diagram of a video stream from each view according to an embodiment of the present invention;
FIG. 4b is another schematic diagram of video streams of different views according to an embodiment of the present invention;
fig. 5 is a flowchart of a method for switching a viewing angle according to an embodiment of the present invention;
fig. 6a and fig. 6b are exemplary diagrams of switching of views when two video streams exist at each view according to an embodiment of the present invention;
fig. 7a and fig. 7b are diagrams illustrating examples of switching between views when four video streams exist in each view according to an embodiment of the present invention;
FIG. 8 is a block diagram of an apparatus according to an embodiment of the present invention;
FIG. 9 is a block diagram of another apparatus according to an embodiment of the present invention;
fig. 10 is a block diagram of an apparatus according to an embodiment of the present invention.
[ detailed description ] embodiments
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention will be described in detail with reference to the accompanying drawings and specific embodiments.
The terminology used in the embodiments of the invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used in the examples of the present invention and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
It should be understood that the term "and/or" as used herein is merely one type of association that describes an associated object, meaning that three relationships may exist, e.g., a and/or B may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" herein generally indicates that the former and latter related objects are in an "or" relationship.
The word "if" as used herein may be interpreted as "at … …" or "when … …" or "in response to a determination" or "in response to a detection", depending on the context. Similarly, the phrases "if determined" or "if detected (a stated condition or event)" may be interpreted as "when determined" or "in response to a determination" or "when detected (a stated condition or event)" or "in response to a detection (a stated condition or event)", depending on the context.
A system based on the embodiment of the present invention may be as shown in fig. 3, and the system mainly includes a video sending end and a video receiving end. On one hand, the video sending end is used for generating a video stream, namely, the video stream is obtained after transcoding (processing such as decoding, mapping and encoding) is carried out on video data. And the other aspect is used for providing the video stream for the video receiving end to download. For example, for a panoramic video Pyramid mapping mode or a panoramic video Pyramid mapping mode, a video sending end performs mapping processing of different viewing angles on the same video data to obtain video streams for the viewing angles respectively. The video receiving end is responsible for downloading and playing the video stream provided by the video sending end. If the video sending end adopts a Pyramid mapping mode or a Pyramid variant mapping mode, such as a panoramic video, the video receiving end downloads and plays the video stream of a corresponding visual angle according to the visual angle of the current user. When the view angle of the user is switched, the view angle of the video stream that is downloaded and played correspondingly needs to be switched.
In the embodiment of the invention, N paths of video streams are respectively generated at a video sending end aiming at each visual angle, and N is an integer larger than 1. That is, in the prior art, the video transmitting end generates only one video stream for each view, whereas in the embodiment of the present invention, multiple video streams are generated for each view. Wherein, the same fragment of each video stream has a preset time difference in sequence, and the time difference is smaller than the fragment length. In addition, the video streams remain aligned on the video content, except for the starting point of the slice.
As a typical implementation of the panoramic video, one slice contains one GOP, that is, the slice is divided in units of GOPs. The present invention is not limited to this case, and is also applicable to a case where one slice contains a plurality of GOPs. For the purpose of description, the following embodiments are described by taking an example in which one slice includes one GOP.
For example, as shown in fig. 4a, 2 video streams are generated for each view, and if the length of each GOP is L, the same GOP of each video stream differs by the same difference
Figure BDA0001343405490000071
This produces a 2-way interleaved video stream from the same view. But the video streams are still aligned on the video content, i.e. the video image frames of the video streams are the same at the same point in time, only the start time of the slice is no longer aligned.
For another example, as shown in fig. 4b, 4 video streams are generated for each view, and if the length of each GOP is L, the same GOP of each video stream is different from each other
Figure BDA0001343405490000072
This results in 4 interleaved video streams from the same view.
The video sending end stores the generated video streams of all the visual angles in a preset storage space, and then provides the download addresses of the video streams of all the visual angles to the video receiving end, so that the video receiving end can download the corresponding video streams according to the download addresses.
For the video receiving end, the method for switching the view angle of the video stream executed by the video receiving end may be as shown in fig. 5, and mainly includes the following steps:
in 501, an event is acquired that triggers a video stream to switch from a first perspective to a second perspective.
When the visual angle of the panoramic video watched by the user changes, for example, when the user wears the VR device, the head is rotated to change the visual angle of the VR device (that is, the receiving end of the panoramic video), and at this time, the receiving end of the panoramic video detects that the visual angle of the user changes from the first visual angle to the second visual angle, and then an event triggering the video stream to be switched from the first visual angle to the second visual angle is acquired.
In addition to the above event types, it may be, for example, receiving an instruction triggering the video stream to switch from the first viewing angle to the second viewing angle, or capturing a gesture triggering the video stream to switch from the first viewing angle to the second viewing angle, or the like.
In 502, from the N video streams of the second view angle, a video stream where a GOP whose GOP start time is after T1 and whose difference from T1 satisfies the set condition is determined as a target video stream to be switched to.
As a preferred embodiment, the setting condition may include that the distance T1 is the closest. Of course, other conditions may be adopted in addition to this condition.
At 503, the target video stream is downloaded starting from the determined GOP.
In 504, after the video stream of the first view angle is played to the determined start time T2 of the GOP, the downloaded target video stream is played.
For example, assuming that there are two interleaved video streams for each view, the user needs to switch from view 1 to view 3, as shown in fig. 6a, if the user is watching view 1. If switching occurs at time point T1 (when T1 is in the first half of GOP1 of video stream 1 of view 1), it is determined that, of the 2-way video stream of view 3, the video stream of the GOP whose GOP start time is after time point T1 and closest to T1 is located, and it can be determined that the start time of GOP1 in video stream 2 of view 3 is after T1 and closest to T1, and therefore video stream 2 of view 3 can be taken as the target video stream.
Starting at a time point of T1, GOP1 of video stream 2 of view 3 is downloaded, and then GOP2, GOP3, … are downloaded in order. When the video stream 1 of view 1 is played to the start time T2 of the GOP1 of the video stream 2 of view 3, play switching is performed, that is, the downloaded target video stream, that is, the GOP1, GOP2, GOP3, … of the video stream 2 of view 3 starts to be played.
For another example, assuming that there are two interleaved video streams for each view, the user needs to switch from view 1 to view 3, as shown in fig. 6b, if the user is watching view 1. If switching occurs at time point T1 (when T1 is in the second half of GOP1 of video stream 1 of view 1), it is determined that, of the 2-way video stream of view 3, the video stream of the GOP whose GOP start time is after time point T1 and closest to T1 is located, and it can be determined that the start time of GOP2 in video stream 1 of view 3 is after T1 and closest to T1, and therefore video stream 1 of view 3 can be regarded as the target video stream.
Starting at a time point of T1, GOP2 of video stream 1 of view 3 is downloaded, and then GOP3, GOP4, … are downloaded in order. When the video stream 1 of view 1 is played to the start time T2 of the GOP2 of the video stream 1 of view 3, play switching is performed, that is, the downloaded target video stream, that is, the GOP2, GOP3, GOP4, … of the video stream 1 of view 3 starts to be played.
Obviously, compared with the switching mode in the prior art, the mode can switch to the view angle 3 without waiting for the playing of the currently played GOP to be finished, and the switching waiting time is controlled to be the GOP duration
Figure BDA0001343405490000091
For another example, assuming that there are four interleaved video streams for each view, the user needs to switch from view 1 to view 3, as shown in fig. 7a, if the user is watching view 1. If switching occurs at time point T1, it is determined that, of the 4 video streams of view 3, the GOP that is closest to T1 and has the GOP start time after time point T1 is located, and it can be determined that, of the video streams 3 of view 3, the start time of GOP1 is after T1 and is closest to T1, so that the video stream 3 of view 3 can be used as the target video stream.
Starting at a time point of T1, GOP1 of video stream 3 of view 3 is downloaded, and then GOP2, GOP3, … are downloaded in order. When the video stream 1 of view 1 is played to the start time T2 of the GOP1 of the video stream 3 of view 3, play switching is performed, that is, the downloaded target video stream, that is, the GOP1, GOP2, GOP3, … of the video stream 2 of view 3 starts to be played.
For another example, assuming that there are four interleaved video streams for each view, the user needs to switch from view 1 to view 3, as shown in fig. 7b, if the user is watching view 1. If switching occurs at time point T1, it is determined that, of the 4 video streams of view 3, the GOP closest to T1 after the time point T1 is the GOP start time, and it can be determined that, in video stream 1 of view 3, the start time of GOP2 is after T1 and closest to T1, so that video stream 1 of view 3 can be taken as the target video stream.
Starting at a time point of T1, GOP2 of video stream 1 of view 3 is downloaded, and then GOP3, GOP4, … are downloaded in order. When the video stream 1 of view 1 is played to the start time T2 of the GOP2 of the video stream 1 of view 3, play switching is performed, that is, the downloaded target video stream, that is, the GOP2, GOP3, GOP4, … of the video stream 1 of view 3 starts to be played.
Obviously, compared with the switching mode in the prior art, the mode can switch to the view angle 3 without waiting for the playing of the currently played GOP to be finished, and the switching waiting time is controlled to be the GOP duration
Figure BDA0001343405490000101
The above is merely an example of the embodiment, and in actual process, the switching of views does not necessarily occur in the GOP1, and the switching of views may occur in any GOP.
And when the video receiving end downloads the video streams, downloading according to the downloading addresses of the video streams. As mentioned above, when the video sending end generates N video streams for each view, the video sending end provides the video receiving end with the download address of each video stream for each view. The download address of each path of video stream of each visual angle is stored in the video receiving end in the form of a file, and the video receiving end downloads the corresponding video stream according to the stored file. This section can be of the prior art and will not be described in detail here.
The method provided by the invention is described above, and the device provided by the invention is described in detail below with reference to the embodiment.
Fig. 8 is a structural diagram of an apparatus provided in an embodiment of the present invention, where the apparatus is disposed at a video sending end, and is configured to implement a function of the video sending end in the foregoing method embodiment. As shown in fig. 8, the apparatus may include: a video stream generation unit 01 and a storage processing unit 02. The main functions of each component unit are as follows:
the video stream generating unit 01 is responsible for generating N video streams for each view angle, the N video streams adopt the same segment length, a preset time difference exists between the same segments of each video stream in sequence, the time difference is smaller than the segment length, and N is an integer greater than 1.
Preferably, the N videos use the same bitrate, and the video contents of the video streams are aligned in time.
As a typical implementation of the panoramic video, one slice contains one GOP, that is, the slice is divided in units of GOPs. The present invention is not limited to this case, and is also applicable to a case where one slice contains a plurality of GOPs.
The storage processing unit 02 is responsible for storing the N video streams of each view into a preset storage space, and providing the download address of each video stream of each view to the video receiving end. Specifically, the download address of each video stream may be provided to the video receiving end in the form of a file, so that the video receiving end stores the file locally, and downloads the corresponding video stream according to the download address of each video stream of each view angle in the file.
Fig. 9 is a structural diagram of another apparatus provided in an embodiment of the present invention, where the apparatus is disposed at a video receiving end, and is used to implement the functions of the video receiving end in the foregoing method embodiment. As shown in fig. 9, the apparatus may include: an event acquisition unit 11, a target determination unit 12, a video download unit 13, and a video play unit 14. The main functions of each constituent unit are as follows:
the event acquiring unit 11 is responsible for acquiring an event that triggers the video stream to switch from the first view angle to the second view angle.
If the event acquiring unit 11 receives an instruction for triggering the video stream to be switched from the first view angle to the second view angle; or capturing a gesture for triggering the video stream to be switched from a first visual angle to a second visual angle; or, when it is detected that the user view angle is changed from the first view angle to the second view angle, it is considered that an event triggering the video stream to be switched from the first view angle to the second view angle is acquired.
The target determination unit 12 is responsible for determining a slice whose slice start time is after the occurrence time T1 of the event and whose difference from T1 satisfies the set condition, from the N video streams of the second view angle.
The video downloading unit 13 is responsible for downloading the target video stream where the slice is located from the slice determined by the target determining unit 12. Specifically, the video downloading unit 13 may download the corresponding video stream according to the downloading address of the video stream of each view angle provided by the video sending end in advance. The download address of the video stream of each view angle provided by the video sending end can be stored in the video receiving end in advance in the form of a file.
The video playing unit 14 is responsible for playing the downloaded target video stream after the video stream at the first view angle is played to the determined slice start time T2.
The N paths of video streams of the second visual angle adopt the same fragment length, preset time difference exists between the same fragments of the N paths of video streams in sequence, the time difference is smaller than the fragment length, and N is an integer larger than 1. Preferably, the N videos use the same bitrate, and the video contents of the video streams are aligned in time.
The slice includes a GOP, that is, the slice is divided in units of GOPs. The present invention is not limited to this case, and is also applicable to a case where one slice contains a plurality of GOPs. The length of the GOP in the present invention is not limited, and may be 1s, 2s, or 0.5s, and 1s is usually employed.
Fig. 10 exemplarily illustrates an example apparatus 1000 in accordance with various embodiments. Device 1000 may include one or more processors 1002, system control logic 1001 coupled to at least one processor 1002, non-volatile memory (NMV)/memory 1004 coupled to system control logic 1001, and network interface 1006 coupled to system control logic 1001.
The processor 1002 may include one or more single-core or multi-core processors. The processor 1002 may comprise any combination of general purpose processors or dedicated processors (e.g., image processor, application processor, baseband processor, etc.).
System control logic 1001, in one embodiment, may include any suitable interface controllers to provide any suitable interface to at least one of processors 1002 and/or to any suitable device or component in communication with system control logic 1001.
The system control logic 1001 in one embodiment may include one or more memory controllers to provide an interface to the system memory 1003. System memory 1003 is used to load and store data and/or instructions. For example, corresponding to apparatus 1000, in one embodiment, system memory 1003 may include any suitable volatile memory.
The NVM/memory 1004 may include one or more tangible, non-transitory computer-readable media for storing data and/or instructions. For example, the NVM/memory 1004 may include any suitable non-volatile storage device, such as one or more Hard Disk Drives (HDDs), one or more Compact Disks (CDs), and/or one or more Digital Versatile Disks (DVDs).
The NVM/memory 1004 may include storage resources that are physically part of a device on which the system is installed or may be accessed, but not necessarily part of a device. For example, the NVM/memory 1004 may be network accessible via the network interface 1006.
System memory 1003 and NVM/storage 1004 may include copies of temporary or persistent instructions 1010, respectively. The instructions 1010 may include instructions that, when executed by at least one of the processors 1002, cause the device 1000 to implement the method described in fig. 5. In various embodiments, the instructions 1010 or hardware, firmware, and/or software components may additionally/alternatively be disposed in the system control logic 1001, the network interface 1006, and/or the processor 1002.
Network interface 1006 may include a receiver to provide a wireless interface for device 1000 to communicate with one or more networks and/or any suitable devices. Network interface 1006 may include any suitable hardware and/or firmware. The network interface 1006 may include multiple antennas to provide a multiple-input multiple-output wireless interface. In one embodiment, network interface 1006 may include a network adapter, a wireless network adapter, a telephone modem, and/or a wireless modem.
In one embodiment, at least one of the processors 1002 may be packaged together with logic for one or more controllers of system control logic. In one embodiment, at least one of the processors may be packaged together with logic for one or more controllers of system control logic to form a system in a package. In one embodiment, at least one of the processors may be integrated on the same die with logic for one or more controllers of system control logic. In one embodiment, at least one of the processors may be integrated on the same die with logic for one or more controllers of system control logic to form a system chip.
The apparatus 1000 may further include an input/output device 1005. Input/output devices 1005 may include a user interface intended to enable a user to interact with device 1000, may include a peripheral component interface designed to enable peripheral components to interact with the system, and/or may include sensors intended to determine environmental conditions and/or location information about device 1000.
Enumerating one application scenario:
in a VR live or on-demand system, a head of a device used by a user, such as VR glasses and VR helmets, deflects during watching a panoramic video, and needs to be switched from a first view angle to a second view angle. Then, in the manner described in the embodiment of the present invention, from the N video streams of the second view angle, the video stream of the GOP whose GOP start time is after the occurrence time T1 of the event and closest to T1 is determined as the target video stream to be switched to; downloading the target video stream from the determined GOP; and after the video stream of the first view angle is played to the determined start time T2 of the GOP, playing the downloaded target video stream. By the method, after the view angle is switched, the video can be switched to the second video for playing without waiting for the completion of the playing of the current GOP, so that the waiting time of the video stream switched from the first view angle to the second view angle is reduced as much as possible.
In the embodiments provided in the present invention, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described device embodiments are merely illustrative, and for example, the division of the units is only one logical functional division, and other divisions may be realized in practice.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (28)

1. A method for switching a view angle of a video stream, the method comprising:
acquiring an event triggering the video stream to be switched from a first visual angle to a second visual angle;
determining a slice with a slice starting time after the occurrence time of the event and a difference value with the occurrence time meeting a set condition from the N paths of video streams of the second view angle, wherein the set condition comprises: closest to the time of occurrence;
downloading the target video stream where the fragment is located from the determined fragment;
and after the video stream at the first visual angle is played to the determined starting time of the fragment, playing the downloaded target video stream, wherein a preset time difference exists between the same fragments of the N paths of video streams at the second visual angle in sequence, the time difference is smaller than the fragment length, and N is an integer greater than 1.
2. The method of claim 1, wherein the event that triggers the video stream to switch from the first view to the second view comprises:
receiving an instruction for triggering the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
capturing a gesture which triggers the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
a transition of a user perspective from a first perspective to a second perspective is detected.
3. The method of claim 1, wherein the N videos use the same bitrate, and the video content of each video stream is aligned in time.
4. The method of claim 1, wherein the N video streams use the same slice length.
5. The method according to claim 1, wherein the slice comprises a group of pictures (GOP).
6. The method according to any of claims 1 to 5, wherein the video stream is a video stream of a panoramic video.
7. A method for generating a video stream, the method comprising:
n paths of video streams are respectively generated according to each visual angle, preset time difference exists between the same fragments of the N paths of video streams in sequence, the time difference is smaller than the fragment length, and N is an integer larger than 1.
8. The method of claim 7, wherein the N videos have the same bitrate, and the video contents of the video streams are aligned in time.
9. The method according to claim 7, wherein the N video streams use the same slice length.
10. The method of claim 7, further comprising:
and storing the N paths of video streams of each view angle in a preset storage space, and providing the download address of each path of video stream of each view angle to a video receiving end.
11. The method according to claim 7, wherein the slice comprises a group of pictures (GOP).
12. The method according to any of claims 7 to 11, wherein the video stream is a video stream of a panoramic video.
13. An apparatus for switching a view angle of a video stream, the apparatus comprising:
the event acquisition unit is used for acquiring an event which triggers the video stream to be switched from a first visual angle to a second visual angle;
a target determining unit, configured to determine, from the N video streams from the second view angle, a slice whose slice start time is after an occurrence time of the event and whose difference from the occurrence time satisfies a set condition, where the set condition includes: closest to the time of occurrence;
the video downloading unit is used for downloading the target video stream where the fragment is positioned from the fragment determined by the target determining unit;
the video playing unit is used for playing the downloaded target video stream after the video stream at the first visual angle is played to the determined starting time of the fragment;
and a preset time difference sequentially exists between the same fragments of the N paths of video streams at the second visual angle, the time difference is smaller than the fragment length, and N is an integer larger than 1.
14. The apparatus according to claim 13, wherein the event acquiring unit, when acquiring the event triggering the video stream to switch from the first view angle to the second view angle, specifically performs:
receiving an instruction for triggering the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
capturing a gesture which triggers the video stream to be switched from a first visual angle to a second visual angle; alternatively, the first and second electrodes may be,
a transition of a user perspective from a first perspective to a second perspective is detected.
15. The apparatus of claim 13, wherein the N videos use the same bitrate, and wherein the video content of each video stream is aligned in time.
16. The apparatus according to claim 13, wherein the N video streams use the same slice length.
17. The apparatus according to claim 13, wherein the slice comprises a group of pictures (GOP).
18. The apparatus according to any of claims 13 to 17, wherein the video stream is a video stream of a panoramic video.
19. An apparatus for generating a video stream, the apparatus comprising:
and the video stream generating unit is used for respectively generating N paths of video streams aiming at each visual angle, wherein a preset time difference exists between the same fragments of the N paths of video streams in sequence, the time difference is smaller than the fragment length, and N is an integer larger than 1.
20. The apparatus of claim 19, wherein the N videos use the same bitrate, and wherein the video content of each video stream is aligned in time.
21. The apparatus according to claim 19, wherein the N video streams use the same slice length.
22. The apparatus of claim 19, further comprising:
and the storage processing unit is used for storing the N paths of video streams of all the visual angles in a preset storage space and providing the download addresses of all the paths of video streams of all the visual angles to the video receiving end.
23. The apparatus of claim 19, wherein the slice comprises a group of pictures (GOP).
24. The apparatus according to any of claims 19 to 23, wherein the video stream is a video stream of a panoramic video.
25. An electronic device comprises
A memory including one or more programs;
one or more processors, coupled to the memory, that execute the one or more programs to perform operations performed in the method of any of claims 1-5.
26. An electronic device comprises
A memory including one or more programs;
one or more processors, coupled to the memory, that execute the one or more programs to perform operations performed in the method of any of claims 7 to 11.
27. A computer storage medium encoded with a computer program that, when executed by one or more computers, causes the one or more computers to perform operations performed in the method of any one of claims 1 to 5.
28. A computer storage medium encoded with a computer program that, when executed by one or more computers, causes the one or more computers to perform operations performed in the method of any one of claims 7 to 11.
CN201710547015.3A 2017-07-06 2017-07-06 Method, device and equipment for switching visual angle of video stream and computer storage medium Active CN109218739B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710547015.3A CN109218739B (en) 2017-07-06 2017-07-06 Method, device and equipment for switching visual angle of video stream and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710547015.3A CN109218739B (en) 2017-07-06 2017-07-06 Method, device and equipment for switching visual angle of video stream and computer storage medium

Publications (2)

Publication Number Publication Date
CN109218739A CN109218739A (en) 2019-01-15
CN109218739B true CN109218739B (en) 2021-04-13

Family

ID=64992239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710547015.3A Active CN109218739B (en) 2017-07-06 2017-07-06 Method, device and equipment for switching visual angle of video stream and computer storage medium

Country Status (1)

Country Link
CN (1) CN109218739B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112911315A (en) * 2019-11-19 2021-06-04 中兴通讯股份有限公司 Live streaming recording method, network equipment and storage medium
TWI830978B (en) * 2020-12-30 2024-02-01 光陣三維科技有限公司 System for obtaining and displaying specific streaming media from another streaming media combined streaming medias for transmission and method thereof
CN112738508A (en) * 2020-12-31 2021-04-30 咪咕文化科技有限公司 Video coding method, video determining method, video processing method, server and VR terminal
CN113691797B (en) * 2021-08-27 2023-08-01 咪咕文化科技有限公司 Video playing processing method, device, equipment and storage medium
CN114390324A (en) * 2022-03-23 2022-04-22 阿里云计算有限公司 Video processing method and system and cloud rebroadcasting method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402494B1 (en) * 2009-03-23 2013-03-19 Conviva Inc. Switching content
US9197682B2 (en) * 2012-12-21 2015-11-24 Nokia Technologies Oy Method, apparatus, and computer program product for generating a video stream of a mapped route
US9544665B2 (en) * 2013-05-31 2017-01-10 Broadcom Corporation Providing multiple ABR streams using a single transcoder
CN104159164B (en) * 2014-08-27 2017-06-27 华中师范大学 A kind of wireless cooperation method for reducing multiple vision point video stream synchronization delayed time
JP6178370B2 (en) * 2015-09-09 2017-08-09 株式会社メディアリンクス Video transmission system and video receiver

Also Published As

Publication number Publication date
CN109218739A (en) 2019-01-15

Similar Documents

Publication Publication Date Title
CN109218739B (en) Method, device and equipment for switching visual angle of video stream and computer storage medium
US11653065B2 (en) Content based stream splitting of video data
Shi et al. Freedom: Fast recovery enhanced vr delivery over mobile networks
US11539983B2 (en) Virtual reality video transmission method, client device and server
CN113242435B (en) Screen projection method, device and system
JP6672327B2 (en) Method and apparatus for reducing spherical video bandwidth to a user headset
CN109218848A (en) View angle switch method, apparatus, equipment and the computer storage medium of video flowing
KR102133207B1 (en) Communication apparatus, communication control method, and communication system
US9055272B2 (en) Moving image reproduction apparatus, information processing apparatus, and moving image reproduction method
CN114584769A (en) Visual angle switching method and device
CN108810567B (en) Audio and video visual angle matching method, client and server
JP2017123503A (en) Video distribution apparatus, video distribution method and computer program
KR20190063590A (en) Operating Method for Live Streaming Service of Virtual Contents based on Tiled Encoding image and electronic device supporting the same
KR102118334B1 (en) Electronic device supporting for Live Streaming Service of Virtual Contents based on Tiled Encoding image
CN113316940A (en) Method and device for circularly playing video content
US20200374567A1 (en) Generation apparatus, reproduction apparatus, generation method, reproduction method, control program, and recording medium
CN108574881B (en) Projection type recommendation method, server and client
WO2018196530A1 (en) Video information processing method, terminal, and computer storage medium
US11134236B2 (en) Image processing device and system
CN111885417B (en) VR video playing method, device, equipment and storage medium
US20170048532A1 (en) Processing encoded bitstreams to improve memory utilization
US20230266902A1 (en) Video stream encoding for computational storage device
US10944971B1 (en) Method and apparatus for frame accurate field of view switching for virtual reality
WO2018178510A2 (en) Video streaming
EP4044584A1 (en) Panoramic video generation method, video acquisition method, and related apparatuses

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
GR01 Patent grant
GR01 Patent grant