Audio/video synchronization for application programs
First Claim
1. In a computing system running a multi-threaded audio/visual application program, a synchronization method embedded in the application program for synchronizing an audio thread with a video thread in the application program, said audio and video threads processing respectively audio fields and video fields for playback through audio and video adapters attached to the computing system, said method comprising the computer implemented steps of:
- storing the video fields, the audio fields, and a sync count with each audio field, each audio field sync count identifying the video field that the audio field is to be in synchronism with during playback;
in the audio thread, controlling the processing of each audio field stored in the system and sending a sync flag and the sync count as a sync value to the video thread;
in the video thread, controlling the processing of each video field stored in the system and counting the video fields as they are processed to provide an actual video field count;
in the video thread, comparing the sync value from the audio thread with the actual video field count andsaid controlling step in the video thread synchronizing the playback of the audio fields and video fields by continuing the processing of video fields until the actual video field count matches the sync value.
1 Assignment
0 Petitions
Accused Products
Abstract
A synchronization process in an application program records audio fields with video synchronization counts, and plays back the audio and video fields in synchronism by tracking the video fields against the video sync counts in the audio fields. The video sync counts correspond to the number of video field processed when the audio field is processed. During recording of audio and video fields for the multimedia presentation, the video fields are counted. The video field count is appended to and recorded with each audio field. During playback, the system compares the count of video fields displayed against the video field count appended to the audio field being presented. If the counts are different, the system either skips video fields, or repeats video fields to bring the video fields into synchronism with the audio fields.
296 Citations
13 Claims
-
1. In a computing system running a multi-threaded audio/visual application program, a synchronization method embedded in the application program for synchronizing an audio thread with a video thread in the application program, said audio and video threads processing respectively audio fields and video fields for playback through audio and video adapters attached to the computing system, said method comprising the computer implemented steps of:
-
storing the video fields, the audio fields, and a sync count with each audio field, each audio field sync count identifying the video field that the audio field is to be in synchronism with during playback; in the audio thread, controlling the processing of each audio field stored in the system and sending a sync flag and the sync count as a sync value to the video thread; in the video thread, controlling the processing of each video field stored in the system and counting the video fields as they are processed to provide an actual video field count; in the video thread, comparing the sync value from the audio thread with the actual video field count and said controlling step in the video thread synchronizing the playback of the audio fields and video fields by continuing the processing of video fields until the actual video field count matches the sync value. - View Dependent Claims (2, 3, 4)
-
-
5. In a computing system for generating audio/visual presentations, an apparatus for synchronizing the playback of video data fields with audio data fields, said computing system having a processor, storage devices, an audio adapter with an audio device for playing back audio fields, and a video adapter with a video device for playing back video fields, said apparatus being driven by an audio/visual computer program running on the computing system and said apparatus comprising:
-
first means for getting and saving a sequence of video fields in the computing system for subsequent playback in an audio/visual presentation; second means for retrieving an audio field at the same time said first means is getting and saving video fields, said audio field to accompany the sequence of video fields during the playback of the audio/visual presentation; third means for counting each video field, as the video field is stored by said second means and for sending a sync count to said second means as each video field is stored by said first means; fourth means responsive to the sync count from said third means for appending the sync count to the audio field retrieved by said second means and for saving the audio field with the appended sync count in the computing system for subsequent playback with the sequence of audio fields in the audio/visual presentation; audio sending means for sending a sequence of audio fields stored in the system to the audio adapter for playback; video sending means for sending the sequence of video fields stored in the system to the video adapter for playback; means for synchronously starting said audio sending means and said video sending means; means for counting the video fields as each video field is processed at the video adapter for playback and providing an actual count of processed video fields; said audio adapter providing an audio completed signal after each audio field has been processed by the adapter; means responsive to the audio completed signal for comparing the sync count of the processed audio field with the actual count from said counting means of the processed video field; and means for synchronizing the playback of the audio fields and video fields based on a comparison of the sync count of the processed audio field with the actual count. - View Dependent Claims (6, 7, 8)
-
-
9. In a computing system for generating audio/visual presentations, an audio/visual-synchronizer for synchronizing the playback of video data fields with audio data fields, said computing system having a processor, storage devices, an audio adapter with audio device for playing back audio fields, and a video adapter with video device for playing back video fields, and said synchronizer comprising:
-
the processor operating with said storage devices for synchronously recording said video fields and said audio fields and appending to each audio field a sync count equal to a video field count, said video field count is equal to the number of video fields recorded when said processor records each video field at a storage device; the processor initiating an audio/visual presentation by operating with the storage devices and the audio and video adapters to retrieve concurrently a sequence of audio fields with appended sync counts for the audio adapter and a sequence of video fields for the video adapter; the audio adapter processing for presentation through the audio device each audio field retrieved by the processor; the video adapter processing for presentation through the audio device each video field retrieved by the processor; the video adapter providing a video completed signal after each video field has been processed by the video adapter; the processor incrementing an actual count in response to each video completed signal; the audio adapter providing an audio completed signal after each audio field has been processed by the audio adapter; the processor responsive to the audio completed signal for comparing the sync count of the processed audio field with the actual count of the processed video field; and the processor synchronizing the retrieval of the audio fields and video fields for processing at the audio adapter and video adapter at each occurrence of the audio completed signal. - View Dependent Claims (10, 11, 12, 13)
-
Specification