Video session shifting using a provider network
AssigneeVerizon Patent and Licensing Inc.
InventorsXuefeng Yao, Jack Jianxiu Hao, Yuhui Qian, Zhiying Jin
Life of this patent
Estimating the term…
Abstract
A method includes receiving a request for a video program from a user device. A user account associated with the user device is identified. The method may also include identifying a latest viewing point for the video program based on the user account. A video segment playlist may be generated based on the latest viewing point. The video segment playlist identifies one or more video segments of the video program. The video segment playlist may be provided to the user device. The user device is operable to request the one or more video segments.
Claims20
A computer-implemented method comprising:
- receiving a request for a video program from a user device;
- identifying a user account associated with the user device;
- identifying a recorded viewing point associated with the user account at a provider network;
- determining an estimated buffering differential between a current viewing point at the user device and the recorded viewing point, wherein the estimated buffering differential is based on an amount of time that the user device takes to process and display a video segment;
- identifying a last viewed video segment for the video program streamed from a streaming server based on the user account and by subtracting the estimated buffering differential from the recorded viewing point;
- generating a video segment playlist for streaming the video program based on the last viewed video segment, wherein the video segment playlist identifies a predetermined number of video segments of the video program, wherein the predetermined number of video segments includes the last viewed video segment and subsequent video segments, and wherein each video segment is a video file of predetermined length that is a unit of the video program;
- and
- providing the video segment playlist to the user device, wherein the user device is operable to request the last viewed video segment and the subsequent video segments from the streaming server and to cache the last viewed video segment and the subsequent video segments.
A device, comprising:
- a memory to store a plurality of instructions;
- and
- a processor configured to execute instructions in the memory to:
- receive a request for a video program from a user device;
- identify a user account associated with the user device;
- identify a recorded viewing point associated with the user account;
- determine an estimated buffering differential between a current viewing point at the user device and the recorded viewing point, wherein the estimated buffering differential is based on an amount of time that the user device takes to process and display a video segment;
- identify a last viewed video segment of the video program streamed from a streaming server based on the user account and by subtracting the estimated buffering differential from the recorded viewing point, wherein each video segment is a video file of predetermined length that is a unit of the video program;
- generate a video segment playlist based on the last viewed video segment, wherein the video segment playlist identifies a predetermined number of video segments of the video program and includes the last viewed video segment and subsequent video segments of the predetermined number of video segments;
- and
- provide the video segment playlist to the user device, wherein the user device is configured to request the last viewed video segment and the subsequent video segments to be streamed from a streaming server and to cache the last viewed video segment and the subsequent video segments.
A non-transitory computer-readable medium including instructions to be executed by a processor, the instructions including one or more instructions, when executed by the processor, for causing the processor to:
- receive a request for a video program from a user device;
- identify a user account associated with the user device;
- identify a recorded viewing point associated with the user account;
- determine an estimated buffering differential between a current viewing point at the user device and the recorded viewing point, wherein the estimated buffering differential is based on an amount of time for the user device to process and display a video segment;
- identify a last viewed video segment for the video program streamed from a streaming server based on the user account and by subtracting the estimated buffering differential from the recorded viewing point;
- generate a video segment playlist based on the last viewed video segment, wherein the video segment playlist identifies a predetermined number of video segments of the video program, wherein the predetermined number of video segments includes the last viewed video segment and subsequent video segments, and wherein each video segment is a video file of predetermined length that is a unit of the video program;
- and
- provide the video segment playlist to the user device, wherein the user device is operable to request the last viewed video segment and subsequent video segments to be streamed from a streaming server and to cache the last viewed video segment and the subsequent video segments.
Dependencies are inferred from the claim text.