# Kawa-compatible configuration file with extensions [api] # # The HTTP port the MeteorLight API listens on. port=4040 # The HTTP bind address API will listen on. host="127.0.0.1" [queue] # # An HTTP GET is sent to this URL when MeteorLight's queue is empty and it needs a new # random track to play. The expected response is an arbitrary JSON blob that # MeteorLight stores in its queue. At a minimum, it must include the "path" property: # # { # "path": "/path/to/audio/file" # } # # The path is the path to an audio file on the filesystem you want MeteorLight to play. # Additionally, the "title", "artist" and "art" properties can be included to be used as metadata. random_song_api="http://localhost:8012/api/random" # # An HTTP POST is issued to this URL when MeteorLight starts playing a track. The body # will be identical to the JSON blob in the queue. np="http://localhost:8012/api/np" # # An HTTP POST is issued to this URL when MeteorLight fetches a random track. The body # will be identical to the JSON blob in memory. # Can be left empty to not send nr events nr="http://localhost:8012/api/nr" # # When no tracks are available for whatever reason (such as external service # outages), this track will be played. fallback="/tmp/in.flac" # Length of buffer to maintain in KiB (not implemented) # buffer_len=4096 # Duration in seconds of buffer to maintain. Set 0 for automatic mode depending on requesting client. # Maximum 10 seconds. # Do note buffer is counted from end of frame, not start, for removal purposes. This depends on format and can be a second or so at times. buffer_duration=0 [radio] # # The port to stream actual audio on. MeteorLight will listen on localhost. port=8001 # Name of the stream. name="my radio" # # A list of streams to make available at [radio.port]/*(mount) follows. The # following properties are available: # # mount: the HTTP address to serve the stream from # container: the container format to use (ogg, flac, aac, or mp3). See Kirika's supported format list. # codec: the audio codec to use (opus, flac, aac, do not specify for mp3 streams) # bitrate: the desired bitrate of the stream in Kb/s, if not specified (or 0) an appropriate # bitrate will be automatically selected based on the container/codec # MeteorLight extension: bitrate can be a string (for example, v0/v1/v2/v3 on MP3). codec can also be he-aacv2. No vorbis support [[streams]] mount="stream128.mp3" container="mp3" bitrate=128 [[streams]] mount="stream192.mp3" container="mp3" bitrate=192 [[streams]] mount="stream128.aac" container="aac" bitrate=128 [[streams]] mount="stream128.opus" container="ogg" codec="opus" bitrate=128 [[streams]] mount="stream192.opus" container="ogg" codec="opus" bitrate=192 [[streams]] mount="stream256.opus" container="ogg" codec="opus" bitrate=256 [[streams]] mount="stream.flac" container="flac"