how to match multiple voices

600 views
Skip to first unread message

Gingerbox01 Mobility

unread,
Aug 2, 2016, 7:17:06 AM8/2/16
to Recognito
Hi ,

I want to know about matching multiple voices. I have tried a lot it is always producing 50%. I tried the below it produces 50% even though both the voices are different or same. Please help me out. Thanks.

In attachment 1470134482295.wav and 1470134490931.wav are same and 1470135093716.wav is different

Recognito<String> recognito = new Recognito<>(16000.0f);
VoicePrint print = recognito.createVoicePrint("Match", new File("F:/TestFtpDirectory/1470134482295.wav"));
List<MatchResult<String>> matches = recognito.identify(new File("F:/TestFtpDirectory/1470134490931.wav"));
MatchResult<String> match = matches.get(0);
if (match.getKey().equals("Match")) {
 
if (match.getLikelihoodRatio() > 50) {
 
out.println("\"Pass:\"");
 
break;
 
} else {
 
out.println("\"Error\"");
 
}
} else {
 
out.println("\"Error\"");
}

1470134482295.wav
1470134490931.wav
1470135093716.wav

vikram sareen

unread,
Aug 28, 2016, 4:30:31 AM8/28/16
to Recognito
hi Gingerbox01 Mobility, 
did you get any solution? i tried the same and it give same output for same or different voice? 
regards,
vikram

mr_eduardjr

unread,
Sep 13, 2016, 12:14:20 AM9/13/16
to Recognito
As stated in the github "With a single known voice, the likelihood will always be 50%. The more voice prints you add, the more relevant this likelihood becomes..." so you'll need to add more Voice Print..

Recognito<String> recognito = new Recognito<>(16000.0f);
VoicePrint print = recognito.createVoicePrint("Key", new File("url"));
VoicePrint print2 = recognito.createVoicePrint("Key2", new File("url"));

Urvi gola

unread,
Jun 9, 2017, 2:44:12 AM6/9/17
to Recognito
How were you able to make the sample rate of these audio wav files fall into recognito's rate. I am having problem using my own wav files which have diffrent sample rate. 


On Tuesday, August 2, 2016 at 4:47:06 PM UTC+5:30, Gingerbox01 Mobility wrote:

Biblioteca Ortodoxa

unread,
Nov 18, 2017, 4:57:34 PM11/18/17
to Recognito
To transform to a recognizable pcm (wav) format, try this:
ffmpeg -i 127069.mp3 -acodec pcm_s16le -ac 1 -ar 16000 /1.wav

Biblioteca Ortodoxa

unread,
Nov 18, 2017, 4:58:55 PM11/18/17
to Recognito
Still, the issue I share with the others:
- I train the system with 1.wav
- I try it against other wavs, where the person does not speak, but the system always returns match.
Does this imply that one needs to train the system with all the possible voices, and Recognito will compare between them?

In my case there are countless other voices in other files, and I need to extract only the ones where "Elvis" is.

Biblioteca Ortodoxa

unread,
Nov 24, 2017, 4:24:01 PM11/24/17
to Recognito
got it working, and more clear now:

import com.bitsinharmony.recognito.*;
import java.util.*;
import java.io.*;


public class Reco
{
 
public static void main(String[] ss)
 
{
 
try{
   
Recognito<String> reco = new Recognito<>(16000.0f);
   
VoicePrint print = reco.createVoicePrint("Remus", new File("/127068_ref.wav"));
   
VoicePrint p91 = reco.createVoicePrint("91", new File("/127091.wav"));
   
VoicePrint p92 = reco.createVoicePrint("92", new File("/127092.wav"));
   
VoicePrint p93 = reco.createVoicePrint("93", new File("/127093.wav"));
     
List<MatchResult<String>> matches = reco.identify(new File("/73161_ref.wav"));


               
for ( MatchResult<String> m : matches) {
                 
System.out.println(m.getKey() + "->" + m.getLikelihoodRatio() );
               
}
           
// OR:
     
//MatchResult<String> match = matches.get(0);
       
//if(match.getKey().equals("Remus"))
       
//{ System.out.println("Remus is back !!! " + match.getLikelihoodRatio() + "% positive about it..."); }
           
// OR:
     
//MatchResult<String> match = matches.get(0);
   
//System.out.println("match.getKey() + "->" + match.getLikelihoodRatio() + "% positive about it...");
             
}catch(Exception e){e.printStackTrace();}
   
}
}

Haritha Burra

unread,
Jun 28, 2018, 6:05:53 AM6/28/18
to Recognito
Hi 

I have a doubt regarding the 4 voice prints. Are these of a single speaker or different speakers?

Thanks

Oğuzhan yusuf Aslanalp

unread,
Sep 4, 2019, 7:50:14 AM9/4/19
to Recognito
when ı try to run this, netbeans says in 11th line, diamond operator isnt supported  in -source 6. how to fix this problem? can you send me a full project that is working? I want to learn but I couldnt do this.

25 Kasım 2017 Cumartesi 00:24:01 UTC+3 tarihinde Biblioteca Ortodoxa yazdı:

Oğuzhan yusuf Aslanalp

unread,
Sep 11, 2019, 2:20:22 PM9/11/19
to Recognito
Error occurs because maven's version is wrong. you can change the version 1.6 to 1.7 to solve this problem. You can find it in pom.xml file.

4 Eylül 2019 Çarşamba 14:50:14 UTC+3 tarihinde Oğuzhan yusuf Aslanalp yazdı:

Karan Ahir

unread,
Dec 18, 2019, 10:56:48 AM12/18/19
to Recognito
Hi,
can you please tell me how i can add multiple audio files in the MatchResult list.

Thanks and Regards,
Karan Ahir.
Reply all
Reply to author
Forward
0 new messages