Hirdetés

Új hozzászólás Aktív témák

  • schawo

    titán

    válasz ROBOTER #396 üzenetére

    Jogos. Próbáltam rájönni, miért nem használnak állapot-visszajelzőket, de nem találtam rá még semmi kézzel fogható magyarázatot. A legközelebbi az XMOS (a legismertebb aszinkron audio usb chip gyártója) által adott infó, amiben az órajel driftre hivatkozik:
    These clocks will have subtly different frequencies, and the difference will vary slightly over time. Hence the average number of audio samples per frames will be slightly more or less than the expected rate. For example, in the case of our 96,000 Hz sample rate, the average number of samples may be 12.001.
    In order to ensure that the host sends the right amount of data, and not too much or too little, the host requests the current sample rate over an interrupt endpoint. Every few milliseconds the average sample rate over the last period is reported back as a 16.16 bit fixed point number. If the last period averaged out as 12.001 frames, then the value 0x000C0041 will be reported (65536 * 12.001).
    Given this average rate, the host can work out when to send an extra sample in a transfer; in this example 8 transfers each second will carry one extra sample. In addition to this, the host can use this value to synchronise itself with the audio device. This enables host applications such as a DVD player to keep the video in sync with the audio. If it didn't, the audio would slowly run ahead of the video, and after two hours the audio would be a second out.
    In order to keep a short feedback loop, the trick is to not buffer audio packets and feedback packets unnecessarily. Any additional buffering creates latency in the reporting, and this latency makes it more difficult to keep a smooth flow of traffic. This means that the low-level USB stack and the USB Audio stack should be tightly integrated, without buffering in between.

    [ Szerkesztve ]

    evDirect villanyautós töltőhálózat

Új hozzászólás Aktív témák