import rtc_plugins import time import sounddevice as sd import numpy as np import mmap import os from ctypes import c_int16 import struct srcUserId = "srcUser12" destUserId = "destUser12" srcDisplayName = "srcDisplayName12" destDisplayName = "destDisplayName12" srcRoomId = "srcRoom12" #destRoomId = "destRoomId12" destRoomId = srcRoomId srcChannelIndex = 46 destChannelIndex = 47 def my_callback_r(shmName, dataSize, dataCount, sampleRate, numChannels, channelIndex): print(f"my_callback_r, dataSize:{dataSize}, dataCount:{dataCount}, sampleRate:{sampleRate}, numChannels:{numChannels}, channelIndex:{channelIndex}") print(f"data:{shmName}") print("after my_callback_r") ret = rtc_plugins.init(destUserId, destDisplayName, destRoomId, my_callback_r) if ret != 0: print(f"init fail, ret:{ret}") exit(1) ret = rtc_plugins.initRecv(destRoomId, srcUserId, destChannelIndex) if ret != 0: print(f"initRecv fail, ret:{ret}") exit(1) #ret = rtc_plugins.initSend(destRoomId, srcRoomId, srcChannelIndex, 1) #if ret != 0: # print(f"initSend fail, ret:{ret}") # exit(1) sampleRate = 16000 while True: frame = rtc_plugins.getListData() sd.play(frame, sampleRate) sd.wait() print(f"get frame:{frame}") time.sleep(0.005)