Automatic generation of video from spherical content using location-based metadata
First Claim
1. A method for generating an output video from spherical video content, the method comprising:
- storing, by a video server, a first spherical video having first spherical video content and first video metadata including location data pertaining to a location of a first camera capturing the first spherical video content and timing data pertaining to a time of capture of the first spherical video content;
receiving user metadata representing a target path, the target path comprising a sequence of time-stamped locations corresponding to a target;
determining by the video server, based on the user metadata and the first video metadata, a first matching portion of the first spherical video, the first matching portion captured when the first camera was within a threshold vicinity of the target, wherein determining the first matching portion of the first spherical video comprises;
determining for each of a sequence of corresponding time points, distances between the target and the first camera based on the first video metadata and the user metadata;
determining a time range over which the distances are less than a distance threshold; and
determining the first matching portion based on the time range responsive to the time range exceeding a predefined time threshold;
determining a sequence of sub-frames by selecting, for each of a plurality of frames of the first matching portion of the first spherical video, a sub-frame having content relevant to the target path, each of the sequence of sub-frames comprising a non-spherical field of view;
combining the sequence of sub-frames to generate a first portion of the output video relevant to the target; and
outputting the output video.
3 Assignments
0 Petitions
Accused Products
Abstract
A spherical content capture system captures spherical video content. A spherical video sharing platform enables users to share the captured spherical content and enables users to access spherical content shared by other users. In one embodiment, captured metadata or video/audio processing is used to identify content relevant to a particular user based on time and location information. The platform can then generate an output video from one or more shared spherical content files relevant to the user. The output video may include a non-spherical reduced field of view such as those commonly associated with conventional camera systems. Particularly, relevant sub-frames having a reduced field of view may be extracted from each frame of spherical video to generate an output video that tracks a particular individual or object of interest.
-
Citations
20 Claims
-
1. A method for generating an output video from spherical video content, the method comprising:
-
storing, by a video server, a first spherical video having first spherical video content and first video metadata including location data pertaining to a location of a first camera capturing the first spherical video content and timing data pertaining to a time of capture of the first spherical video content; receiving user metadata representing a target path, the target path comprising a sequence of time-stamped locations corresponding to a target; determining by the video server, based on the user metadata and the first video metadata, a first matching portion of the first spherical video, the first matching portion captured when the first camera was within a threshold vicinity of the target, wherein determining the first matching portion of the first spherical video comprises; determining for each of a sequence of corresponding time points, distances between the target and the first camera based on the first video metadata and the user metadata; determining a time range over which the distances are less than a distance threshold; and determining the first matching portion based on the time range responsive to the time range exceeding a predefined time threshold; determining a sequence of sub-frames by selecting, for each of a plurality of frames of the first matching portion of the first spherical video, a sub-frame having content relevant to the target path, each of the sequence of sub-frames comprising a non-spherical field of view; combining the sequence of sub-frames to generate a first portion of the output video relevant to the target; and outputting the output video. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for generating an output video from spherical video content, the method comprising:
-
storing, by a video server, a first spherical video having first spherical video content and first video metadata including location data pertaining to a location of a first camera capturing the first spherical video content and timing data pertaining to a time of capture of the first spherical video content; receiving user metadata representing a target path, the target path comprising a sequence of time-stamped locations corresponding to a target; determining by the video server, based on the user metadata and the first video metadata, a first matching portion of the first spherical video, the first matching portion captured when the first camera was within a threshold vicinity of the target; determining a sequence of sub-frames by selecting, for each of a plurality of frames of the first matching portion of the first spherical video, a sub-frame having content relevant to the target path, each of the sequence of sub-frames comprising a non-spherical field of view; combining the sequence of sub-frames to generate a first portion of the output video relevant to the target; storing, by the video server, a second spherical video having second spherical video content captured by a second camera and second video metadata; determining by the video server, based on the user metadata and the second video metadata, a second matching portion of the second spherical video, the second matching portion captured when the second camera was within a threshold vicinity of the target; for each of a plurality of frames of the second matching portion of the second spherical video, selecting a sub-frame having a non-spherical field of view, the sub-frame having content relevant to the target path; combining the selected sub-frames to generate a second portion of the output video relevant to the target; combining the first portion of the output video with the second portion of the output video, wherein combining the first portion of the output video with the second portion of the output video comprises; identifying a time overlap between the first portion of the output video and the second portion of the output video; and selecting between the first portion of the output video and the second portion of the output video during the time overlap based on proximity between the first camera and the target and between the second camera and the target; and outputting the output video. - View Dependent Claims (8, 9, 10)
-
-
11. A non-transitory computer-readable storage medium storing instructions for generating an output video from spherical video content, the instructions when executed by one or more processors causing the one or more processors to perform steps including:
-
storing a first spherical video having first spherical video content and first video metadata including location data pertaining to a location of a first camera capturing the first spherical video content and timing data pertaining to a time of capture of the first spherical video content; receiving user metadata representing a target path, the target path comprising a sequence of time-stamped locations corresponding to a target; determining, based on the user metadata and the first video metadata, a first matching portion of the first spherical video, the first matching portion captured when the first camera was within a threshold vicinity of the target, wherein determining the first matching portion of the first spherical video comprises; determining for each of a sequence of corresponding time points, distances between the target and the first camera based on the first video metadata and the user metadata; determining a time range over which the distances are less than a distance threshold; and determining the first matching portion based on the time range responsive to the time range exceeding a predefined time threshold; determining a sequence of sub-frames by selecting, for each of a plurality of frames of the first matching portion of the first spherical video, a sub-frame having content relevant to the target path, each of the sequence of sub-frames comprising a non-spherical field of view; combining the sequence of sub-frames to generate a first portion of the output video relevant to the target; and outputting the output video. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A non-transitory computer-readable storage medium storing instructions for generating an output video from spherical video content, the instructions when executed by one or more processors causing the one or more processors to perform steps including:
-
storing a first spherical video having first spherical video content and first video metadata including location data pertaining to a location of a first camera capturing the first spherical video content and timing data pertaining to a time of capture of the first spherical video content; receiving user metadata representing a target path, the target path comprising a sequence of time-stamped locations corresponding to a target; determining, based on the user metadata and the first video metadata, a first matching portion of the first spherical video, the first matching portion captured when the first camera was within a threshold vicinity of the target; determining a sequence of sub-frames by selecting, for each of a plurality of frames of the first matching portion of the first spherical video, a sub-frame having content relevant to the target path, each of the sequence of sub-frames comprising a non-spherical field of view; combining the sequence of sub-frames to generate a first portion of the output video relevant to the target; storing a second spherical video having second spherical video content captured by a second camera and second video metadata; determining, based on the user metadata and the second video metadata, a second matching portion of the second spherical video, the second matching portion captured when the second camera was within a threshold vicinity of the target; for each of a plurality of frames of the second matching portion of the second spherical video, selecting a sub-frame having a non-spherical field of view, the sub-frame having content relevant to the target path; combining the selected sub-frames to generate a second portion of the output video relevant to the target; combining the first portion of the output video with the second portion of the output video, wherein combining the first portion of the output video with the second portion of the output video comprises; identifying a time overlap between the first portion of the output video and the second portion of the output video; and selecting between the first portion of the output video and the second portion of the output video during the time overlap based on proximity between the first camera and the target and between the second camera and the target; and outputting the output video. - View Dependent Claims (18, 19, 20)
-
Specification