CPC H04N 21/4856 (2013.01) [G06F 16/7867 (2019.01); G06V 10/768 (2022.01); G06V 20/49 (2022.01); H04N 21/44 (2013.01); H04N 21/47217 (2013.01); H04N 21/4882 (2013.01); H04N 21/84 (2013.01); H04N 21/8586 (2013.01); G06V 2201/10 (2022.01)] | 30 Claims |
1. A method comprising using at least one processor of a server to:
for each of a plurality of videos, store a unique video identifier and corresponding subtitle content;
receive, from a user device, a search request comprising one or more keywords;
search the subtitle content for the plurality of videos to identify one or more matching videos of the plurality of videos, wherein each of the one or more matching videos is associated with subtitle content that comprises a matching subtitle text portion that matches the one or more keywords;
for each of the one or more matching videos,
determine a start time within the matching video, so as to precede a subtitle time corresponding to the matching subtitle text portion, and
generate video segment metadata that defines a video segment, wherein the video segment metadata comprises the unique video identifier of the matching video, and the start time;
in response to the search request, return, to the user device from which the search request was received, search response data comprising the video segment metadata for at least one of the one or more matching videos;
receive, from the user device, a request for playback of one video segment returned in the search response data; and
in response to the request for playback of the one video segment,
retrieve a video stream of the video identified by the unique video identifier in the video segment metadata defining the one video segment, and
cause playback of the video stream to begin at the start time in the video segment metadata defining the one video segment.
|