IP Library Granted Patent US 8,423,164
Granted Patent B2
US 8,423,164 · App. 10/770,935 · Granted Apr 16, 2013

Method for recording and replaying operations in a computer environment using initial conditions

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,423,164
App. No.
10/770,935
Granted
Apr 16, 2013
Kind
B2
Abstract

A method for recording and replaying operations in a computer environment utilizes initial conditions of the computer environment at the start of a recording to configure a replay computer environment during replay. The initial conditions of the computer environment are saved prior to recording of user inputs to the computer environment. The saved initial conditions and the recorded user inputs can then be used to actively operate the replay computer environment from a state substantially identical to the initial state of the computer environment to replay the recorded operations in the replay computer environment. The method also includes a technique to synchronize the operations with accompanying audio during replay.

Claims (87)

1. A method for synchronizing operations in a computer environment with accompanying audio, said method comprising:

replaying said operations and said accompanying audio in said computer environment using an event recording, said operations resulting from processing of recorded user inputs of said event recording, said event recording including all user inputs to an original computer environment during said event recording and initial conditions of said original computer environment when said event recording was initiated;

creating a synchronization point at a common point in said replaying of said operations and said accompanying audio;

associating said synchronization point with said accompanying audio, said synchronization point providing a reference point to substantially synchronize said accompanying audio when said operations are replayed in a replay computer environment using said recorded user inputs;

detecting said synchronization point during a subsequent replay of said operations and said accompanying audio in said replay computer environment, said subsequent replay involving another processing of said recorded user inputs;

comparing said synchronization point with a time value associated with said another processing of said recorded user inputs;

selectively pausing said subsequent replay of said accompanying audio if a difference between said synchronization point and said time value exceeds a predefined amount so that said subsequent replay of said operations can catch up to said accompanying audio; and

resuming said subsequent replay of said accompanying audio if a difference between said synchronization point and a current time value does not exceed a second predefined amount, said current time value being associated with said another processing of said recorded user inputs.

2. The method of claim 1 wherein said creating of said synchronization point includes creating said synchronization point in response to a user command.

3. The method of claim 1 wherein said common point is at a point in time where there is no audio output during said replaying of said accompanying audio.

4. The method of claim 1 further comprising obtaining a current time value associated with said processing of said recorded user inputs, said current time value corresponding to said synchronization point.

5. The method of claim 1 further comprising saving said synchronization point in a first file containing said accompanying audio, said first file being different than a second file containing said recorded user inputs.

6. The method of claim 1 further comprising changing a time value of said synchronization point in response to a positional change of a marker of said synchronization point in a timeline.

7. The method of claim 1 wherein said second predefined amount equals said predefined amount.

8. The method of claim 1 , further comprising:

saving said initial conditions of said original computer environment in a log file when a recording is initiated, said initial conditions corresponding to an initial state of said original computer environment such that said initial state of said original computer environment can be automatically recreated on replay using said initial conditions, said initial state being a particular state from a plurality of possible states for said original computer environment, said log file including complete definitions of every control in said original computer environment with respect to said initial state so that said initial state can be subsequently recreated using said log file;

modifying said initial conditions in said log file in response to user editing of said log file so that a modified initial state of said original computer environment is automatically created on replay using modified initial conditions in said log file when said log file is loaded; and

automatically loading said log file in said computer environment when a replay is initiated to create said modified initial state in said computer environment as a starting state for said replay.

9. A method for synchronizing operations in a computer environment with accompanying audio, said method comprising:

replaying said operations in said computer environment, including replaying said accompanying audio, using an event recording, said operations resulting from processing of recorded user inputs of said event recording, said event recording including all user inputs to an original computer environment during said event recording and initial conditions of said original computer environment when said event recording was initiated;

detecting a synchronization point during said replaying of said accompanying audio;

comparing said synchronization point with a time value associated with said processing of said recorded user inputs;

selectively pausing said replaying of said accompanying audio if a difference between said synchronization point and said time value exceeds a predefined amount so that said replaying of said operations can catch up to said accompanying audio; and

resuming said replaying of said accompanying audio if a difference between said synchronization point and a current time value does not exceed a second predefined amount, said current time value being associated with said processing of said recorded user inputs.

