This topic contains the following sections.
This topic describes the synchronization models that specify how a camera and a frame grabber coordinate timing signals to acquire images.
If the video format you are using is described in a Camera Configuration File (CCF), the synchronization model is specified in the name of the video format. These video format names end with the letters "CCF."
For example, in the video format name "Sony XC-ST50 640x240 IntDrv CCF", the "IntDrv" indicates that the video format always uses the internal drive sync model.
Some frame grabbers, such as the MVS-8100L, cannot use CCF video formats. The video formats supported on those frame grabbers do not include synchronization information. However, you can use the ICogAcqSync interface to change the synchronization model except on the MVS-8100L.
There are two basic types of synchronization: internal sync, in which the frame grabber or video processor supplies timing information to the camera, and external sync, in which the camera provides timing information to the frame grabber or video processor.
Synchronization depends on two timing signals: horizontal timing signals, which occur after each line of video data, and vertical timing signals, which occur after each field of video data. The following figure illustrates these two timing signals:

Note: An actual video signal contains more lines of video per field than are shown in the figure.
There are two types of vertical timing signals: vertical drive, in which the falling edge generally occurs at the beginning of vertical blanking period, and vertical sync, in which the falling edge generally occurs 3 lines after the beginning of vertical blanking period at the beginning of the composite vertical sync pulse. The following figure shows the difference between the vertical drive signal and the vertical sync signal:

In general, using a synchronization model that specifies the wrong type of vertical timing signal will result in a 3-line shift for each field (6 lines per frame) and may result in 3 black lines at the top or bottom of each acquired frame.
While there are several synchronization models, the cameras and frame grabbers may support only a few of them. The CCF-based camera formats describe only those combinations that are supported. This section, however, describes all of the synchronization models that VisionPro could theoretically support. The section CCF Synchronization Models later in this topic describes the synchronization models supported by CCF-based formats.
Note: The column labeled Constant in the following tables refers to constants defined in CogAcqSyncModelConstants.
For internal sync, the frame grabber or video processor can provide timing information to the camera. Multiple cameras connected to the same frame grabber are kept synchronized; switching between them does not introduce any delays.
| Sync Model | Constant | Description |
| Internal Composite | CogAcqSyncModelConstants | The frame grabber generates a composite signal containing both the horizontal sync and vertical sync signals. This composite signal is sent to the camera on the H-wire. |
| Internal Drive | CogAcqSyncModelConstants | The frame grabber generates separate horizontal and vertical drive signals on the H-wire and V-wire. |
For external sync the camera can provide timing information to the frame grabber.
| Sync Model | Constant | Description |
| External PLL Composite | CogAcqSyncModelConstants | The frame grabber uses timing information sent from the camera as a composite video signal. The pixel clock is derived with the phase locked loop using this H and V timing derived from the composite video. This synchronization model is appropriate when the camera cannot accept synchronization from the frame grabber and the camera does not produce separate horizontal and vertical timing signals. Multiple cameras connected to the same frame grabber will not be kept synchronized; switching between cameras may take a significant amount of time, since synchronization must be reestablished each time. This synchronization delay may be as small as 50 milliseconds or as large as 5 seconds, depending on the specific camera and platform that you are using. Images that you acquire before the frame grabber has resynchronized to the camera may be corrupted or blank. Keep in mind that there is no way for your program to determine when the frame grabber has resynchronized. You should experiment with your actual acquisition configuration to determine an appropriate delay value to insert when switching between PLL-synchronized cameras. In general, if your application requires consistent latency when switching between cameras, you should use another synchronization model. |
| External PLL Sync | CogAcqSyncModelConstants | The frame grabber uses separate horizontal sync and vertical sync signals sent from the camera on the H-wire and V-wire. The pixel clock is derived using with the phase locked loop using these separate signals. |
| External PLL Drive | CogAcqSyncModelConstants | The frame grabber will use separate horizontal drive and vertical drive signals sent from the camera on the H-wire and V-wire. The pixel clock is derived using with the phase locked loop using these separate signals. |
With external sync the frame grabber can make use of a separate pixel clock signal from the camera if the camera supports one. The pixel clock specifies the rate at which pixel data is transferred from the camera to the frame grabber. This model may not produce square pixels in the acquired image, depending on the pixel clock that comes from the camera.
| Sync Model | Constant | Description |
| External Pixel Sync | CogAcqSyncModelConstants | This sync model is essential the same as CogAcqSyncModelConstants except that the pixel clock is passed from the camera to the frame grabber instead of the frame grabber using a PLL to derive the pixel clock. |
| External Pixel Drive | CogAcqSyncModelConstants | This sync model is essential the same as CogAcqSyncModelConstants, except that the pixel clock is passed from the camera to the frame grabber instead of the frame grabber using a PLL to derive the pixel clock |
The following table describes the synchronization models available with CCF-based video formats. The column labeled CCF Sync Substring is the part of the CCF video format name that describes the synchronization model. For example, in the video format name "Sony XC-ST50 640x240 IntDrv CCF", the substring "IntDrv" describes the synchronization model.
| CCF Sync Substring | Description |
| IntDrv | Internal drive. Corresponds to CogAcqSyncModelConstants. The frame grabber generates separate horizontal and vertical drive signals on the H-wire and V-wire. |
| ExtPLLCo | External PLL Composite. Corresponds to CogAcqSyncModelConstants. The frame grabber uses timing information sent from the camera as a composite video signal. The pixel clock is derived with the phase locked loop using this H and V timing derived from the composite video. |
| ExtPixClk | External PLL Composite. Corresponds to CogAcqSyncModelConstants or CogAcqSyncModelConstants depending on the camera. The signal is provided by a pixel clock on the camera. |