[package]
title = "Kit Audio Recorder"
category = "Audio"
feature = true
version = "0.1.0"
description = "An audio recorder API which is available from python and C++"
detailedDescription = """This is a simple interface that can be used to record
audio to file or send recorded audio to a callback for generic audio recording
tasks.
This recorder can achieve a relatively low latency (e.g. 20ms).

This API is available in python and C++.
See omni.kit.window.audiorecorder for an example use of this API.
"""
authors = ["NVIDIA"]
keywords = ["audio", "capture", "recording"]

[dependencies]
"carb.audio" = {}
"omni.usd.libs" = {}
"omni.usd.schema.semantics" = {}
"omni.usd.schema.audio" = {}
"omni.kit.audiodeviceenum" = {}

[[native.plugin]]
path = "bin/*.plugin"

[[python.module]]
name = "omni.audiorecorder"

[[test]]
args = [
    "--/audio/deviceBackend=null"
]

dependencies = [
    "omni.usd",
    "omni.kit.test_helpers_gfx",
]

stdoutFailPatterns.exclude = [
    "*failed to create an encoder state*",
    "*failed to initialize the output stream*",
    "*recording is already in progress*",
    "*no supported conversion path from ePcmFloat (4) to eRaw (10)*",
]

# uncomment and re-open OM-50069 if it breaks again
#pythonTests.unreliable = [
#    "*test_callback_recording", # OM-50069
#]