10. The method of claim 9 wherein said second predefined amount equals said predefined amount.

11. The method of claim 9 further comprising displaying said synchronization point as a marker on a timeline, said timeline including time values extracted from said recorded user inputs.

12. The method of claim 9 further comprising:

creating said synchronization point at a common point in a replay of said operations and said accompanying audio; and

associating said synchronization point with said accompanying audio.

13. The method of claim 12 wherein said creating of said synchronization point includes creating said synchronization point in response to a user command.

14. The method of claim 12 wherein said common point is at a point in time where there is no audio output of said accompanying audio.

15. The method of claim 12 further comprising saving said synchronization point in a first file containing said accompanying audio, said first file being different than a second file containing said recorded user inputs.

16. The method of claim 12 further comprising changing a time value of said synchronization point in response to a positional change of a marker of said synchronization point in a timeline.

17. The method of claim 9 , further comprising:

saving said initial conditions of said original computer environment in a log file when a recording is initiated, said initial conditions corresponding to an initial state of said original computer environment such that said initial state of said original computer environment can be automatically recreated on replay using said initial conditions, said initial state being a particular state from a plurality of possible states for said original computer environment, said log file including complete definitions of every control in said original computer environment with respect to said initial state so that said initial state can be subsequently recreated using said log file;

modifying said initial conditions in said log file in response to user editing of said log file so that a modified initial state of said original computer environment is automatically created on replay using modified initial conditions in said log file when said log file is loaded; and

automatically loading said log file in said computer environment when a replay is initiated to create said modified initial state in said computer environment as a starting state for said replay.

18. A storage medium readable by a computer, tangibly embodying a program of instructions executable by said computer to perform method steps for synchronizing operations in a computer environment with accompanying audio, said method comprising:

replaying said operations and said accompanying audio in said computer environment using an event recording, said operations resulting from processing of recorded user inputs of said event recording, said event recording including all user inputs to an original computer environment during said event recording and initial conditions of said original computer environment when said event recording was initiated;

creating a synchronization point at a common point in said replaying of said operations and said accompanying audio; and

associating said synchronization point with said accompanying audio, said synchronization point providing a reference point to substantially synchronize said accompanying audio when said operations are replayed in a replay computer environment using said recorded user inputs;

detecting said synchronization point during a subsequent replay of said operations and said accompanying audio in said replay computer environment, said subsequent replay involving another processing of said recorded user inputs;

comparing said synchronization point with a time value associated with said another processing of said recorded user inputs;

selectively pausing said subsequent replay of said accompanying audio if a difference between said synchronization point and said time value exceeds a predefined amount so that said subsequent replay of said operations can catch up to said accompanying audio; and

resuming said subsequent replay of said accompanying audio if a difference between said synchronization point and a current time value does not exceed a second predefined amount, said current time value being associated with said another processing of said recorded user inputs.

19. The storage medium of claim 18 wherein said creating of said synchronization point includes creating said synchronization point in response to a user command.

20. The storage medium of claim 18 wherein said common point is at a point in time where there is no audio output during said replaying of said accompanying audio.

21. The storage medium of claim 18 , wherein said method further comprises obtaining a current time value associated with said processing of said recorded user inputs, said current time value corresponding to said synchronization point.

22. The storage medium of claim 18 , wherein said method further comprises saving said synchronization point in a first file containing said accompanying audio, said first file being different than a second file containing said recorded user inputs.

23. The storage medium of claim 18 , wherein said method further comprises changing a time value of said synchronization point in response to a positional change of a marker of said synchronization point in a timeline.

24. The storage medium of claim 18 wherein said second predefined amount equals said predefined amount.

25. The storage medium of claim 18 , wherein said method steps further comprises:

saving said initial conditions of said original computer environment in a log file when a recording is initiated, said initial conditions corresponding to an initial state of said original computer environment such that said initial state of said original computer environment can be automatically recreated on replay using said initial conditions, said initial state being a particular state from a plurality of possible states for said original computer environment, said log file including complete definitions of every control in said original computer environment with respect to said initial state so that said initial state can be subsequently recreated using said log file;

