Comments (18)
I have tested audio transmission from pi to chrome, but transmission to pi speakers has not yet been tested. Since the two-way audio is not blocked at the code level, the two-way audo-related part is available by default.
For USB auido related documents, please refer to README_audio.
Please give it a try and give us your feedback.
from rpi-webrtc-streamer.
ok, sir,
I'll give you feedback.
I have two other concerns about audio. when I plug audio source to pi the client couldn't establish ws channel between peers, have you got something similar?
from rpi-webrtc-streamer.
The mentioned phenomenon did not appear to me. First, I would like to recommend PI 2 or higher (PI Zero is 1 core, so if CPU 100% phenomenon occurs, it affects other processes) and when using with other hardware at the same time, please use the power source of PI power more than 2.1 Amp (do not know what happens when the power is insufficient).
from rpi-webrtc-streamer.
thanks for help, the testing is subject of tomorrow, ill be in touch,
from rpi-webrtc-streamer.
@mkoyan44 I'm also very interested in your solution.
Please let me know if you find a way to do it.
from rpi-webrtc-streamer.
Hi,
For sure, I'm working for that part, there are few issues for integration, as soon as I got simple working example i'll inform you.
from rpi-webrtc-streamer.
@mkoyan44 ok great. Thank you.
from rpi-webrtc-streamer.
Hi,
I have got few issues around voice, may you please help me?
first: After successful send of local audio the raspberry run maximum a minute, then it drops the connection due to audio buffer overflow.
I got thte following log:
105:665] [1869] (audio_device_buffer.cc:428): [REC : 10000msec, 48kHz] callbacks: 497, samples: 238560, rate: 23856, level: 351
[105:666] [1869] (audio_device_buffer.cc:437): [PLAY: 10000msec, 48kHz] callbacks: 999, samples: 479520, rate: 47952, level: 446
[105:746] [1877] (audio_device_alsa_linux.cc:1561): capture snd_pcm_readi error: Broken pipe
[105:889] [1877] (audio_device_alsa_linux.cc:1561): capture snd_pcm_readi error: Broken pipe
[106:065] [1877] (audio_device_alsa_linux.cc:1561): capture snd_pcm_readi error: Broken pipe
[106:230] [1877] (audio_device_alsa_linux.cc:1561): capture snd_pcm_readi error: Broken pipe
[106:373] [1877] (audio_device_alsa_linux.cc:1561): capture snd_pcm_readi error: Broken pipe
[106:524] [1877] (audio_device_alsa_linux.cc:1561): capture snd_pcm_readi error: Broken pipe
After I tried to adjust sender audio bandwidth to lower value, but it hasn't any effect on PI. Perhaps we need a way to buffer audio.
Second:
even during the short time, the audio quality from PI side is very low, but with one side audio it behaves well
if you need my testing code please don't hesitate to ask me.
from rpi-webrtc-streamer.
-
High CPU usage issue in PI2
What is the hardware and CPU usage rate used for the two-way audio test?
Recently, there is a problem that audio encoding of WebRTC native stack has high CPU usage in PI2. If possible, you should try the test in PI3. In the past, the video + microphone test on PI2 was 18% CPU usage(75% of one CPU core) in PI2, but now it uses 37% (full use of 1 core and 50% of other core).
But, almost 20% CPU( 75% of one CPU core) in PI3. -
Full log file and One way Audio Testing
The log message appears to be due to a failure to read the frame from the microphone device (capture device). is it possible to check if the same error is happening by using only one way audio test?
And, I can not understand what is happening only by error message. If you attach the full test log message file that was logged during the test, i will check if there is any special information in the log message.
from rpi-webrtc-streamer.
Hi,
I'm using ordinary headsets (Logitech USB Headset H340), PI model is "3 Model B, rev: a02082". This CPU usage quite high in my case, during the stream it uses 2 cores (resolution:16_9 1920x1080, fps:25) at 200% at average (maximum 216%).
I use precompiled deb file, may this cause high CPU usage?
Here is a verbose log [two-way.log](https://github.com/kclyu/rpi-webrtc-streamer/files/2114240/two-way.log. With one way it is clear.
Do you have UML or any diagrams that explain your code?
--
from rpi-webrtc-streamer.
RWS uses SW codec for audio encoding/decoding. So, High CPU utilization is likely to affect delay or quality in audio encoding/decoding, but i think it is not an absolute cause.
The attached log message shows that the audio related filter that is not set in the config is enabled something like audio pass filter, and the CPU usage rate has increased. First of all, I will look into this part separately.
At this time, the CPU usage rate is slightly higher, and the audio option is enabled in the configuration. Please check the CPU utilization again with audio_processing_enable=false
in media_config.conf.
The log message does not seem to be a problem except the capture device problem. Please refer to How can I use an external USB sound card and set it as default? For ALSA configuration and check if you need to modify the settings. If you have already seen it, please ignore it.
Audio uses the WebRTC native code package and does not have a separate document. For WebRTC native code documentation, see WebRTC native code.
If the problem persists, I should make an environment for speaker test and try.
from rpi-webrtc-streamer.
HI,
The CPU utilization with audio processing disabled is around 185%. Perhaps there is another cause of an issue, as you say utilization is less than 100%. please look to my code.
web-root.zip
from rpi-webrtc-streamer.
You can ignore CPU usage. My PI3 also has 1920x1080 resolution and 25 fps, so the CPU usage rate is about 120%.
I am going to test the two-way audio modification that you have uploaded, and I will let you know if there is a problem.
from rpi-webrtc-streamer.
thanks,
looking forward to your response.
from rpi-webrtc-streamer.
Bidirectional audio modified tway-audio.zip file.
You can use web-root/tway-audio. Not all cases are processed, but it seems to be enough to test.
from rpi-webrtc-streamer.
from rpi-webrtc-streamer.
Hi there,
I have tested it and it works perfectly.
CPU is around 170% in case you want to know.
from rpi-webrtc-streamer.
from rpi-webrtc-streamer.
Related Issues (20)
- "/dev/vcsm": no such file or directory. HOT 2
- Cross-compile issue HOT 6
- Building WebRTC native-code library HOT 11
- Can you share static library of webrtc? HOT 1
- webrtc_streamer crashes at higher bitrates
- handle to raw image for furthur processing
- Stream delay builds up over time HOT 1
- Serving still captures
- Changing fixed bitrate at runtime
- Superfluous method
- Connecting to static public LTE IP
- Color correction during video streaming HOT 1
- Cross Compilation Error HOT 2
- net::ERR_SSL_PROTOCOL_ERROR HOT 1
- Do I need I Signaling server or does this project include it?
- How can I use webcam on RPi to collect streaming video data for WebRTC streaming?
- Motion Detection and low-level properties inside H264 decoder
- What do you need doing, kclyu?
- Multi-Client Connections
- Compile error ! help me!
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rpi-webrtc-streamer.