markheath / skypevoicechanger

37 stars 17 forks source link

How do you add Skyp4COMLib in this 2021? #3

Closed swdevbali closed 3 years ago

swdevbali commented 3 years ago

This is what I got when trying to add Skype4COMLib using nuget console

Gathering dependency information took 3 ms
Attempting to resolve dependencies for package 'Skype4COM.1.0.1' with DependencyBehavior 'Lowest'
Resolving dependency information took 0 ms
Resolving actions to install package 'Skype4COM.1.0.1'
Resolved actions to install package 'Skype4COM.1.0.1'
Retrieving package 'Skype4COM 1.0.1' from 'nuget.org'.
Install failed. Rolling back...
Package 'Skype4COM.1.0.1' does not exist in project 'SkypeVoiceChanger'
Package 'Skype4COM.1.0.1' does not exist in folder 'D:\gitlab\upwork-contract\michelle-hong\res\skypevoicechanger\packages'
Executing nuget actions took 344 ms
Install-Package : Could not install package 'Skype4COM 1.0.1'. You are trying to install this package into a project that targets '.NETFramework,Version
=v3.5', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact
 the package author.
At line:1 char:1
+ Install-Package Skype4COM -Version 1.0.1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

I just build from the source, so no changes. Any suggestion?

markheath commented 3 years ago

I very much doubt this works anymore even if you do add skype4com as the latest versions of Skype don't support this mechanism of connecting

swdevbali commented 3 years ago

I very much doubt this works anymore even if you do add skype4com as the latest versions of Skype don't support this mechanism of connecting

Aaah, right. It actually will be awesome if the code works as is. But as I remove all references to Skype4COM, the code runs great too! It's now working as realtime effect processing in a file.

I am now working to incorporate realtime mic changing of the voice using your article: https://markheath.net/post/how-to-record-and-play-audio-at-same

Another big task is actually to redirect speaker output into our own virtual audio input. For now I am going to use https://vb-audio.com/Cable/

If all those tasks completed successfully, we are going to have a complete voice changer application to use in any application that required an audio input (so it will not depend on external API)

Thanks for opensourcing your code: really help me!

Another question: does changing gender voice using the pitch already good enough? Or there is another paramter needed? I am reading about .. formant, but not quite sure about it.

markheath commented 3 years ago

OK, a virtual audio cable is going to be a much easier way of achieving voice changer.

For changing gender, you do need something more advanced with formant control. A pitch shifter will just make you sound like a chipmunk or an ogre.

swdevbali commented 3 years ago

I have tested the pitch shifter, well, in some way, it can make a voice become manly (lowering the shift), but rising it... will not make it .. womanly.

Any suggestion on how to implement formant control? I have high hope though looking at the code in Effects\ .. but I have no idea how to apply any formula to it.

swdevbali commented 3 years ago

Hi, I am going to close this issue, and probably create another issue :) I will also post my finding on this on another article :)

Thanks Mark!