modifying said initial conditions in said log file in response to user editing of said log file so that a modified initial state of said original computer environment is automatically created on replay using modified initial conditions in said log file when said log file is loaded; and

automatically loading said log file in said computer environment when a replay is initiated to create said modified initial state in said computer environment as a starting state for said replay.

26. A storage medium readable by a computer, tangibly embodying a program of instructions executable by said computer to perform method steps for synchronizing operations in a computer environment with accompanying audio, said method comprising:

replaying said operations in said computer environment, including replaying said accompanying audio, using an event recording, said operations resulting from processing of recorded user inputs of said event recording, said event recording including all user inputs to an original computer environment during said event recording and initial conditions of said original computer environment when said event recording was initiated;

detecting a synchronization point during said replaying of said accompanying audio;

comparing said synchronization point with a time value associated with said processing of said recorded user inputs;

selectively pausing said replaying of said accompanying audio if a difference between said synchronization point and said time value exceeds a predefined amount so that said replaying of said operations can catch up to said accompanying audio; and

resuming said replaying of said accompanying audio if a difference between said synchronization point and a current time value does not exceed a second predefined amount, said current time value being associated with said processing of said recorded user inputs.

27. The storage medium of claim 26 wherein said second predefined amount equals said predefined amount.

28. The storage medium of claim 26 further comprising displaying said synchronization point as a marker on a timeline, said timeline including time values extracted from said recorded user inputs.

29. The storage medium of claim 26 wherein said method further comprises:

creating said synchronization point at a common point in a replay of said operations and said accompanying audio; and

associating said synchronization point with said accompanying audio.

30. The storage medium of claim 29 wherein said method further comprises wherein said creating of said synchronization point includes creating said synchronization point in response to a user command.

31. The storage medium of claim 29 wherein said common point is at a point in time where there is no audio output of said accompanying audio.

32. The storage medium of claim 29 further comprising saving said synchronization point in a first file containing said accompanying audio, said first file being different than a second file containing said recorded user inputs.

33. The storage medium of claim 29 further comprising changing a time value of said synchronization point in response to a positional change of a marker of said synchronization point in a timeline.

34. A method for synchronizing operations in a computer environment with accompanying audio, said method comprising:

replaying said operations in said computer environment, including replaying said accompanying audio, using an event recording, said operations resulting from processing of recorded user inputs of said event recording, said event recording including all user inputs to an original computer environment during said event recording and initial conditions of said original computer environment when said event recording was initiated;

detecting a synchronization point during said replaying of said accompanying audio;

comparing said synchronization point with a time value associated with said processing of said recorded user inputs;

selectively pausing said replaying of said accompanying audio if a difference between said synchronization point and said time value exceeds a predefined amount so that said replaying of said operations can catch up to said accompanying audio;

creating said synchronization point at a common point in a replay of said operations and said accompanying audio, wherein said common point is at a point in time where there is no audio output of said accompanying audio; and

associating said synchronization point with said accompanying audio.

35. A storage medium readable by a computer, tangibly embodying a program of instructions executable by said computer to perform said method of claim 34 .

36. A method for synchronizing operations in a computer environment with accompanying audio, said method comprising:

replaying said operations in said computer environment, including replaying said accompanying audio, using an event recording, said operations resulting from processing of recorded user inputs of said event recording, said event recording including all user inputs to an original computer environment during said event recording and initial conditions of said original computer environment when said event recording was initiated;

detecting a synchronization point during said replaying of said accompanying audio;

comparing said synchronization point with a time value associated with said processing of said recorded user inputs;

selectively pausing said replaying of said accompanying audio if a difference between said synchronization point and said time value exceeds a predefined amount so that said replaying of said operations can catch up to said accompanying audio;

creating said synchronization point at a common point in a replay of said operations and said accompanying audio;

associating said synchronization point with said accompanying audio; and

saving said synchronization point in a first file containing said accompanying audio, said first file being different than a second file containing said recorded user inputs.

37. A storage medium readable by a computer, tangibly embodying a program of instructions executable by said computer to perform said method of claim 36 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2006
From: JAEGER, DENNY
To: NBOR CORPORATION
Reel/Frame 017496/0785 →