INNER CODE UNIT · C

buffer

tek256/astera · src/audio.c:365

    uint32_t buffer = song->buffers[i];
    float    buf_time =
        (float)((float)song->buffer_sizes[0] / song->info.sample_rate) * 1000.f;
    song->curr += buf_time;

    memset(ctx->pcm, 0, ctx->pcm_length * sizeof(uint16_t));
    uint32_t pcm_total_length = 0;

    for (uint16_t p = 0; p < song->packets_per_buffer; ++p) {
      uint32_t pcm_remaining = ctx->pcm_length - pcm_total_length;

      if (pcm_remaining < song->info.max_frame_size) {
        break;
      }

      if (pcm_remaining == 0) {
        break;
      }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…