A method and apparatus for interfacing a device driver in real time applications are provided. On input, the device driver is probed to determine a data sample block size supported by the device driver. The device driver delivers data samples to a buffer at each interrupt. The buffer is accessed to determine the presence of data in at least one buffer entry, or block. At each such access, a first counter is incremented to point to a next buffer entry to be accessed. One or more buffer entries are filled at each interrupt, with any data samples not sufficient to fill an entry held by the device driver until a subsequent interrupt. A second counter is incremented by the number of entries filled by the device driver. The size of each block in the buffer is incremented until the number of data samples held by the device driver between each interrupt corresponds to the size of the block, wherein each of the first and second counters increment by one, on each access to the buffer. On output, a display cursor is synchronized with an audio signal being played by storing, in a buffer, a frame number associated with each block of data samples sent to the device driver. A head pointer tracks each entry in the buffer as the frame number is stored. As each corresponding frame is played a tail pointer is incremented to point to the buffer entry containing the frame number of a next set of data samples to be played. If the position of the display cursor corresponds to a frame earlier than the position of the last frame output by the device driver, the position of the cursor is repeatedly updated until the cursor position coincides with the position of the last frame output by the device driver.

Um método e um instrumento para conectarar um excitador de dispositivo em aplicações reais do tempo são fornecidos. Na entrada, o excitador de dispositivo é sondado para determinar um tamanho de bloco da amostra dos dados suportado pelo excitador de dispositivo. O excitador de dispositivo entrega amostras dos dados a um amortecedor em cada interrupção. O amortecedor é alcançado para determinar a presença dos dados ao menos em uma entrada do amortecedor, ou o bloco. Em cada tal acesso, um primeiro contrário é incrementado para apontar a uma entrada seguinte do amortecedor a ser alcançada. Um ou os mais entrada do amortecedor é enchido em cada interrupção, com todas as amostras dos dados nao suficientes encher uma entrada prendida pelo excitador de dispositivo até uma interrupção subseqüente. Um segundo contrário é incrementado pelo número das entradas enchidas pelo excitador de dispositivo. O tamanho de cada bloco no amortecedor está incrementado até que o número das amostras dos dados prendidas pelo excitador de dispositivo entre cada interrupção corresponda ao tamanho do bloco, wherein cada uma do primeira e do segunda opõe o incremento por um, em cada acesso ao amortecedor. Na saída, um cursor da exposição é sincronizado com um sinal audio que está sendo jogado armazenar, em um amortecedor, por um número do frame associado com cada bloco das amostras dos dados emitidas ao excitador de dispositivo. Um ponteiro da cabeça segue cada entrada no amortecedor enquanto o número do frame é armazenado. Enquanto cada frame correspondente é jogado um ponteiro da cauda está incrementado para apontar à entrada do amortecedor que contem o número do frame de um jogo seguinte das amostras dos dados a ser jogadas. Se a posição do cursor da exposição corresponder a um frame mais cedo do que a posição do último frame output pelo excitador de dispositivo, a posição do cursor está atualizada repetidamente até que a posição do cursor coincida com a posição do último frame output pelo excitador de dispositivo.

 
Web www.patentalert.com

< (none)

< Apparatus for memory bus tuning and methods therefor

> System and method for providing dynamically alterable computer clusters for message routing

> (none)

~ 00054