A system for providing program content to a terminal through a communications network, the system comprising: a first interface for receiving content of an in-progress program from a source during a broadcast of the program content according to a broadcast schedule, the in-progress program content comprising, at least in part, I-frames defining the program content, each I-frame being identified by a respective I-frame identifier; a memory for storing the in-progress program content, the stored in-progress program content comprising, at least in part, the I-frames defining the program content; a processor to create, at least in part during the broadcast of the in-progress program content according to the broadcast schedule, at least one file based on the in-progress program content for delivering manipulated recorded program content during at least the broadcast of the program content according to the broadcast schedule, the at least one file being separate from the stored program content and comprising an array of selected I-frame identifiers identifying respective I-frames of the stored program content without the respective I-frames, wherein the selected I-frame identifiers identify fewer than all of the I-frames of the stored program content; the memory further storing, separate from the stored program content, the at least one file comprising the array; a mechanism for transmitting first signals containing the in-progress program content through the communications network to the terminal, which in response to the first signals displays the in-progress program content in perceivable form; a second interface for receiving from the terminal through the communications network a request for manipulating the perceivable in-progress program content; and a control unit responsive to the request for providing second signals containing at least part of the stored in-progress program content based, at least in part, on the at least one file to the terminal through the communications network to manipulate the perceivable in-progress program content, wherein the request for manipulating comprises a request for rewinding the perceivable in-progress program content and the at least one file comprises at least one file for rewinding the in-progress program content, or wherein the request for manipulating comprises a request for fast-forwarding the perceivable in-progress program content and the at least one file comprises at least one file for fast-forwarding the in-progress program content. a first interface for receiving content of an in-progress program from a source during a broadcast of the program content according to a broadcast schedule, the in-progress program content comprising, at least in part, I-frames defining the program content, each I-frame being identified by a respective I-frame identifier; a memory for storing the in-progress program content, the stored in-progress program content comprising, at least in part, the I-frames defining the program content; a processor to create, at least in part during the broadcast of the in-progress program content according to the broadcast schedule, at least one file based on the in-progress program content for delivering manipulated recorded program content during at least the broadcast of the program content according to the broadcast schedule, the at least one file being separate from the stored program content and comprising an array of selected I-frame identifiers identifying respective I-frames of the stored program content without the respective I-frames, wherein the selected I-frame identifiers identify fewer than all of the I-frames of the stored program content; the memory further storing, separate from the stored program content, the at least one file comprising the array; a mechanism for transmitting first signals containing the in-progress program content through the communications network to the terminal, which in response to the first signals displays the in-progress program content in perceivable form; a second interface for receiving from the terminal through the communications network a request for manipulating the perceivable in-progress program content; and a control unit responsive to the request for providing second signals containing at least part of the stored in-progress program content based, at least in part, on the at least one file to the terminal through the communications network to manipulate the perceivable in-progress program content, wherein the request for manipulating comprises a request for rewinding the perceivable in-progress program content and the at least one file comprises at least one file for rewinding the in-progress program content, or wherein the request for manipulating comprises a request for fast-forwarding the perceivable in-progress program content and the at least one file comprises at least one file for fast-forwarding the in-progress program content.