A computer-readable storage device storing computer-executable instructions that when executed by a computer cause the computer to perform a method, the method comprising:
- displaying, on a device controlled by a game controller, a representation of a video, where the video comprises a collection of frames, where the video was generated from a video game played on the device while the device was controlled by the game controller and while the video game was controlled by the game controller, or where the video was imported from a device other than the device controlled by the game controller;
- displaying, on the device, a representation of a beginning point for a clip in the video, where the clip comprises a subset of the collection of frames;
- displaying, on the device, a representation of an ending point for the clip in the video;
- configuring the game controller so a first input element will control the representation of the beginning point and so a second input element will control the representation of the ending point;
- simultaneously receiving a first input from the first input element on the game controller and receiving a second, different input from the second input element on the game controller;
- simultaneously selectively updating the representation of the beginning point in response to the input from the first input element and selectively updating the representation of the ending point in response to the input from the second input element;
- moving the representation of the beginning point at a first rate when the first input results from the first input element being manipulated in a first way and moving the representation of the beginning point at a second, different rate when the first input results from the first input element being manipulated in a second different way, and moving the representation of the ending point at the first rate when the second input results from the second input element being manipulated in the first way and moving the representation of the ending point at the second, different rate when the second input results from the second input element being manipulated in the second different way;
- establishing the beginning point based on the representation of the beginning point;
- establishing the ending point based on the representation of the ending point;
- receiving a third input from a third control element on the game controller and manipulating the beginning point or the ending point in response to the third input;
- providing a first feedback upon determining that an attempt has been made to establish the beginning point and the ending point closer together than a pre-defined minimum distance, and providing a second different feedback upon determining that an attempt has been made to establish the beginning point and the ending point farther apart than a pre-defined maximum distance;
- displaying on the device a current size of the clip as determined by the beginning point and the ending point, and
- redefining the clip based, at least in part, on the beginning point and the ending point.