Patent ID: 8707376

Claim:
An apparatus comprising: a video storage device configured to record a plurality of video programs received from at least one programming source; and a controller, in communication with the video storage device, configured to: determine whether to record a video program based on information included with the video program from the at least one programming source, the information indicating whether the apparatus is permitted to record the video program, cause the video storage device to record the video program when the video program is being received by the apparatus from the at least one programming source, independently provide the recorded video program to each of a plurality of client devices requesting replay of the video program from its beginning, update a flag corresponding to the recorded video program in response to providing the recorded video program to one of the plurality of client devices, the flag indicating that one or more of the plurality of client devices is accessing the recorded video program, update the flag in response to determining that none of the plurality of client devices is accessing the recorded video program, determine whether a runtime of the video program has elapsed, and remove the recorded video program from the video storage device based on the flag and in response to determining that the runtime of the video program has elapsed.