add bap testcases for full qualification
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-20-C: Config Broadcast, LC3 16_2_2
|
||||
|
||||
Configuration: 16kHz, 40 octets/frame, stereo (2 BISes), QoS _2 variant
|
||||
"""
|
||||
|
||||
import logging
|
||||
@@ -15,26 +17,22 @@ if __name__ == "__main__":
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
# Ensure relative audio paths like in AuracastBigConfig work (./auracast/...) from src/auracast/
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../../../auracast"))
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
# Start from default global config
|
||||
config = AuracastGlobalConfig()
|
||||
|
||||
# Use same QoS profile as multicast main
|
||||
# _2 variant uses different QoS (RTN=2, higher latency)
|
||||
config.qos_config = AuracastQosDefault()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# Transport similar to multicast main; adjust if needed for your setup
|
||||
# config.transport = "auto" # let multicast auto-detect
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts" # Raspberry Pi default
|
||||
# 16_2_2: 16kHz, 40 octets/frame
|
||||
config.auracast_sampling_rate_hz = 16000
|
||||
config.octets_per_frame = 40
|
||||
|
||||
# Stereo BIG with 2 BISes (FRONT_LEFT + FRONT_RIGHT)
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo: 2 BISes
|
||||
big.name = 'Broadcast'
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
42
src/qualification/BAP/test_bap_bsrc_scc_bv22c.py
Normal file
42
src/qualification/BAP/test_bap_bsrc_scc_bv22c.py
Normal file
@@ -0,0 +1,42 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-22-C: Config Broadcast, LC3 24_2_2
|
||||
|
||||
Configuration: 24kHz, 60 octets/frame, stereo (2 BISes), QoS _2 variant
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosDefault
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
# _2 variant uses different QoS (RTN=2, higher latency)
|
||||
config.qos_config = AuracastQosDefault()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 24_2_2: 24kHz, 60 octets/frame
|
||||
config.auracast_sampling_rate_hz = 24000
|
||||
config.octets_per_frame = 60
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
42
src/qualification/BAP/test_bap_bsrc_scc_bv28c.py
Normal file
42
src/qualification/BAP/test_bap_bsrc_scc_bv28c.py
Normal file
@@ -0,0 +1,42 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-28-C: Config Broadcast, LC3 48_2_2
|
||||
|
||||
Configuration: 48kHz, 100 octets/frame, stereo (2 BISes), QoS _2 variant
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosDefault
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
# _2 variant uses different QoS (RTN=2, higher latency)
|
||||
config.qos_config = AuracastQosDefault()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_2_2: 48kHz, 100 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 100
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
42
src/qualification/BAP/test_bap_bsrc_scc_bv30c.py
Normal file
42
src/qualification/BAP/test_bap_bsrc_scc_bv30c.py
Normal file
@@ -0,0 +1,42 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-30-C: Config Broadcast, LC3 48_4_2
|
||||
|
||||
Configuration: 48kHz, 120 octets/frame, stereo (2 BISes), QoS _2 variant
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosDefault
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
# _2 variant uses different QoS (RTN=2, higher latency)
|
||||
config.qos_config = AuracastQosDefault()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_4_2: 48kHz, 120 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 120
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
42
src/qualification/BAP/test_bap_bsrc_scc_bv32c.py
Normal file
42
src/qualification/BAP/test_bap_bsrc_scc_bv32c.py
Normal file
@@ -0,0 +1,42 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-32-C: Config Broadcast, LC3 48_6_2
|
||||
|
||||
Configuration: 48kHz, 155 octets/frame, stereo (2 BISes), QoS _2 variant
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosDefault
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
# _2 variant uses different QoS (RTN=2, higher latency)
|
||||
config.qos_config = AuracastQosDefault()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_6_2: 48kHz, 155 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 155
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
45
src/qualification/BAP/test_bap_bsrc_scc_bv38c.py
Normal file
45
src/qualification/BAP/test_bap_bsrc_scc_bv38c.py
Normal file
@@ -0,0 +1,45 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-38-C: Multi BIG Configuration
|
||||
|
||||
Configuration: Two BIGs (id=12 and id=13), stereo (2 BISes each)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# First BIG
|
||||
big1 = AuracastBigConfig()
|
||||
big1.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big1.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big1.id = 12
|
||||
big1.num_bis = 2 # stereo
|
||||
|
||||
# Second BIG
|
||||
big2 = AuracastBigConfig()
|
||||
big2.random_address = "F1:F1:F2:F3:F4:F6"
|
||||
big2.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big2.id = 13
|
||||
big2.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big1, big2],
|
||||
)
|
||||
)
|
||||
@@ -16,7 +16,7 @@ if __name__ == "__main__":
|
||||
)
|
||||
|
||||
# Ensure relative audio paths like in AuracastBigConfig work (./auracast/...) from src/auracast/
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../../../auracast"))
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
# Start from default global config
|
||||
config = AuracastGlobalConfig()
|
||||
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv06c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv06c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-06-C and BAP/BSRC/STR/BV-06-C: Config Broadcast, LC3 24_2_1
|
||||
|
||||
Configuration: 24kHz, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 24_2_1: 24kHz
|
||||
config.auracast_sampling_rate_hz = 24000
|
||||
config.octets_per_frame = 60
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv12c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv12c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-12-C and BAP/BSRC/STR/BV-12-C: Config Broadcast, LC3 48_2_1
|
||||
|
||||
Configuration: 48kHz, 100 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_2_1: 48kHz, 100 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 100
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv14c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv14c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-14-C and BAP/BSRC/STR/BV-14-C: Config Broadcast, LC3 48_4_1
|
||||
|
||||
Configuration: 48kHz, 120 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_4_1: 48kHz, 120 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 120
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv16c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_scc_str_bv16c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/SCC/BV-16-C and BAP/BSRC/STR/BV-16-C: Config Broadcast, LC3 48_6_1
|
||||
|
||||
Configuration: 48kHz, 155 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_6_1: 48kHz, 155 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 155
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_str_bv21c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_str_bv21c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/STR/BV-21-C: BSRC, Multiple BISes, LC3 16_2
|
||||
|
||||
Configuration: 16kHz, 40 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 16_2: 16kHz, 40 octets/frame
|
||||
config.auracast_sampling_rate_hz = 16000
|
||||
config.octets_per_frame = 40
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo (multiple BISes)
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_str_bv23c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_str_bv23c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/STR/BV-23-C: BSRC, Multiple BISes, LC3 24_2
|
||||
|
||||
Configuration: 24kHz, 60 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 24_2: 24kHz, 60 octets/frame
|
||||
config.auracast_sampling_rate_hz = 24000
|
||||
config.octets_per_frame = 60
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo (multiple BISes)
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_str_bv29c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_str_bv29c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/STR/BV-29-C: BSRC, Multiple BISes, LC3 48_2
|
||||
|
||||
Configuration: 48kHz, 100 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_2: 48kHz, 100 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 100
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo (multiple BISes)
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_str_bv31c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_str_bv31c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/STR/BV-31-C: BSRC, Multiple BISes, LC3 48_4
|
||||
|
||||
Configuration: 48kHz, 120 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_4: 48kHz, 120 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 120
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo (multiple BISes)
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
41
src/qualification/BAP/test_bap_bsrc_str_bv33c.py
Normal file
41
src/qualification/BAP/test_bap_bsrc_str_bv33c.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
BAP/BSRC/STR/BV-33-C: BSRC, Multiple BISes, LC3 48_6
|
||||
|
||||
Configuration: 48kHz, 155 octets/frame, stereo (2 BISes)
|
||||
"""
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
from auracast.auracast_config import AuracastGlobalConfig, AuracastBigConfig, AuracastQosFast
|
||||
from auracast.multicast import broadcast, run_async
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(
|
||||
level=os.environ.get("LOG_LEVEL", logging.INFO),
|
||||
format="%(module)s.py:%(lineno)d %(levelname)s: %(message)s",
|
||||
)
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(__file__), "../../auracast"))
|
||||
|
||||
config = AuracastGlobalConfig()
|
||||
config.qos_config = AuracastQosFast()
|
||||
config.transport = "serial:/dev/ttyAMA3,1000000,rtscts"
|
||||
|
||||
# 48_6: 48kHz, 155 octets/frame
|
||||
config.auracast_sampling_rate_hz = 48000
|
||||
config.octets_per_frame = 155
|
||||
|
||||
big = AuracastBigConfig()
|
||||
big.random_address = "F1:F1:F2:F3:F4:F5"
|
||||
big.audio_source = "file:./testdata/announcement_en_stereo.wav"
|
||||
big.id = 12
|
||||
big.num_bis = 2 # stereo (multiple BISes)
|
||||
|
||||
run_async(
|
||||
broadcast(
|
||||
config,
|
||||
[big],
|
||||
)
|
||||
)
|
||||
Reference in New Issue
Block a user