I’m trying to send an audio stream to the streaming player. I’ve tried various iterations of the test_client.py code, but I’m getting the following error:
Error sending start marker: <_InactiveRpcError of RPC that terminated with:
status = StatusCode.UNKNOWN
details = “Exception iterating requests!”
debug_error_string = “None”
I’m testing with the provided demo_fullface_streaming scene.
I’ve even asked ChatGPT for help (lol) and it’s given up and points me to the gRPC server developer.
Hello
@Lgraync
! I’ve shared this post with the dev team for further assistance. In case it helps, here is a link to our documentation for the Audio Streaming Player extension.
I’m not a grpc export, but there’s an example code
D:\ov\lib\prod-audio2face-2022.2.0\exts\omni.audio2face.player\omni\audio2face\player\scripts\instances.py
find the
send_example_track(self):
around line 469
This is what A2F uses when you rightclick on the streaming audio player and try send example audio.
Have you tried it?
You can find this a2f.player folder on Extension Manager folder button
image
1065×238 18.9 KB
@esusantolim
thanks for the suggestion. Unfortunately, that example is sending an audio file (voice_male_p1_neutral.wav) to the player. I could convert my audio stream to a file and send the file like that, but I prefer to just pass the audio stream directly to the player.
I know it can be done, and the provided test_client.py also includes code that references this capability. The problem is, it “fakes” this capability by starting with an audio file, not a stream, I partially understand why they do this for an example (they don’t need access to a live stream), but it doesn’t really help someone like me who actually wants to use a real audio stream.
Here is the comment from the relevant code in test_client.py :
This function pushes audio chunks sequentially via PushAudioStreamRequest()
The function emulates the stream of chunks, generated by splitting input audio track.
But in a real application such stream of chunks may be aquired from some other streaming source.
I don’t have a solution to your problem - but if you don’t mind I’d like to ask you a few questions if you ever got test_client.py working. Were you able to connect to the Audio2Face streaming instance? Did you use an absolute path or did you just the prim path provided in Audio2Face (/World/audio2face/PlayerStreaming)?
Thanks!
I have the same problem (A2F 2023.1.1) and I am looking for a solution.
The link provided by
@WendyGram
is not working.
Any update?
This is my error message
File “\AppData\Local\Programs\Python\Python311\Lib\site-packages\grpc_channel.py”, line 1004, in _end_unary_response_blocking
raise _InactiveRpcError(state) # pytype: disable=not-instantiable
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
status = StatusCode.UNAVAILABLE
details = “failed to connect to all addresses; last error: UNAVAILABLE: ipv4:127.0.0.1:8011: End of TCP stream”
debug_error_string = "UNKNOWN:failed to connect to all addresses; last error: UNAVAILABLE: ipv4:127.0.0.1:8011: End of TCP stream
Fixed
.
It was a really stupid error. I’ve configured the wrong port number.
I was using 8011 (the port of the REST server) instead of the 50051.