jacket/examples/test_jacket.nim
Christopher Arndt 7e46bc3ed7 feat: turn on debug logging w/out -d:release
Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
2022-10-09 21:59:40 +02:00

31 lines
932 B
Nim

import std/logging
import jacket
var jclient: ClientTPtr
var status: cint
var log = newConsoleLogger(when defined(release): lvlInfo else: lvlDebug)
proc errorCb(msg: cstring) {.cdecl.} =
# Suppress verbose JACK error messges when server is not available by
# default. Pass ``lvlAll`` when creating the logger to enable them.
debug "JACK error: " & $msg
addHandler(log)
setErrorFunction(errorCb)
jclient = clientOpen("test_jacket", NullOption.ord, status.addr)
debug "Server status: " & $status
if jclient == nil:
error getJackStatusErrorString(status)
quit 1
echo("JACK version: ", getVersionString())
echo("Sample rate: ", jclient.getSampleRate)
echo("Buffer size: ", jclient.getBufferSize)
echo("DSP load: ", jclient.cpuLoad, "%")
echo("Server time: ", getTime())
echo("Client name: ", jclient.getClientName)
echo("RT enabled: ", if jclient.isRealtime > 0: "yes" else: "no")
discard jclient.clientClose