Retrieves the record operation status.
AG
CG
DWORD adiGetRecordStatus ( CTAHD ctahd, ADI_RECORD_STATUS *info, unsigned size)
|
Argument |
Description |
|
ctahd |
Context handle returned by ctaCreateContext or ctaAttachContext. |
|
info |
Pointer to the ADI_RECORD_STATUS structure, as shown: typedef struct Refer to the Details section for field descriptions. |
|
size |
Amount of memory available at info to receive the ADI_RECORD_STATUS. |
|
Return value |
Description |
|
SUCCESS |
|
|
CTAERR_BAD_ARGUMENT |
info is NULL. |
|
CTAERR_BAD_SIZE |
size is smaller than the size of DWORD. |
|
CTAERR_INVALID_CTAHD |
Context handle is invalid. |
|
CTAERR_INVALID_STATE |
Function not valid in the current port state. |
|
CTAERR_SVR_COMM |
Server communication error. |
Use adiGetRecordStatus to retrieve status information about the active or most recently completed voice record operation for the specified context.
Up to size bytes of the ADI_RECORD_STATUS structure are copied to the address pointed to by info. If size is greater than or equal to the size of ADI_RECORD_STATUS, the complete structure is copied. The number of bytes copied is returned in the ADI_RECORD_STATUS size field.
adiGetRecordStatus can be issued while actively recording. If there is no active record operation, the status information pertains to the most recently completed instance.
The ADI_RECORD_STATUS structure contains the following fields:
|
Field |
Description |
|---|---|
|
size |
Number of bytes copied to info. |
|
reason |
Termination condition for the last ADIEVN_RECORD_DONE. This field is 0 if the record operation is active, or if it has not been started since the context was last opened. |
|
buffercount |
Number of buffers submitted. |
|
framecount |
Number of voice frames submitted. |
|
totalbytes |
Number of bytes submitted by the application. |
|
buffer |
Last buffer pointer submitted. |
|
bytecount |
Size of the last buffer submitted. |
|
bytesrecorded |
Total number of bytes received. |
|
timestarted |
Timestamp for the start of the record operation. Refer to adiGetTimeStamp. |
|
underrun |
Total number of underruns during the record instance. |
adiRecordAsync, adiRecordToMemory, adiStartRecording, adiStopRecording
void myShowRecordStatus( CTAHD ctahd )
{
ADI_RECORD_STATUS recordstatus;
adiGetRecordStatus( ctahd, &recordstatus, sizeof recordstatus );
/* A termination condition of 0 indicates either record in progress,
* or none yet started in this CTA context.
*/
printf( "Termination condition=%x, bytes recorded=%d\n",recordstatus.reason, recordstatus.bytesrecorded );
}