Patent ID: 8914836

Claim:
A playback device configured to perform load and rate adaptive streaming, comprising: a processor configured via a load and rate adaptive streaming application to request segments of video from among a plurality of bitstreams, where the plurality of bitstreams are encoded at different decode levels in which resolution and bitrate vary between different decode levels; wherein the load and rate adaptive streaming application further configures the processor to: download and buffer a segment of video from a first bitstream at an initial decode level, where the segment of video comprises at least a plurality of frames of encoded video that are buffered in a coded picture buffer within the playback device; perform video processing to decode the plurality of frames of encoded video in the coded picture buffer in order to generate a plurality of frames of decoded video; store the plurality of frames of decoded video in a frame queue for display; accumulate measurements in a sample collection buffer, wherein the accumulated measurements comprise (i) a frame delivery time for each frame of decoded video in the frame queue and (ii) a number of dropped frames over a predefined period; when the number of dropped frames over the predefined period exceeds a frame drop threshold, flush a portion of the frames of encoded video buffered in the coded picture buffer; and when the accumulated measurements of the frame delivery times for the frames of the decoded video in the frame queue exceed a first threshold, download another segment of video from a second bitstream having a lower decode level than the decode level of the first bitstream.