Fix multiple streams from precoded file
This commit is contained in:
@@ -58,25 +58,26 @@ class AuracastBigConfig(BaseModel):
|
|||||||
class AuracastBigConfigDeu(AuracastBigConfig):
|
class AuracastBigConfigDeu(AuracastBigConfig):
|
||||||
id: int = 12
|
id: int = 12
|
||||||
random_address: str = 'F1:F1:F2:F3:F4:F5'
|
random_address: str = 'F1:F1:F2:F3:F4:F5'
|
||||||
name: str = 'Broadcast0'
|
name: str = 'Hörsaal A'
|
||||||
language: str ='deu'
|
language: str ='deu'
|
||||||
program_info: str = 'Announcements German'
|
program_info: str = 'Vorlesung DE'
|
||||||
audio_source: str = 'file:./testdata/announcement_de.wav'
|
audio_source: str = 'file:./testdata/announcement_de.wav'
|
||||||
|
|
||||||
class AuracastBigConfigEng(AuracastBigConfig):
|
class AuracastBigConfigEng(AuracastBigConfig):
|
||||||
id: int = 123
|
id: int = 123
|
||||||
random_address: str = 'F2:F1:F2:F3:F4:F5'
|
random_address: str = 'F2:F1:F2:F3:F4:F5'
|
||||||
name: str = 'Broadcast1'
|
name: str = 'Lecture Hall A'
|
||||||
language: str ='eng'
|
language: str ='eng'
|
||||||
program_info: str = 'Announcements English'
|
program_info: str = 'Lecture EN'
|
||||||
audio_source: str = 'file:./testdata/announcement_en.wav'
|
audio_source: str = 'file:./testdata/announcement_en.wav'
|
||||||
|
|
||||||
class AuracastBigConfigFra(AuracastBigConfig):
|
class AuracastBigConfigFra(AuracastBigConfig):
|
||||||
id: int = 1234
|
id: int = 1234
|
||||||
random_address: str = 'F3:F1:F2:F3:F4:F5'
|
random_address: str = 'F3:F1:F2:F3:F4:F5'
|
||||||
name: str = 'Broadcast2'
|
# French
|
||||||
|
name: str = 'Auditoire A'
|
||||||
language: str ='fra'
|
language: str ='fra'
|
||||||
program_info: str = 'Announcements French'
|
program_info: str = 'Auditoire FR'
|
||||||
audio_source: str = 'file:./testdata/announcement_fr.wav'
|
audio_source: str = 'file:./testdata/announcement_fr.wav'
|
||||||
|
|
||||||
class AuracastBigConfigSpa(AuracastBigConfig):
|
class AuracastBigConfigSpa(AuracastBigConfig):
|
||||||
|
|||||||
@@ -395,6 +395,7 @@ class Streamer():
|
|||||||
# precoded lc3 from ram
|
# precoded lc3 from ram
|
||||||
elif isinstance(big_config[i].audio_source, bytes):
|
elif isinstance(big_config[i].audio_source, bytes):
|
||||||
big['precoded'] = True
|
big['precoded'] = True
|
||||||
|
big['lc3_bytes_per_frame'] = global_config.octets_per_frame
|
||||||
|
|
||||||
lc3_frames = iter(big_config[i].audio_source)
|
lc3_frames = iter(big_config[i].audio_source)
|
||||||
|
|
||||||
@@ -405,6 +406,7 @@ class Streamer():
|
|||||||
# precoded lc3 file
|
# precoded lc3 file
|
||||||
elif big_config[i].audio_source.endswith('.lc3'):
|
elif big_config[i].audio_source.endswith('.lc3'):
|
||||||
big['precoded'] = True
|
big['precoded'] = True
|
||||||
|
big['lc3_bytes_per_frame'] = global_config.octets_per_frame
|
||||||
filename = big_config[i].audio_source.replace('file:', '')
|
filename = big_config[i].audio_source.replace('file:', '')
|
||||||
|
|
||||||
lc3_bytes = read_lc3_file(filename)
|
lc3_bytes = read_lc3_file(filename)
|
||||||
@@ -417,6 +419,7 @@ class Streamer():
|
|||||||
# use wav files and code them entirely before streaming
|
# use wav files and code them entirely before streaming
|
||||||
elif big_config[i].precode_wav and big_config[i].audio_source.endswith('.wav'):
|
elif big_config[i].precode_wav and big_config[i].audio_source.endswith('.wav'):
|
||||||
big['precoded'] = True
|
big['precoded'] = True
|
||||||
|
big['lc3_bytes_per_frame'] = global_config.octets_per_frame
|
||||||
|
|
||||||
audio_input = await audio_io.create_audio_input(audio_source, input_format)
|
audio_input = await audio_io.create_audio_input(audio_source, input_format)
|
||||||
audio_input.rewind = False
|
audio_input.rewind = False
|
||||||
@@ -634,12 +637,11 @@ if __name__ == "__main__":
|
|||||||
)
|
)
|
||||||
os.chdir(os.path.dirname(__file__))
|
os.chdir(os.path.dirname(__file__))
|
||||||
|
|
||||||
|
|
||||||
config = auracast_config.AuracastConfigGroup(
|
config = auracast_config.AuracastConfigGroup(
|
||||||
bigs = [
|
bigs = [
|
||||||
auracast_config.AuracastBigConfigDeu(),
|
auracast_config.AuracastBigConfigDeu(),
|
||||||
#auracast_config.AuracastBigConfigEng(),
|
auracast_config.AuracastBigConfigEng(),
|
||||||
#auracast_config.AuracastBigConfigFra(),
|
auracast_config.AuracastBigConfigFra(),
|
||||||
#auracast_config.AuracastBigConfigEs(),
|
#auracast_config.AuracastBigConfigEs(),
|
||||||
#auracast_config.AuracastBigConfigIt(),
|
#auracast_config.AuracastBigConfigIt(),
|
||||||
]
|
]
|
||||||
@@ -653,8 +655,8 @@ if __name__ == "__main__":
|
|||||||
#config.transport='serial:/dev/serial/by-id/usb-SEGGER_J-Link_001057705357-if02,1000000,rtscts' # transport for nrf54l15dk
|
#config.transport='serial:/dev/serial/by-id/usb-SEGGER_J-Link_001057705357-if02,1000000,rtscts' # transport for nrf54l15dk
|
||||||
#config.transport='serial:/dev/serial/by-id/usb-ZEPHYR_Zephyr_HCI_UART_sample_95A087EADB030B24-if00,115200,rtscts' #nrf52dongle hci_uart usb cdc
|
#config.transport='serial:/dev/serial/by-id/usb-ZEPHYR_Zephyr_HCI_UART_sample_95A087EADB030B24-if00,115200,rtscts' #nrf52dongle hci_uart usb cdc
|
||||||
#config.transport='usb:2fe3:000b' #nrf52dongle hci_usb # TODO: iso packet over usb not supported
|
#config.transport='usb:2fe3:000b' #nrf52dongle hci_usb # TODO: iso packet over usb not supported
|
||||||
config.transport= 'auto'
|
# config.transport= 'auto'
|
||||||
#config.transport='serial:/dev/ttyAMA2,1000000,rtscts' # transport for raspberry pi
|
config.transport='serial:/dev/ttyAMA3,1000000,rtscts' # transport for raspberry pi
|
||||||
|
|
||||||
|
|
||||||
for big in config.bigs: # TODO: encrypted streams are not working
|
for big in config.bigs: # TODO: encrypted streams are not working
|
||||||
|
|||||||
Reference in New Issue
Block a user