-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Try modulating audio stream for video call #93
Comments
@sansyrox I am kinda busy this weekend because schools opened. So I can't guarantee when the feature will be done. |
That's alright, @ZohebMOPO . You can take your time 😄 |
Tysm! |
There's a npm package that does this thing but it is binded with redux :( |
@ZohebMOPO , a redux binding is not required and the module will be only helpful for the dispatching of events. Making it very slow. The important part is an event like this. We shouldn't use a state library or rather any state module for this in real time audio.
Even with the above module we would have to implement the events ourself, which are the real difficult parts.
@raghavdhingra and I will help you for sure with your PR. |
Also, try implementing any kind of real time audio modulation even in a sandbox (using an earlier video as well that you shared with us) . We will help you out where you get stuck. We can brainstorm a different strategy next week otherwise. |
Hmm sure. Tysm! |
|
@raghavdhingra
This is the code for volume |
This is because you don’t have an onchange field on input.
…On Thu, 8 Jul 2021 at 6:51 PM, Zoheb Alli Khan ***@***.***> wrote:
@raghavdhingra <https://github.com/raghavdhingra>
[image: ezgif com-gif-maker]
<https://user-images.githubusercontent.com/72716462/124928450-39016c00-e01d-11eb-922e-dc2878bbb731.gif>
A bug is coming up and I can't find a way to fix that up.
class Controller extends React.Component {
constructor(props) {
super(props);
this.state = {
audio: null,
};
}
async componentDidMount() {
this.audio = new window.AudioContext();
this.source = await this.audio.createMediaStreamSource(
this.getMicrophone()
);
this.node = this.audio.createGain();
}
async getMicrophone() {
const audio = await navigator.mediaDevices.getUserMedia({
audio: true,
video: false,
});
return audio;
}
Volume(e) {
const value = parseInt(e.target.value);
this.node.gain.value = value;
}
render() {
return (
<div>
<button data-playing="false" role="switch" aria-checked="false">
<input
type="range"
id="volume"
min="0"
max="2"
value="1"
step="0.01"
/>
<span>Volume</span>
</button>
</div>
);
}
}
export default Controller;
This is the code for volume
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#93 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AHEOIBSQ64FMKC6LQY2TFK3TWWQ4LANCNFSM47ABOIXA>
.
|
const audio = await this. getMicrophone() |
|
@ZohebMOPO |
There are 3 ways to store a stream,
|
First of all, I guess it's a class component, so |
Is your feature request related to a problem? Please describe.
Currently, there is no feature to modulate the audio stream of video calls
Describe the solution you'd like
Ability to change the audio voice
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Approach to be followed (optional)
A clear and concise description of approach to be followed.
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: