On this page:
racket-audio
9.1

racket-audio🔗ℹ

    1 Introduction racket-audio

      1.1 APIs for normal users

      1.2 Lower-level modules for geeks

    2 Audio Player

      2.1 Creating a player

      2.2 Basic playback

      2.3 Position, volume, and buffering

      2.4 State snapshots

      2.5 Events and callbacks

      2.6 Example

    3 audio-sniffer

      3.1 Overview

      3.2 Formats

      3.3 API

      3.4 Architecture

      3.5 Detection Details

      3.6 Why not use FFmpeg?

    4 TagLib Metadata

      4.1 Reading metadata

      4.2 Common tag fields

      4.3 Audio properties

      4.4 Generic properties

      4.5 Embedded pictures

      4.6 Picture values

      4.7 Converting to a hash

      4.8 Example

      4.9 Implementation notes

    5 Playback Test Program

      5.1 Purpose

      5.2 Selecting the test mode

      5.3 Queue setup

      5.4 Formatting state output

      5.5 State callback

      5.6 EOF callback and queue advancement

      5.7 Creating the player

      5.8 Starting the test

      5.9 Integration pattern

    6 Placed Audio Player

      6.1 Interface

      6.2 Overall state model

      6.3 Command protocol

      6.4 Worker and decoder lifecycle

      6.5 Audio output and buffering

      6.6 Pause, seek, and volume

      6.7 State snapshots and events

      6.8 Stop, cleanup, and quit

      6.9 Running in a place or in a thread

    7 audio-decoder

      7.1 Reader registration

      7.2 Audio handles

      7.3 Known extensions and validation

      7.4 Opening and callbacks

      7.5 Reading, seeking, and stopping

      7.6 Using custom decoders

    8 Asynchronous libao playback in Racket

      8.1 Basic example

      8.2 Playback handles

      8.3 Buffer descriptions

      8.4 Queuing audio

      8.5 Playback state

      8.6 Volume and output format

      8.7 Implementation strategy

      8.8 Compatibility notes

    9 flac-decoder

      9.1 Procedures

      9.2 Diagnostic bindings

      9.3 Notes

    10 mp3-decoder

      10.1 Validation

      10.2 Opening

      10.3 Reading

      10.4 Seeking

      10.5 Stopping

      10.6 Notes

    11 FFmpeg Decoder

      11.1 Stream Information

      11.2 Decoding Model

      11.3 Notes

    12 libao

      12.1 Audio handles

      12.2 Validation predicates

      12.3 Opening and closing

      12.4 Playback

      12.5 Playback state

      12.6 Volume control

      12.7 Notes

    13 FFmpeg Decoder Definitions

      13.1 Layering

      13.2 Implementation strategy

        13.2.1 Versioned C struct layouts

        13.2.2 Sequential failure handling

      13.3 Decoder instances

      13.4 Audio stream information

      13.5 Decoding

      13.6 Decoded buffers

      13.7 FFmpeg version information

      13.8 Use through the decoder frontend

      13.9 Example

    14 FFmpeg FFI

      14.1 Command Interface

      14.2 Format Callback

      14.3 Reading Audio

      14.4 Seeking

      14.5 Metadata

      14.6 Native Library

      14.7 Errors

    Index