├── .gitignore
├── LICENSE
├── README.md
├── audio_data
├── README.md
├── X2zqiX6yL3I.mp3
├── donald_trump
│ ├── fake
│ │ ├── 0ghm5Cqpfwk.mp3
│ │ ├── 1bB5db0Srrw.mp3
│ │ ├── 6xxGIDfe5BU.mp3
│ │ ├── Ho9h0ouemWQ.mp3
│ │ ├── J-SwzTNeN4M.mp3
│ │ └── k1WRcEDW83U.mp3
│ └── real
│ │ ├── 4glfwiMXgwQ.mp3
│ │ ├── 9BkOf5LQQBQ.mp3
│ │ ├── F2PiuixG0NY.mp3
│ │ ├── FrT_8lQTN6w.mp3
│ │ ├── dB0Za__55-Q.mp3
│ │ ├── dpJE5qd9CRM.mp3
│ │ ├── fDQuO1nm_NY.mp3
│ │ ├── mg8ST-ymYv0.mp3
│ │ ├── pMgjwBgCZIw.mp3
│ │ ├── qCCWXoCURKY.mp3
│ │ ├── w4FyVGtMa4s.mp3
│ │ └── y0xEoKRHRi4.mp3
├── librispeech_test-other
│ ├── 367
│ │ ├── 367-130732-0000.flac
│ │ ├── 367-130732-0001.flac
│ │ ├── 367-130732-0002.flac
│ │ ├── 367-130732-0003.flac
│ │ ├── 367-130732-0004.flac
│ │ ├── 367-130732-0005.flac
│ │ ├── 367-130732-0006.flac
│ │ ├── 367-130732-0007.flac
│ │ ├── 367-130732-0008.flac
│ │ └── 367-130732-0009.flac
│ ├── 533
│ │ ├── 533-1066-0000.flac
│ │ ├── 533-1066-0001.flac
│ │ ├── 533-1066-0002.flac
│ │ ├── 533-1066-0003.flac
│ │ ├── 533-1066-0004.flac
│ │ ├── 533-1066-0005.flac
│ │ ├── 533-1066-0006.flac
│ │ ├── 533-1066-0007.flac
│ │ ├── 533-1066-0008.flac
│ │ └── 533-1066-0009.flac
│ ├── 1688
│ │ ├── 1688-142285-0000.flac
│ │ ├── 1688-142285-0001.flac
│ │ ├── 1688-142285-0002.flac
│ │ ├── 1688-142285-0003.flac
│ │ ├── 1688-142285-0004.flac
│ │ ├── 1688-142285-0005.flac
│ │ ├── 1688-142285-0006.flac
│ │ ├── 1688-142285-0007.flac
│ │ ├── 1688-142285-0008.flac
│ │ └── 1688-142285-0009.flac
│ ├── 1998
│ │ ├── 1998-15444-0000.flac
│ │ ├── 1998-15444-0001.flac
│ │ ├── 1998-15444-0002.flac
│ │ ├── 1998-15444-0003.flac
│ │ ├── 1998-15444-0004.flac
│ │ ├── 1998-15444-0005.flac
│ │ ├── 1998-15444-0006.flac
│ │ ├── 1998-15444-0007.flac
│ │ ├── 1998-15444-0008.flac
│ │ └── 1998-15444-0009.flac
│ ├── 2033
│ │ ├── 2033-164914-0000.flac
│ │ ├── 2033-164914-0001.flac
│ │ ├── 2033-164914-0002.flac
│ │ ├── 2033-164914-0003.flac
│ │ ├── 2033-164914-0004.flac
│ │ ├── 2033-164914-0005.flac
│ │ ├── 2033-164914-0006.flac
│ │ ├── 2033-164914-0007.flac
│ │ ├── 2033-164914-0008.flac
│ │ └── 2033-164914-0009.flac
│ ├── 2414
│ │ ├── 2414-128291-0000.flac
│ │ ├── 2414-128291-0001.flac
│ │ ├── 2414-128291-0002.flac
│ │ ├── 2414-128291-0003.flac
│ │ ├── 2414-128291-0004.flac
│ │ ├── 2414-128291-0005.flac
│ │ ├── 2414-128291-0006.flac
│ │ ├── 2414-128291-0007.flac
│ │ ├── 2414-128291-0008.flac
│ │ └── 2414-128291-0009.flac
│ ├── 2609
│ │ ├── 2609-156975-0000.flac
│ │ ├── 2609-156975-0001.flac
│ │ ├── 2609-156975-0002.flac
│ │ ├── 2609-156975-0003.flac
│ │ ├── 2609-156975-0004.flac
│ │ ├── 2609-156975-0005.flac
│ │ ├── 2609-156975-0006.flac
│ │ ├── 2609-156975-0007.flac
│ │ ├── 2609-156975-0008.flac
│ │ └── 2609-156975-0009.flac
│ ├── 3005
│ │ ├── 3005-163389-0000.flac
│ │ ├── 3005-163389-0001.flac
│ │ ├── 3005-163389-0002.flac
│ │ ├── 3005-163389-0003.flac
│ │ ├── 3005-163389-0004.flac
│ │ ├── 3005-163389-0005.flac
│ │ ├── 3005-163389-0006.flac
│ │ ├── 3005-163389-0007.flac
│ │ ├── 3005-163389-0008.flac
│ │ └── 3005-163389-0009.flac
│ ├── 3080
│ │ ├── 3080-5032-0000.flac
│ │ ├── 3080-5032-0001.flac
│ │ ├── 3080-5032-0002.flac
│ │ ├── 3080-5032-0003.flac
│ │ ├── 3080-5032-0004.flac
│ │ ├── 3080-5032-0005.flac
│ │ ├── 3080-5032-0006.flac
│ │ ├── 3080-5032-0007.flac
│ │ ├── 3080-5032-0008.flac
│ │ └── 3080-5032-0009.flac
│ ├── 3331
│ │ ├── 3331-159605-0000.flac
│ │ ├── 3331-159605-0001.flac
│ │ ├── 3331-159605-0002.flac
│ │ ├── 3331-159605-0003.flac
│ │ ├── 3331-159605-0004.flac
│ │ ├── 3331-159605-0005.flac
│ │ ├── 3331-159605-0006.flac
│ │ ├── 3331-159605-0007.flac
│ │ ├── 3331-159605-0008.flac
│ │ └── 3331-159605-0009.flac
│ ├── LICENSE.TXT
│ └── SPEAKERS.TXT
└── librispeech_train-clean-100
│ ├── 103-1240-0000.flac
│ ├── 1034-121119-0000.flac
│ ├── 1040-133433-0000.flac
│ ├── 1069-133699-0000.flac
│ ├── 1081-125237-0000.flac
│ ├── 1088-129236-0000.flac
│ ├── 1098-133695-0000.flac
│ ├── 1116-132847-0000.flac
│ ├── 118-121721-0000.flac
│ ├── 1183-124566-0000.flac
│ ├── 1235-135883-0000.flac
│ ├── 1246-124548-0000.flac
│ ├── 125-121124-0000.flac
│ ├── 1263-138246-0000.flac
│ ├── 1334-135589-0000.flac
│ ├── 1355-39947-0000.flac
│ ├── 1363-135842-0000.flac
│ ├── 1447-130550-0000.flac
│ ├── 1455-134435-0000.flac
│ ├── 150-126107-0000.flac
│ ├── 1502-122615-0000.flac
│ ├── 1553-140047-0000.flac
│ ├── 1578-140045-0000.flac
│ ├── 1594-135914-0000.flac
│ ├── 1624-142933-0000.flac
│ ├── 163-121908-0000.flac
│ ├── 1723-141149-0000.flac
│ ├── 1737-142396-0000.flac
│ ├── 1743-142912-0000.flac
│ ├── 1841-150351-0000.flac
│ ├── 1867-148436-0000.flac
│ ├── 1898-145702-0000.flac
│ ├── 19-198-0000.flac
│ ├── 1926-143879-0000.flac
│ ├── 196-122150-0000.flac
│ ├── 1963-142393-0000.flac
│ ├── 1970-10594-0000.flac
│ ├── 198-126831-0000.flac
│ ├── 1992-141719-0000.flac
│ ├── 200-124139-0000.flac
│ ├── 2002-139469-0000.flac
│ ├── 2007-132570-0000.flac
│ ├── 201-122255-0000.flac
│ ├── 2092-145706-0000.flac
│ ├── 211-122425-0000.flac
│ ├── 2136-5140-0000.flac
│ ├── 2159-179154-0000.flac
│ ├── 2182-150130-0000.flac
│ ├── 2196-170151-0000.flac
│ ├── 226-122538-0000.flac
│ ├── 2289-152253-0000.flac
│ ├── 229-130880-0000.flac
│ ├── 233-134440-0000.flac
│ ├── 2384-152900-0000.flac
│ ├── 2391-145015-0000.flac
│ ├── 2416-152137-0000.flac
│ ├── 2436-2476-0000.flac
│ ├── 248-130644-0000.flac
│ ├── 250-140277-0000.flac
│ ├── 2514-149482-0000.flac
│ ├── 2518-154825-0000.flac
│ ├── 254-12312-0000.flac
│ ├── 26-495-0000.flac
│ ├── 2691-156745-0000.flac
│ ├── 27-123349-0000.flac
│ ├── 2764-36616-0000.flac
│ ├── 2817-142371-0000.flac
│ ├── 2836-5354-0000.flac
│ ├── 2843-152918-0000.flac
│ ├── 289-121652-0000.flac
│ ├── 2893-139310-0000.flac
│ ├── 2910-131096-0000.flac
│ ├── 2911-12359-0000.flac
│ ├── 2952-407-0000.flac
│ ├── 298-126790-0000.flac
│ ├── 2989-138028-0000.flac
│ ├── 302-123504-0000.flac
│ ├── 307-127535-0000.flac
│ ├── 311-124404-0000.flac
│ ├── 3112-9554-0000.flac
│ ├── 3168-173564-0000.flac
│ ├── 32-21625-0000.flac
│ ├── 3214-167602-0000.flac
│ ├── 322-124146-0000.flac
│ ├── 3235-11599-0000.flac
│ ├── 3240-131231-0000.flac
│ ├── 3242-67153-0000.flac
│ ├── 3259-158083-0000.flac
│ ├── 328-129766-0000.flac
│ ├── 332-128985-0000.flac
│ ├── 3374-298025-0000.flac
│ ├── 3436-172162-0000.flac
│ ├── 3440-171006-0000.flac
│ ├── 3486-166424-0000.flac
│ ├── 3526-175658-0000.flac
│ ├── 3607-135982-0000.flac
│ ├── 3664-11714-0000.flac
│ ├── 3699-175950-0000.flac
│ ├── 3723-171115-0000.flac
│ ├── 374-180298-0000.flac
│ ├── 3807-4923-0000.flac
│ ├── 3830-12529-0000.flac
│ ├── 3857-180923-0000.flac
│ ├── 3879-173592-0000.flac
│ ├── 39-121914-0000.flac
│ ├── 3947-13260-0000.flac
│ ├── 3982-178459-0000.flac
│ ├── 3983-5331-0000.flac
│ ├── 40-121026-0000.flac
│ ├── 4014-186175-0000.flac
│ ├── 4018-103416-0000.flac
│ ├── 403-126855-0000.flac
│ ├── 405-130894-0000.flac
│ ├── 4051-10927-0000.flac
│ ├── 4088-158077-0000.flac
│ ├── 412-126975-0000.flac
│ ├── 4137-11701-0000.flac
│ ├── 4160-11549-0000.flac
│ ├── 4195-17507-0000.flac
│ ├── 4214-7146-0000.flac
│ ├── 426-122819-0000.flac
│ ├── 4267-287369-0000.flac
│ ├── 4297-13006-0000.flac
│ ├── 4340-15220-0000.flac
│ ├── 4362-15663-0000.flac
│ ├── 4397-15666-0000.flac
│ ├── 4406-16882-0000.flac
│ ├── 441-128982-0000.flac
│ ├── 4441-76250-0000.flac
│ ├── 445-123857-0000.flac
│ ├── 446-123501-0000.flac
│ ├── 4481-17498-0000.flac
│ ├── 458-126290-0000.flac
│ ├── 460-172357-0000.flac
│ ├── 4640-19187-0000.flac
│ ├── 4680-16026-0000.flac
│ ├── 4788-294466-0000.flac
│ ├── 481-123719-0000.flac
│ ├── 4813-248638-0000.flac
│ ├── 4830-25898-0000.flac
│ ├── 4853-27670-0000.flac
│ ├── 4859-22176-0000.flac
│ ├── 4898-20016-0000.flac
│ ├── 5022-29405-0000.flac
│ ├── 5049-25947-0000.flac
│ ├── 5104-33406-0000.flac
│ ├── 5163-18515-0000.flac
│ ├── 5192-19396-0000.flac
│ ├── 5322-7678-0000.flac
│ ├── 5339-14133-0000.flac
│ ├── 5390-24512-0000.flac
│ ├── 5393-19218-0000.flac
│ ├── 5456-24741-0000.flac
│ ├── 5463-39173-0000.flac
│ ├── 5514-19192-0000.flac
│ ├── 5561-39621-0000.flac
│ ├── 5652-19215-0000.flac
│ ├── 5678-43301-0000.flac
│ ├── 5688-15787-0000.flac
│ ├── 5703-47198-0000.flac
│ ├── 5750-100289-0000.flac
│ ├── 5778-12761-0000.flac
│ ├── 5789-57158-0000.flac
│ ├── 5808-48608-0000.flac
│ ├── 5867-48852-0000.flac
│ ├── 587-41611-0000.flac
│ ├── 60-121082-0000.flac
│ ├── 6000-55211-0000.flac
│ ├── 6019-3185-0000.flac
│ ├── 6064-300880-0000.flac
│ ├── 6078-54007-0000.flac
│ ├── 6081-41997-0000.flac
│ ├── 6147-34605-0000.flac
│ ├── 6181-216552-0000.flac
│ ├── 6209-34599-0000.flac
│ ├── 625-132112-0000.flac
│ ├── 6272-70168-0000.flac
│ ├── 6367-65536-0000.flac
│ ├── 6385-220959-0000.flac
│ ├── 6415-100596-0000.flac
│ ├── 6437-66172-0000.flac
│ ├── 6454-107462-0000.flac
│ ├── 6476-57446-0000.flac
│ ├── 6529-62554-0000.flac
│ ├── 6531-61334-0000.flac
│ ├── 6563-285357-0000.flac
│ ├── 669-129061-0000.flac
│ ├── 6818-68772-0000.flac
│ ├── 6836-61803-0000.flac
│ ├── 6848-252322-0000.flac
│ ├── 6880-216547-0000.flac
│ ├── 6925-80680-0000.flac
│ ├── 696-92939-0000.flac
│ ├── 7059-77897-0000.flac
│ ├── 7067-76047-0000.flac
│ ├── 7078-271888-0000.flac
│ ├── 7113-86041-0000.flac
│ ├── 7148-59157-0000.flac
│ ├── 7178-34644-0000.flac
│ ├── 7190-90542-0000.flac
│ ├── 7226-86964-0000.flac
│ ├── 7264-92310-0000.flac
│ ├── 7278-104730-0000.flac
│ ├── 730-358-0000.flac
│ ├── 7302-86814-0000.flac
│ ├── 7312-92432-0000.flac
│ ├── 7367-86737-0000.flac
│ ├── 7402-59171-0000.flac
│ ├── 7447-91186-0000.flac
│ ├── 7505-258958-0000.flac
│ ├── 7511-102419-0000.flac
│ ├── 7517-100429-0000.flac
│ ├── 7635-105409-0000.flac
│ ├── 7780-274562-0000.flac
│ ├── 7794-295947-0000.flac
│ ├── 78-368-0000.flac
│ ├── 7800-283478-0000.flac
│ ├── 7859-102518-0000.flac
│ ├── 8014-112586-0000.flac
│ ├── 8051-118101-0000.flac
│ ├── 8063-274112-0000.flac
│ ├── 8088-284756-0000.flac
│ ├── 8095-274345-0000.flac
│ ├── 8098-275181-0000.flac
│ ├── 8108-274318-0000.flac
│ ├── 8123-275193-0000.flac
│ ├── 8226-274369-0000.flac
│ ├── 8238-274553-0000.flac
│ ├── 83-11691-0000.flac
│ ├── 831-130739-0000.flac
│ ├── 8312-279790-0000.flac
│ ├── 8324-286681-0000.flac
│ ├── 839-130898-0000.flac
│ ├── 8419-286667-0000.flac
│ ├── 8425-246962-0000.flac
│ ├── 8465-246940-0000.flac
│ ├── 8468-286673-0000.flac
│ ├── 8580-287363-0000.flac
│ ├── 8609-262281-0000.flac
│ ├── 8629-261139-0000.flac
│ ├── 8630-305212-0000.flac
│ ├── 87-121553-0000.flac
│ ├── 8747-293952-0000.flac
│ ├── 8770-295462-0000.flac
│ ├── 8797-294123-0000.flac
│ ├── 8838-298545-0000.flac
│ ├── 887-123289-0000.flac
│ ├── 89-218-0000.flac
│ ├── 8975-270782-0000.flac
│ ├── 909-131041-0000.flac
│ ├── 911-128684-0000.flac
│ └── SPEAKERS.TXT
├── demo01_similarity.py
├── demo02_diarization.py
├── demo03_projection.py
├── demo04_clustering.py
├── demo05_fake_speech_detection.py
├── demo_utils.py
├── plots
├── all_clustering.png
├── clustering_sex.png
├── clustering_speaker.png
├── fake_speech_detection.png
├── sim_matrix_1.png
├── sim_matrix_2.png
└── sim_matrix_3.png
├── requirements_demos.txt
├── requirements_package.txt
├── resemblyzer
├── __init__.py
├── audio.py
├── hparams.py
├── pretrained.pt
└── voice_encoder.py
└── setup.py
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/
2 | *.pyc
3 | .DS_Store
4 | ./__init__.py
5 | # Byte-compiled / optimized / DLL files
6 | __pycache__/
7 | *.py[cod]
8 | *$py.class
9 |
10 | # C extensions
11 | *.so
12 |
13 | # Distribution / packaging
14 | .Python
15 | build/
16 | develop-eggs/
17 | dist/
18 | downloads/
19 | eggs/
20 | .eggs/
21 | lib/
22 | lib64/
23 | parts/
24 | sdist/
25 | var/
26 | wheels/
27 | *.egg-info/
28 | .installed.cfg
29 | *.egg
30 | MANIFEST
31 |
32 | # PyInstaller
33 | # Usually these files are written by a python script from a template
34 | # before PyInstaller builds the exe, so as to inject date/other infos into it.
35 | *.manifest
36 | *.spec
37 |
38 | # Installer logs
39 | pip-log.txt
40 | pip-delete-this-directory.txt
41 |
42 | # Unit test / coverage reports
43 | htmlcov/
44 | .tox/
45 | .coverage
46 | .coverage.*
47 | .cache
48 | nosetests.xml
49 | coverage.xml
50 | *.cover
51 | .hypothesis/
52 |
53 | # Translations
54 | *.mo
55 | *.pot
56 |
57 | # Django stuff:
58 | *.log
59 | .static_storage/
60 | .media/
61 | local_settings.py
62 |
63 | # Flask stuff:
64 | instance/
65 | .webassets-cache
66 |
67 | # Scrapy stuff:
68 | .scrapy
69 |
70 | # Sphinx documentation
71 | docs/_build/
72 |
73 | # PyBuilder
74 | target/
75 |
76 | # Jupyter Notebook
77 | .ipynb_checkpoints
78 |
79 | # pyenv
80 | .python-version
81 |
82 | # celery beat schedule file
83 | celerybeat-schedule
84 |
85 | # SageMath parsed files
86 | *.sage.py
87 |
88 | # Environments
89 | .env
90 | .venv
91 | env/
92 | venv/
93 | ENV/
94 | env.bak/
95 | venv.bak/
96 |
97 | # Spyder project settings
98 | .spyderproject
99 | .spyproject
100 |
101 | # Rope project settings
102 | .ropeproject
103 |
104 | # mkdocs documentation
105 | /site
106 |
107 | # mypy
108 | .mypy_cache/
109 |
110 | # vim
111 | *.swp
112 | *.swm
113 | *.swn
114 | *.swo
115 |
116 | # pytorch models
117 | *.pth.tar
118 | result/
119 |
120 | # setup.py
121 | version.py
122 |
123 | # jupyter dummy files
124 | core
125 |
126 |
127 | .vscode
128 |
129 |
130 |
131 | # Project directories
132 | saved_models
133 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 |
179 | Copyright 2019 Resemble.AI
180 |
181 | Licensed under the Apache License, Version 2.0 (the "License");
182 | you may not use this file except in compliance with the License.
183 | You may obtain a copy of the License at
184 |
185 | http://www.apache.org/licenses/LICENSE-2.0
186 |
187 | Unless required by applicable law or agreed to in writing, software
188 | distributed under the License is distributed on an "AS IS" BASIS,
189 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
190 | See the License for the specific language governing permissions and
191 | limitations under the License.
192 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Resemblyzer allows you to derive a **high-level representation of a voice** through a deep learning model (referred to as the voice encoder). Given an audio file of speech, it creates a summary vector of 256 values (an embedding, often shortened to "embed" in this repo) that summarizes the characteristics of the voice spoken.
2 |
3 | N.B.: this repo holds 100mb of audio data for demonstration purpose. To get [the package](https://pypi.org/project/Resemblyzer/) alone, run `pip install resemblyzer` (python 3.5+ is required).
4 |
5 | ## Demos
6 | **Speaker diarization**: [\[Demo 02\]](https://github.com/resemble-ai/Resemblyzer/blob/master/demo02_diarization.py) recognize who is talking when with only a few seconds of reference audio per speaker:
7 | *(click the image for a video)*
8 |
9 | [](https://streamable.com/uef39)
10 |
11 | **Fake speech detection**: [\[Demo 05\]](https://github.com/resemble-ai/Resemblyzer/blob/master/demo05_fake_speech_detection.py) modest detection of fake speech by comparing the similarity of 12 unknown utterances (6 real ones, 6 fakes) against ground truth reference audio. Scores above the dashed line are predicted as real, so the model makes one error here.
12 |
13 | 
14 |
15 | For reference, [this](https://www.youtube.com/watch?v=Ho9h0ouemWQ) is the fake video that achieved a high score.
16 |
17 | **Visualizing the manifold**:
18 | [\[Demo 03 - left\]](https://github.com/resemble-ai/Resemblyzer/blob/master/demo03_projection.py) projecting the embeddings of 100 utterances (10 each from 10 speakers) in 2D space. The utterances from the same speakers form a tight cluster. With a trivial clustering algorithm, the speaker verification error rate for this example (with data unseen in training) would be 0%.
19 | [\[Demo 04 - right\]](https://github.com/resemble-ai/Resemblyzer/blob/master/demo04_clustering.py) same as demo 03 but with 251 embeddings all from distinct speakers, highlighting that the model has learned on its own to identify the sex of the speaker.
20 |
21 | 
22 |
23 | **Cross-similarity**: [\[Demo 01\]](https://github.com/resemble-ai/Resemblyzer/blob/master/demo01_similarity.py) comparing 10 utterances from 10 speakers against 10 other utterances from the same speakers.
24 |
25 | 
26 |
27 |
28 |
29 | ## What can I do with this package?
30 | Resemblyzer has many uses:
31 | - **Voice similarity metric**: compare different voices and get a value on how similar they sound. This leads to other applications:
32 | - **Speaker verification**: create a voice profile for a person from a few seconds of speech (5s - 30s) and compare it to that of new audio. Reject similarity scores below a threshold.
33 | - **Speaker diarization**: figure out who is talking when by comparing voice profiles with the continuous embedding of a multispeaker speech segment.
34 | - **Fake speech detection**: verify if some speech is legitimate or fake by comparing the similarity of possible fake speech to real speech.
35 | - **High-level feature extraction**: you can use the embeddings generated as feature vectors for machine learning or data analysis. This also leads to other applications:
36 | - **Voice cloning**: see [this other project](https://github.com/CorentinJ/Real-Time-Voice-Cloning).
37 | - **Component analysis**: figure out accents, tones, prosody, gender, ... through a component analysis of the embeddings.
38 | - **Virtual voices**: create entirely new voice embeddings by sampling from a prior distribution.
39 | - **Loss function**: you can backpropagate through the voice encoder model and use it as a perceptual loss for your deep learning model! The voice encoder is written in PyTorch.
40 |
41 | Resemblyzer is fast to execute (around 1000x real-time on a GTX 1080, with a minimum of 10ms for I/O operations), and can run both on CPU or GPU. It is robust to noise. It currently works best on English language only, but should still be able to perform somewhat decently on other languages.
42 |
43 |
44 | ## Code example
45 | This is a short example showing how to use Resemblyzer:
46 | ```python
47 | from resemblyzer import VoiceEncoder, preprocess_wav
48 | from pathlib import Path
49 | import numpy as np
50 |
51 | fpath = Path("path_to_an_audio_file")
52 | wav = preprocess_wav(fpath)
53 |
54 | encoder = VoiceEncoder()
55 | embed = encoder.embed_utterance(wav)
56 | np.set_printoptions(precision=3, suppress=True)
57 | print(embed)
58 | ```
59 |
60 | I highly suggest giving a peek to the demos to understand how similarity is computed and to see practical usages of the voice encoder.
61 |
62 | ## Additional info
63 | Resemblyzer emerged as a side project of the [Real-Time Voice Cloning](https://github.com/CorentinJ/Real-Time-Voice-Cloning) repository. The pretrained model that comes with Resemblyzer is interchangeable with models trained in that repository, so feel free to finetune a model on new data and possibly new languages! The paper from which the voice encoder was implemented is [Generalized End-To-End Loss for Speaker Verification](https://arxiv.org/pdf/1710.10467.pdf) (in which it is called the *speaker* encoder).
64 |
--------------------------------------------------------------------------------
/audio_data/README.md:
--------------------------------------------------------------------------------
1 | In this directory:
2 | - 100 audio samples from [LibriSpeech](http://www.openslr.org/12) test-other (10 per speaker)
3 | - 251 audio samples from [LibriSpeech](http://www.openslr.org/12) train-clean (1 per speaker)
4 | - Interview segments from [this video](https://www.youtube.com/watch?v=X2zqiX6yL3I)
5 |
6 |
--------------------------------------------------------------------------------
/audio_data/X2zqiX6yL3I.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/X2zqiX6yL3I.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/fake/0ghm5Cqpfwk.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/fake/0ghm5Cqpfwk.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/fake/1bB5db0Srrw.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/fake/1bB5db0Srrw.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/fake/6xxGIDfe5BU.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/fake/6xxGIDfe5BU.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/fake/Ho9h0ouemWQ.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/fake/Ho9h0ouemWQ.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/fake/J-SwzTNeN4M.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/fake/J-SwzTNeN4M.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/fake/k1WRcEDW83U.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/fake/k1WRcEDW83U.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/4glfwiMXgwQ.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/4glfwiMXgwQ.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/9BkOf5LQQBQ.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/9BkOf5LQQBQ.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/F2PiuixG0NY.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/F2PiuixG0NY.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/FrT_8lQTN6w.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/FrT_8lQTN6w.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/dB0Za__55-Q.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/dB0Za__55-Q.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/dpJE5qd9CRM.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/dpJE5qd9CRM.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/fDQuO1nm_NY.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/fDQuO1nm_NY.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/mg8ST-ymYv0.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/mg8ST-ymYv0.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/pMgjwBgCZIw.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/pMgjwBgCZIw.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/qCCWXoCURKY.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/qCCWXoCURKY.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/w4FyVGtMa4s.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/w4FyVGtMa4s.mp3
--------------------------------------------------------------------------------
/audio_data/donald_trump/real/y0xEoKRHRi4.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/donald_trump/real/y0xEoKRHRi4.mp3
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1688/1688-142285-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1688/1688-142285-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/1998/1998-15444-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/1998/1998-15444-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2033/2033-164914-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2033/2033-164914-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2414/2414-128291-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2414/2414-128291-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/2609/2609-156975-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/2609/2609-156975-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3005/3005-163389-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3005/3005-163389-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3080/3080-5032-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3080/3080-5032-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/3331/3331-159605-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/3331/3331-159605-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/367/367-130732-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/367/367-130732-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0001.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0001.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0002.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0002.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0003.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0003.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0004.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0004.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0005.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0005.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0006.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0006.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0007.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0007.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0008.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0008.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/533/533-1066-0009.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_test-other/533/533-1066-0009.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_test-other/LICENSE.TXT:
--------------------------------------------------------------------------------
1 | LibriSpeech (c) 2014 by Vassil Panayotov
2 |
3 | LibriSpeech ASR corpus is licensed under a
4 | Creative Commons Attribution 4.0 International License.
5 |
6 | See .
7 |
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/103-1240-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/103-1240-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1034-121119-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1034-121119-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1040-133433-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1040-133433-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1069-133699-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1069-133699-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1081-125237-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1081-125237-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1088-129236-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1088-129236-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1098-133695-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1098-133695-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1116-132847-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1116-132847-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/118-121721-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/118-121721-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1183-124566-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1183-124566-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1235-135883-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1235-135883-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1246-124548-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1246-124548-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/125-121124-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/125-121124-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1263-138246-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1263-138246-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1334-135589-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1334-135589-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1355-39947-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1355-39947-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1363-135842-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1363-135842-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1447-130550-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1447-130550-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1455-134435-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1455-134435-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/150-126107-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/150-126107-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1502-122615-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1502-122615-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1553-140047-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1553-140047-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1578-140045-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1578-140045-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1594-135914-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1594-135914-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1624-142933-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1624-142933-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/163-121908-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/163-121908-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1723-141149-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1723-141149-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1737-142396-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1737-142396-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1743-142912-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1743-142912-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1841-150351-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1841-150351-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1867-148436-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1867-148436-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1898-145702-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1898-145702-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/19-198-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/19-198-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1926-143879-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1926-143879-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/196-122150-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/196-122150-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1963-142393-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1963-142393-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1970-10594-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1970-10594-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/198-126831-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/198-126831-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/1992-141719-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/1992-141719-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/200-124139-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/200-124139-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2002-139469-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2002-139469-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2007-132570-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2007-132570-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/201-122255-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/201-122255-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2092-145706-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2092-145706-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/211-122425-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/211-122425-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2136-5140-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2136-5140-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2159-179154-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2159-179154-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2182-150130-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2182-150130-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2196-170151-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2196-170151-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/226-122538-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/226-122538-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2289-152253-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2289-152253-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/229-130880-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/229-130880-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/233-134440-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/233-134440-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2384-152900-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2384-152900-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2391-145015-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2391-145015-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2416-152137-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2416-152137-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2436-2476-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2436-2476-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/248-130644-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/248-130644-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/250-140277-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/250-140277-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2514-149482-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2514-149482-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2518-154825-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2518-154825-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/254-12312-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/254-12312-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/26-495-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/26-495-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2691-156745-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2691-156745-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/27-123349-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/27-123349-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2764-36616-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2764-36616-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2817-142371-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2817-142371-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2836-5354-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2836-5354-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2843-152918-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2843-152918-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/289-121652-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/289-121652-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2893-139310-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2893-139310-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2910-131096-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2910-131096-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2911-12359-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2911-12359-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2952-407-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2952-407-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/298-126790-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/298-126790-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/2989-138028-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/2989-138028-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/302-123504-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/302-123504-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/307-127535-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/307-127535-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/311-124404-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/311-124404-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3112-9554-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3112-9554-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3168-173564-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3168-173564-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/32-21625-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/32-21625-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3214-167602-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3214-167602-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/322-124146-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/322-124146-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3235-11599-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3235-11599-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3240-131231-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3240-131231-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3242-67153-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3242-67153-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3259-158083-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3259-158083-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/328-129766-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/328-129766-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/332-128985-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/332-128985-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3374-298025-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3374-298025-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3436-172162-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3436-172162-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3440-171006-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3440-171006-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3486-166424-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3486-166424-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3526-175658-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3526-175658-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3607-135982-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3607-135982-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3664-11714-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3664-11714-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3699-175950-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3699-175950-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3723-171115-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3723-171115-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/374-180298-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/374-180298-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3807-4923-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3807-4923-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3830-12529-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3830-12529-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3857-180923-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3857-180923-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3879-173592-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3879-173592-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/39-121914-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/39-121914-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3947-13260-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3947-13260-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3982-178459-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3982-178459-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/3983-5331-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/3983-5331-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/40-121026-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/40-121026-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4014-186175-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4014-186175-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4018-103416-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4018-103416-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/403-126855-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/403-126855-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/405-130894-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/405-130894-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4051-10927-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4051-10927-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4088-158077-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4088-158077-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/412-126975-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/412-126975-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4137-11701-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4137-11701-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4160-11549-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4160-11549-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4195-17507-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4195-17507-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4214-7146-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4214-7146-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/426-122819-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/426-122819-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4267-287369-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4267-287369-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4297-13006-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4297-13006-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4340-15220-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4340-15220-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4362-15663-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4362-15663-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4397-15666-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4397-15666-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4406-16882-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4406-16882-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/441-128982-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/441-128982-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4441-76250-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4441-76250-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/445-123857-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/445-123857-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/446-123501-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/446-123501-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4481-17498-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4481-17498-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/458-126290-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/458-126290-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/460-172357-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/460-172357-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4640-19187-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4640-19187-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4680-16026-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4680-16026-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4788-294466-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4788-294466-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/481-123719-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/481-123719-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4813-248638-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4813-248638-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4830-25898-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4830-25898-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4853-27670-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4853-27670-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4859-22176-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4859-22176-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/4898-20016-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/4898-20016-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5022-29405-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5022-29405-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5049-25947-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5049-25947-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5104-33406-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5104-33406-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5163-18515-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5163-18515-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5192-19396-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5192-19396-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5322-7678-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5322-7678-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5339-14133-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5339-14133-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5390-24512-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5390-24512-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5393-19218-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5393-19218-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5456-24741-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5456-24741-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5463-39173-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5463-39173-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5514-19192-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5514-19192-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5561-39621-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5561-39621-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5652-19215-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5652-19215-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5678-43301-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5678-43301-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5688-15787-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5688-15787-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5703-47198-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5703-47198-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5750-100289-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5750-100289-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5778-12761-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5778-12761-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5789-57158-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5789-57158-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5808-48608-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5808-48608-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/5867-48852-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/5867-48852-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/587-41611-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/587-41611-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/60-121082-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/60-121082-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6000-55211-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6000-55211-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6019-3185-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6019-3185-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6064-300880-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6064-300880-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6078-54007-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6078-54007-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6081-41997-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6081-41997-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6147-34605-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6147-34605-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6181-216552-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6181-216552-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6209-34599-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6209-34599-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/625-132112-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/625-132112-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6272-70168-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6272-70168-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6367-65536-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6367-65536-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6385-220959-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6385-220959-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6415-100596-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6415-100596-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6437-66172-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6437-66172-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6454-107462-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6454-107462-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6476-57446-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6476-57446-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6529-62554-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6529-62554-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6531-61334-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6531-61334-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6563-285357-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6563-285357-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/669-129061-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/669-129061-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6818-68772-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6818-68772-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6836-61803-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6836-61803-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6848-252322-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6848-252322-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6880-216547-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6880-216547-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/6925-80680-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/6925-80680-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/696-92939-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/696-92939-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7059-77897-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7059-77897-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7067-76047-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7067-76047-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7078-271888-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7078-271888-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7113-86041-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7113-86041-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7148-59157-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7148-59157-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7178-34644-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7178-34644-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7190-90542-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7190-90542-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7226-86964-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7226-86964-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7264-92310-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7264-92310-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7278-104730-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7278-104730-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/730-358-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/730-358-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7302-86814-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7302-86814-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7312-92432-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7312-92432-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7367-86737-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7367-86737-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7402-59171-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7402-59171-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7447-91186-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7447-91186-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7505-258958-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7505-258958-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7511-102419-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7511-102419-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7517-100429-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7517-100429-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7635-105409-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7635-105409-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7780-274562-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7780-274562-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7794-295947-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7794-295947-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/78-368-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/78-368-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7800-283478-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7800-283478-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/7859-102518-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/7859-102518-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8014-112586-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8014-112586-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8051-118101-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8051-118101-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8063-274112-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8063-274112-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8088-284756-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8088-284756-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8095-274345-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8095-274345-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8098-275181-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8098-275181-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8108-274318-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8108-274318-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8123-275193-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8123-275193-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8226-274369-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8226-274369-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8238-274553-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8238-274553-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/83-11691-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/83-11691-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/831-130739-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/831-130739-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8312-279790-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8312-279790-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8324-286681-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8324-286681-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/839-130898-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/839-130898-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8419-286667-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8419-286667-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8425-246962-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8425-246962-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8465-246940-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8465-246940-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8468-286673-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8468-286673-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8580-287363-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8580-287363-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8609-262281-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8609-262281-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8629-261139-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8629-261139-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8630-305212-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8630-305212-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/87-121553-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/87-121553-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8747-293952-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8747-293952-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8770-295462-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8770-295462-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8797-294123-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8797-294123-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8838-298545-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8838-298545-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/887-123289-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/887-123289-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/89-218-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/89-218-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/8975-270782-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/8975-270782-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/909-131041-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/909-131041-0000.flac
--------------------------------------------------------------------------------
/audio_data/librispeech_train-clean-100/911-128684-0000.flac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/audio_data/librispeech_train-clean-100/911-128684-0000.flac
--------------------------------------------------------------------------------
/demo01_similarity.py:
--------------------------------------------------------------------------------
1 | from resemblyzer import preprocess_wav, VoiceEncoder
2 | from demo_utils import *
3 | from itertools import groupby
4 | from pathlib import Path
5 | from tqdm import tqdm
6 | import matplotlib.pyplot as plt
7 | import numpy as np
8 |
9 |
10 | # The demos are ordered so as to make the explanations in the comments consistent. If you only
11 | # care about running the code, then you don't have to follow that order.
12 | # DEMO 01: we'll show how to compare speech segments (=utterances) between them to get a metric
13 | # on how similar their voices sound. We expect utterances from the same speaker to have a high
14 | # similarity, and those from distinct speakers to have a lower one.
15 |
16 |
17 | # The neural network will automatically use CUDA if it'speaker available on your machine, otherwise it
18 | # will use the CPU. You can enforce a device of your choice by passing its name as argument to the
19 | # constructor. The model might take a few seconds to load with CUDA, but it then executes very
20 | # quickly.
21 | encoder = VoiceEncoder()
22 |
23 | # We'll use a smaller version of the dataset LibriSpeech test-other to run our examples. This
24 | # smaller dataset contains 10 speakers with 10 utterances each. N.B. "wav" in variable names stands
25 | # for "waveform" and not the wav file extension.
26 | wav_fpaths = list(Path("audio_data", "librispeech_test-other").glob("**/*.flac"))
27 | # Group the wavs per speaker and load them using the preprocessing function provided with
28 | # resemblyzer to load wavs in memory. It normalizes the volume, trims long silences and resamples
29 | # the wav to the correct sampling rate.
30 | speaker_wavs = {speaker: list(map(preprocess_wav, wav_fpaths)) for speaker, wav_fpaths in
31 | groupby(tqdm(wav_fpaths, "Preprocessing wavs", len(wav_fpaths), unit="wavs"),
32 | lambda wav_fpath: wav_fpath.parent.stem)}
33 |
34 |
35 | ## Similarity between two utterances from each speaker
36 | # Embed two utterances A and B for each speaker
37 | embeds_a = np.array([encoder.embed_utterance(wavs[0]) for wavs in speaker_wavs.values()])
38 | embeds_b = np.array([encoder.embed_utterance(wavs[1]) for wavs in speaker_wavs.values()])
39 | # Each array is of shape (num_speakers, embed_size) which should be (10, 256) if you haven't
40 | # changed anything.
41 | print("Shape of embeddings: %s" % str(embeds_a.shape))
42 |
43 | # Compute the similarity matrix. The similarity of two embeddings is simply their dot
44 | # product, because the similarity metric is the cosine similarity and the embeddings are
45 | # already L2-normed.
46 | # Short version:
47 | utt_sim_matrix = np.inner(embeds_a, embeds_b)
48 | # Long, detailed version:
49 | utt_sim_matrix2 = np.zeros((len(embeds_a), len(embeds_b)))
50 | for i in range(len(embeds_a)):
51 | for j in range(len(embeds_b)):
52 | # The @ notation is exactly equivalent to np.dot(embeds_a[i], embeds_b[i])
53 | utt_sim_matrix2[i, j] = embeds_a[i] @ embeds_b[j]
54 | assert np.allclose(utt_sim_matrix, utt_sim_matrix2)
55 |
56 |
57 | ## Similarity between two speaker embeddings
58 | # Divide the utterances of each speaker in groups of identical size and embed each group as a
59 | # speaker embedding
60 | spk_embeds_a = np.array([encoder.embed_speaker(wavs[:len(wavs) // 2]) \
61 | for wavs in speaker_wavs.values()])
62 | spk_embeds_b = np.array([encoder.embed_speaker(wavs[len(wavs) // 2:]) \
63 | for wavs in speaker_wavs.values()])
64 | spk_sim_matrix = np.inner(spk_embeds_a, spk_embeds_b)
65 |
66 |
67 | ## Draw the plots
68 | fix, axs = plt.subplots(2, 2, figsize=(8, 10))
69 | labels_a = ["%s-A" % i for i in speaker_wavs.keys()]
70 | labels_b = ["%s-B" % i for i in speaker_wavs.keys()]
71 | mask = np.eye(len(utt_sim_matrix), dtype=bool)
72 | plot_similarity_matrix(utt_sim_matrix, labels_a, labels_b, axs[0, 0],
73 | "Cross-similarity between utterances\n(speaker_id-utterance_group)")
74 | plot_histograms((utt_sim_matrix[mask], utt_sim_matrix[np.logical_not(mask)]), axs[0, 1],
75 | ["Same speaker", "Different speakers"],
76 | "Normalized histogram of similarity\nvalues between utterances")
77 | plot_similarity_matrix(spk_sim_matrix, labels_a, labels_b, axs[1, 0],
78 | "Cross-similarity between speakers\n(speaker_id-utterances_group)")
79 | plot_histograms((spk_sim_matrix[mask], spk_sim_matrix[np.logical_not(mask)]), axs[1, 1],
80 | ["Same speaker", "Different speakers"],
81 | "Normalized histogram of similarity\nvalues between speakers")
82 | plt.show()
83 |
--------------------------------------------------------------------------------
/demo02_diarization.py:
--------------------------------------------------------------------------------
1 | from resemblyzer import preprocess_wav, VoiceEncoder
2 | from demo_utils import *
3 | from pathlib import Path
4 |
5 |
6 | # DEMO 02: we'll show how this similarity measure can be used to perform speaker diarization
7 | # (telling who is speaking when in a recording).
8 |
9 |
10 | ## Get reference audios
11 | # Load the interview audio from disk
12 | # Source for the interview: https://www.youtube.com/watch?v=X2zqiX6yL3I
13 | wav_fpath = Path("audio_data", "X2zqiX6yL3I.mp3")
14 | wav = preprocess_wav(wav_fpath)
15 |
16 | # Cut some segments from single speakers as reference audio
17 | segments = [[0, 5.5], [6.5, 12], [17, 25]]
18 | speaker_names = ["Kyle Gass", "Sean Evans", "Jack Black"]
19 | speaker_wavs = [wav[int(s[0] * sampling_rate):int(s[1] * sampling_rate)] for s in segments]
20 |
21 |
22 | ## Compare speaker embeds to the continuous embedding of the interview
23 | # Derive a continuous embedding of the interview. We put a rate of 16, meaning that an
24 | # embedding is generated every 0.0625 seconds. It is good to have a higher rate for speaker
25 | # diarization, but it is not so useful for when you only need a summary embedding of the
26 | # entire utterance. A rate of 2 would have been enough, but 16 is nice for the sake of the
27 | # demonstration.
28 | # We'll exceptionally force to run this on CPU, because it uses a lot of RAM and most GPUs
29 | # won't have enough. There's a speed drawback, but it remains reasonable.
30 | encoder = VoiceEncoder("cpu")
31 | print("Running the continuous embedding on cpu, this might take a while...")
32 | _, cont_embeds, wav_splits = encoder.embed_utterance(wav, return_partials=True, rate=16)
33 |
34 |
35 | # Get the continuous similarity for every speaker. It amounts to a dot product between the
36 | # embedding of the speaker and the continuous embedding of the interview
37 | speaker_embeds = [encoder.embed_utterance(speaker_wav) for speaker_wav in speaker_wavs]
38 | similarity_dict = {name: cont_embeds @ speaker_embed for name, speaker_embed in
39 | zip(speaker_names, speaker_embeds)}
40 |
41 |
42 | ## Run the interactive demo
43 | interactive_diarization(similarity_dict, wav, wav_splits)
44 |
--------------------------------------------------------------------------------
/demo03_projection.py:
--------------------------------------------------------------------------------
1 | from resemblyzer import preprocess_wav, VoiceEncoder
2 | from demo_utils import *
3 | from itertools import groupby
4 | from pathlib import Path
5 | from tqdm import tqdm
6 | import numpy as np
7 |
8 |
9 | # DEMO 03: we'll show one way to visualize these utterance embeddings. Since they are
10 | # 256-dimensional, it is much simpler for us to get an overview of their manifold if we reduce
11 | # their dimensionality first. By doing so, we can observe clusters that form for utterances of
12 | # identical characteristics. What we'll see is that clusters form for distinct speakers,
13 | # and they are very tight and even linearly separable.
14 |
15 |
16 | ## Gather the wavs
17 | wav_fpaths = list(Path("audio_data", "librispeech_test-other").glob("**/*.flac"))
18 | speakers = list(map(lambda wav_fpath: wav_fpath.parent.stem, wav_fpaths))
19 | wavs = np.array(list(map(preprocess_wav, tqdm(wav_fpaths, "Preprocessing wavs", len(wav_fpaths)))), dtype=object)
20 | speaker_wavs = {speaker: wavs[list(indices)] for speaker, indices in
21 | groupby(range(len(wavs)), lambda i: speakers[i])}
22 |
23 |
24 | ## Compute the embeddings
25 | encoder = VoiceEncoder()
26 | utterance_embeds = np.array(list(map(encoder.embed_utterance, wavs)))
27 |
28 |
29 | ## Project the embeddings in 2D space
30 | plot_projections(utterance_embeds, speakers, title="Embedding projections")
31 | plt.show()
32 |
--------------------------------------------------------------------------------
/demo04_clustering.py:
--------------------------------------------------------------------------------
1 | from sklearn.linear_model import LogisticRegression
2 | from resemblyzer import preprocess_wav, VoiceEncoder
3 | from demo_utils import *
4 | from pathlib import Path
5 | from tqdm import tqdm
6 | import numpy as np
7 |
8 |
9 | # DEMO 04: building from the previous demonstration, we'll show how natural properties of the
10 | # voice can emerge through analysis of the embeddings. The dimensionality reduction algorithm
11 | # UMAP will create clusters from embeddings with similar features. When provided with samples
12 | # from many distinct speakers, it tends to create two clusters for each sex. This is what we'll
13 | # show here, by using the speaker metadata file provided in the LibriSpeech dataset to retrieve
14 | # the sex of each speaker. Note that this information was never used during training of the voice
15 | # encoder model, be it as input feature or target. This means that the distinction was learned
16 | # entirely in an unsupervised manner.
17 | # Note that if you try this code on different data (or on fewer speakers), you may observe an
18 | # entirely different clustering, e.g. based on the accent of the speakers. Changing the
19 | # parameters of UMAP or the dimensionality reduction altogether will also give you a different
20 | # view of the manifold.
21 |
22 |
23 | ## Gather a single utterance per speaker
24 | data_dir = Path("audio_data", "librispeech_train-clean-100")
25 | wav_fpaths = list(data_dir.glob("*.flac"))
26 | speakers = [fpath.stem.split("-")[0] for fpath in wav_fpaths]
27 | wavs = [preprocess_wav(wav_fpath) for wav_fpath in \
28 | tqdm(wav_fpaths, "Preprocessing wavs", len(wav_fpaths), unit=" utterances")]
29 |
30 | # Get the sex of each speaker from the metadata file
31 | with data_dir.joinpath("SPEAKERS.TXT").open("r") as f:
32 | sexes = dict(l.replace(" ", "").split("|")[:2] for l in f if not l.startswith(";"))
33 | markers = ["x" if sexes[speaker] == "M" else "o" for speaker in speakers]
34 | colors = ["black"] * len(speakers)
35 |
36 |
37 | ## Compute the embeddings
38 | encoder = VoiceEncoder()
39 | utterance_embeds = np.array(list(map(encoder.embed_utterance, wavs)))
40 |
41 |
42 | ## Project the embeddings in 2D space.
43 | _, ax = plt.subplots(figsize=(6, 6))
44 | # Passing min_dist=1 to UMAP will make it so the projections don't necessarily need to fit in
45 | # clusters, so that you can have a better idea of what the manifold really looks like.
46 | projs = plot_projections(utterance_embeds, speakers, ax, colors, markers, False,
47 | min_dist=1)
48 | ax.set_title("Embeddings for %d speakers" % (len(speakers)))
49 | ax.scatter([], [], marker="x", c="black", label="Male speaker")
50 | ax.scatter([], [], marker="o", c="black", label="Female speaker")
51 |
52 | # Separate the data by the sex
53 | classifier = LogisticRegression(solver="lbfgs")
54 | classifier.fit(projs, markers)
55 | x = np.linspace(*ax.get_xlim(), num=200)
56 | y = -(classifier.coef_[0, 0] * x + classifier.intercept_) / classifier.coef_[0, 1]
57 | mask = (y > ax.get_ylim()[0]) & (y < ax.get_ylim()[1])
58 | ax.plot(x[mask], y[mask], label="Decision boundary")
59 |
60 | ax.legend()
61 | plt.show()
62 |
--------------------------------------------------------------------------------
/demo05_fake_speech_detection.py:
--------------------------------------------------------------------------------
1 | from resemblyzer import preprocess_wav, VoiceEncoder
2 | from demo_utils import *
3 | from pathlib import Path
4 | from tqdm import tqdm
5 | import numpy as np
6 |
7 |
8 | # DEMO 05: In this demo we'll show how we can achieve a modest form of fake speech detection with
9 | # Resemblyzer. This method assumes you have some reference audio for the target speaker that you
10 | # know is real, so it is not a universal fake speech detector on its own.
11 | # In the audio data directory we have 18 segments of Donald Trump. 12 are real and extracted from
12 | # actual speeches, while the remaining 6 others are fake and generated by various users on
13 | # youtube, with a high discrepancy of voice cloning quality and naturalness achieved. We will
14 | # take 6 segments of real speech as ground truth reference and compare those against the 12
15 | # remaining. Those segments are selected at random, so will run into different results every time
16 | # you run the script, but they should be more or less consistent.
17 | # Using the voice of Donald Trump is merely a matter of convenience, as several fake speeches
18 | # with his voice were already put up on youtube. This choice was not politically motivated.
19 |
20 |
21 | ## Load and preprocess the audio
22 | data_dir = Path("audio_data", "donald_trump")
23 | wav_fpaths = list(data_dir.glob("**/*.mp3"))
24 | wavs = [preprocess_wav(wav_fpath) for wav_fpath in \
25 | tqdm(wav_fpaths, "Preprocessing wavs", len(wav_fpaths), unit=" utterances")]
26 |
27 |
28 | ## Compute the embeddings
29 | encoder = VoiceEncoder()
30 | embeds = np.array([encoder.embed_utterance(wav) for wav in wavs])
31 | speakers = np.array([fpath.parent.name for fpath in wav_fpaths])
32 | names = np.array([fpath.stem for fpath in wav_fpaths])
33 |
34 |
35 | # Take 6 real embeddings at random, and leave the 6 others for testing
36 | gt_indices = np.random.choice(*np.where(speakers == "real"), 6, replace=False)
37 | mask = np.zeros(len(embeds), dtype=bool)
38 | mask[gt_indices] = True
39 | gt_embeds = embeds[mask]
40 | gt_names = names[mask]
41 | gt_speakers = speakers[mask]
42 | embeds, speakers, names = embeds[~mask], speakers[~mask], names[~mask]
43 |
44 |
45 | ## Compare all embeddings against the ground truth embeddings, and compute the average similarities.
46 | scores = (gt_embeds @ embeds.T).mean(axis=0)
47 |
48 | # Order the scores by decreasing order
49 | sort = np.argsort(scores)[::-1]
50 | scores, names, speakers = scores[sort], names[sort], speakers[sort]
51 |
52 |
53 | ## Plot the scores
54 | fig, _ = plt.subplots(figsize=(6, 6))
55 | indices = np.arange(len(scores))
56 | plt.axhline(0.84, ls="dashed", label="Prediction threshold", c="black")
57 | plt.bar(indices[speakers == "real"], scores[speakers == "real"], color="green", label="Real")
58 | plt.bar(indices[speakers == "fake"], scores[speakers == "fake"], color="red", label="Fake")
59 | plt.legend()
60 | plt.xticks(indices, names, rotation="vertical", fontsize=8)
61 | plt.xlabel("Youtube video IDs")
62 | plt.ylim(0.7, 1)
63 | plt.ylabel("Similarity to ground truth")
64 | fig.subplots_adjust(bottom=0.25)
65 | plt.show()
66 |
--------------------------------------------------------------------------------
/demo_utils.py:
--------------------------------------------------------------------------------
1 | from mpl_toolkits.axes_grid1 import make_axes_locatable
2 | from matplotlib.animation import FuncAnimation
3 | from resemblyzer import sampling_rate
4 | from matplotlib import cm
5 | from time import sleep, perf_counter as timer
6 | from umap import UMAP
7 | from sys import stderr
8 | import matplotlib.pyplot as plt
9 | import numpy as np
10 |
11 | _default_colors = plt.rcParams["axes.prop_cycle"].by_key()["color"]
12 | _my_colors = np.array([
13 | [0, 127, 70],
14 | [255, 0, 0],
15 | [255, 217, 38],
16 | [0, 135, 255],
17 | [165, 0, 165],
18 | [255, 167, 255],
19 | [97, 142, 151],
20 | [0, 255, 255],
21 | [255, 96, 38],
22 | [142, 76, 0],
23 | [33, 0, 127],
24 | [0, 0, 0],
25 | [183, 183, 183],
26 | [76, 255, 0],
27 | ], dtype=float) / 255
28 |
29 |
30 | def play_wav(wav, blocking=True):
31 | try:
32 | import sounddevice as sd
33 | # Small bug with sounddevice.play: the audio is cut 0.5 second too early. We pad it to
34 | # make up for that
35 | wav = np.concatenate((wav, np.zeros(sampling_rate // 2)))
36 | sd.play(wav, sampling_rate, blocking=blocking)
37 | except Exception as e:
38 | print("Failed to play audio: %s" % repr(e))
39 |
40 |
41 | def plot_similarity_matrix(matrix, labels_a=None, labels_b=None, ax: plt.Axes=None, title=""):
42 | if ax is None:
43 | _, ax = plt.subplots()
44 | fig = plt.gcf()
45 |
46 | img = ax.matshow(matrix, extent=(-0.5, matrix.shape[0] - 0.5,
47 | -0.5, matrix.shape[1] - 0.5))
48 |
49 | ax.xaxis.set_ticks_position("bottom")
50 | if labels_a is not None:
51 | ax.set_xticks(range(len(labels_a)))
52 | ax.set_xticklabels(labels_a, rotation=90)
53 | if labels_b is not None:
54 | ax.set_yticks(range(len(labels_b)))
55 | ax.set_yticklabels(labels_b[::-1]) # Upper origin -> reverse y axis
56 | ax.set_title(title)
57 |
58 | cax = make_axes_locatable(ax).append_axes("right", size="5%", pad=0.15)
59 | fig.colorbar(img, cax=cax, ticks=np.linspace(0.4, 1, 7))
60 | img.set_clim(0.4, 1)
61 | img.set_cmap("inferno")
62 |
63 | return ax
64 |
65 |
66 | def plot_histograms(all_samples, ax=None, names=None, title=""):
67 | """
68 | Plots (possibly) overlapping histograms and their median
69 | """
70 | if ax is None:
71 | _, ax = plt.subplots()
72 |
73 | for samples, color, name in zip(all_samples, _default_colors, names):
74 | ax.hist(samples, density=True, color=color + "80", label=name)
75 | ax.legend()
76 | ax.set_xlim(0.35, 1)
77 | ax.set_yticks([])
78 | ax.set_title(title)
79 |
80 | ylim = ax.get_ylim()
81 | ax.set_ylim(*ylim) # Yeah, I know
82 | for samples, color in zip(all_samples, _default_colors):
83 | median = np.median(samples)
84 | ax.vlines(median, *ylim, color, "dashed")
85 | ax.text(median, ylim[1] * 0.15, "median", rotation=270, color=color)
86 |
87 | return ax
88 |
89 |
90 | def plot_projections(embeds, speakers, ax=None, colors=None, markers=None, legend=True,
91 | title="", **kwargs):
92 | if ax is None:
93 | _, ax = plt.subplots(figsize=(6, 6))
94 |
95 | # Compute the 2D projections. You could also project to another number of dimensions (e.g.
96 | # for a 3D plot) or use a different different dimensionality reduction like PCA or TSNE.
97 | reducer = UMAP(**kwargs)
98 | projs = reducer.fit_transform(embeds)
99 |
100 | # Draw the projections
101 | speakers = np.array(speakers)
102 | colors = colors or _my_colors
103 | for i, speaker in enumerate(np.unique(speakers)):
104 | speaker_projs = projs[speakers == speaker]
105 | marker = "o" if markers is None else markers[i]
106 | label = speaker if legend else None
107 | ax.scatter(*speaker_projs.T, c=[colors[i]], marker=marker, label=label)
108 |
109 | if legend:
110 | ax.legend(title="Speakers", ncol=2)
111 | ax.set_title(title)
112 | ax.set_xticks([])
113 | ax.set_yticks([])
114 | ax.set_aspect("equal")
115 |
116 | return projs
117 |
118 |
119 | def interactive_diarization(similarity_dict, wav, wav_splits, x_crop=5, show_time=False):
120 | fig, ax = plt.subplots()
121 | lines = [ax.plot([], [], label=name)[0] for name in similarity_dict.keys()]
122 | text = ax.text(0, 0, "", fontsize=10)
123 |
124 | def init():
125 | ax.set_ylim(0.4, 1)
126 | ax.set_ylabel("Similarity")
127 | if show_time:
128 | ax.set_xlabel("Time (seconds)")
129 | else:
130 | ax.set_xticks([])
131 | ax.set_title("Diarization")
132 | ax.legend(loc="lower right")
133 | return lines + [text]
134 |
135 | times = [((s.start + s.stop) / 2) / sampling_rate for s in wav_splits]
136 | rate = 1 / (times[1] - times[0])
137 | crop_range = int(np.round(x_crop * rate))
138 | ticks = np.arange(0, len(wav_splits), rate)
139 | ref_time = timer()
140 |
141 | def update(i):
142 | # Crop plot
143 | crop = (max(i - crop_range // 2, 0), i + crop_range // 2)
144 | ax.set_xlim(i - crop_range // 2, crop[1])
145 | if show_time:
146 | crop_ticks = ticks[(crop[0] <= ticks) * (ticks <= crop[1])]
147 | ax.set_xticks(crop_ticks)
148 | ax.set_xticklabels(np.round(crop_ticks / rate).astype(np.int))
149 |
150 | # Plot the prediction
151 | similarities = [s[i] for s in similarity_dict.values()]
152 | best = np.argmax(similarities)
153 | name, similarity = list(similarity_dict.keys())[best], similarities[best]
154 | if similarity > 0.75:
155 | message = "Speaker: %s (confident)" % name
156 | color = _default_colors[best]
157 | elif similarity > 0.65:
158 | message = "Speaker: %s (uncertain)" % name
159 | color = _default_colors[best]
160 | else:
161 | message = "Unknown/No speaker"
162 | color = "black"
163 | text.set_text(message)
164 | text.set_c(color)
165 | text.set_position((i, 0.96))
166 |
167 | # Plot data
168 | for line, (name, similarities) in zip(lines, similarity_dict.items()):
169 | line.set_data(range(crop[0], i + 1), similarities[crop[0]:i + 1])
170 |
171 | # Block to synchronize with the audio (interval is not reliable)
172 | current_time = timer() - ref_time
173 | if current_time < times[i]:
174 | sleep(times[i] - current_time)
175 | elif current_time - 0.2 > times[i]:
176 | print("Animation is delayed further than 200ms!", file=stderr)
177 | return lines + [text]
178 |
179 | ani = FuncAnimation(fig, update, frames=len(wav_splits), init_func=init, blit=not show_time,
180 | repeat=False, interval=1)
181 | play_wav(wav, blocking=False)
182 | plt.show()
183 |
184 |
185 | def plot_embedding_as_heatmap(embed, ax=None, title="", shape=None, color_range=(0, 0.30)):
186 | if ax is None:
187 | _, ax = plt.subplots()
188 |
189 | if shape is None:
190 | height = int(np.sqrt(len(embed)))
191 | shape = (height, -1)
192 | embed = embed.reshape(shape)
193 |
194 | cmap = cm.get_cmap()
195 | mappable = ax.imshow(embed, cmap=cmap)
196 | cbar = plt.colorbar(mappable, ax=ax, fraction=0.046, pad=0.04)
197 | cbar.set_clim(*color_range)
198 |
199 | ax.set_xticks([]), ax.set_yticks([])
200 | ax.set_title(title)
201 |
202 |
--------------------------------------------------------------------------------
/plots/all_clustering.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/all_clustering.png
--------------------------------------------------------------------------------
/plots/clustering_sex.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/clustering_sex.png
--------------------------------------------------------------------------------
/plots/clustering_speaker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/clustering_speaker.png
--------------------------------------------------------------------------------
/plots/fake_speech_detection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/fake_speech_detection.png
--------------------------------------------------------------------------------
/plots/sim_matrix_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/sim_matrix_1.png
--------------------------------------------------------------------------------
/plots/sim_matrix_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/sim_matrix_2.png
--------------------------------------------------------------------------------
/plots/sim_matrix_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/plots/sim_matrix_3.png
--------------------------------------------------------------------------------
/requirements_demos.txt:
--------------------------------------------------------------------------------
1 | librosa>=0.9.1
2 | numpy>=1.20.0
3 | webrtcvad>=2.0.10
4 | torch>=1.0.1
5 | scipy>=1.2.1
6 | typing
7 | matplotlib>=3.0.0
8 | sounddevice
9 | tqdm
10 | umap-learn
11 |
--------------------------------------------------------------------------------
/requirements_package.txt:
--------------------------------------------------------------------------------
1 | librosa>=0.9.1
2 | numpy>=1.20.0
3 | webrtcvad>=2.0.10
4 | torch>=1.0.1
5 | scipy>=1.2.1
6 | typing
7 |
--------------------------------------------------------------------------------
/resemblyzer/__init__.py:
--------------------------------------------------------------------------------
1 | name = "resemblyzer"
2 |
3 | from resemblyzer.audio import preprocess_wav, wav_to_mel_spectrogram, trim_long_silences, \
4 | normalize_volume
5 | from resemblyzer.hparams import sampling_rate
6 | from resemblyzer.voice_encoder import VoiceEncoder
7 |
--------------------------------------------------------------------------------
/resemblyzer/audio.py:
--------------------------------------------------------------------------------
1 | from scipy.ndimage.morphology import binary_dilation
2 | from resemblyzer.hparams import *
3 | from pathlib import Path
4 | from typing import Optional, Union
5 | import numpy as np
6 | import webrtcvad
7 | import librosa
8 | import struct
9 |
10 | int16_max = (2 ** 15) - 1
11 |
12 |
13 | def preprocess_wav(fpath_or_wav: Union[str, Path, np.ndarray], source_sr: Optional[int]=None):
14 | """
15 | Applies preprocessing operations to a waveform either on disk or in memory such that
16 | The waveform will be resampled to match the data hyperparameters.
17 |
18 | :param fpath_or_wav: either a filepath to an audio file (many extensions are supported, not
19 | just .wav), either the waveform as a numpy array of floats.
20 | :param source_sr: if passing an audio waveform, the sampling rate of the waveform before
21 | preprocessing. After preprocessing, the waveform'speaker sampling rate will match the data
22 | hyperparameters. If passing a filepath, the sampling rate will be automatically detected and
23 | this argument will be ignored.
24 | """
25 | # Load the wav from disk if needed
26 | if isinstance(fpath_or_wav, str) or isinstance(fpath_or_wav, Path):
27 | wav, source_sr = librosa.load(str(fpath_or_wav), sr=None)
28 | else:
29 | wav = fpath_or_wav
30 |
31 | # Resample the wav
32 | if source_sr is not None:
33 | wav = librosa.resample(wav, orig_sr=source_sr, target_sr=sampling_rate)
34 |
35 | # Apply the preprocessing: normalize volume and shorten long silences
36 | wav = normalize_volume(wav, audio_norm_target_dBFS, increase_only=True)
37 | wav = trim_long_silences(wav)
38 |
39 | return wav
40 |
41 |
42 | def wav_to_mel_spectrogram(wav):
43 | """
44 | Derives a mel spectrogram ready to be used by the encoder from a preprocessed audio waveform.
45 | Note: this not a log-mel spectrogram.
46 | """
47 | frames = librosa.feature.melspectrogram(
48 | y=wav,
49 | sr=sampling_rate,
50 | n_fft=int(sampling_rate * mel_window_length / 1000),
51 | hop_length=int(sampling_rate * mel_window_step / 1000),
52 | n_mels=mel_n_channels
53 | )
54 | return frames.astype(np.float32).T
55 |
56 |
57 | def trim_long_silences(wav):
58 | """
59 | Ensures that segments without voice in the waveform remain no longer than a
60 | threshold determined by the VAD parameters in params.py.
61 |
62 | :param wav: the raw waveform as a numpy array of floats
63 | :return: the same waveform with silences trimmed away (length <= original wav length)
64 | """
65 | # Compute the voice detection window size
66 | samples_per_window = (vad_window_length * sampling_rate) // 1000
67 |
68 | # Trim the end of the audio to have a multiple of the window size
69 | wav = wav[:len(wav) - (len(wav) % samples_per_window)]
70 |
71 | # Convert the float waveform to 16-bit mono PCM
72 | pcm_wave = struct.pack("%dh" % len(wav), *(np.round(wav * int16_max)).astype(np.int16))
73 |
74 | # Perform voice activation detection
75 | voice_flags = []
76 | vad = webrtcvad.Vad(mode=3)
77 | for window_start in range(0, len(wav), samples_per_window):
78 | window_end = window_start + samples_per_window
79 | voice_flags.append(vad.is_speech(pcm_wave[window_start * 2:window_end * 2],
80 | sample_rate=sampling_rate))
81 | voice_flags = np.array(voice_flags)
82 |
83 | # Smooth the voice detection with a moving average
84 | def moving_average(array, width):
85 | array_padded = np.concatenate((np.zeros((width - 1) // 2), array, np.zeros(width // 2)))
86 | ret = np.cumsum(array_padded, dtype=float)
87 | ret[width:] = ret[width:] - ret[:-width]
88 | return ret[width - 1:] / width
89 |
90 | audio_mask = moving_average(voice_flags, vad_moving_average_width)
91 | audio_mask = np.round(audio_mask).astype(bool)
92 |
93 | # Dilate the voiced regions
94 | audio_mask = binary_dilation(audio_mask, np.ones(vad_max_silence_length + 1))
95 | audio_mask = np.repeat(audio_mask, samples_per_window)
96 |
97 | return wav[audio_mask == True]
98 |
99 |
100 | def normalize_volume(wav, target_dBFS, increase_only=False, decrease_only=False):
101 | if increase_only and decrease_only:
102 | raise ValueError("Both increase only and decrease only are set")
103 | rms = np.sqrt(np.mean((wav * int16_max) ** 2))
104 | wave_dBFS = 20 * np.log10(rms / int16_max)
105 | dBFS_change = target_dBFS - wave_dBFS
106 | if dBFS_change < 0 and increase_only or dBFS_change > 0 and decrease_only:
107 | return wav
108 | return wav * (10 ** (dBFS_change / 20))
109 |
--------------------------------------------------------------------------------
/resemblyzer/hparams.py:
--------------------------------------------------------------------------------
1 |
2 | ## Mel-filterbank
3 | mel_window_length = 25 # In milliseconds
4 | mel_window_step = 10 # In milliseconds
5 | mel_n_channels = 40
6 |
7 |
8 | ## Audio
9 | sampling_rate = 16000
10 | # Number of spectrogram frames in a partial utterance
11 | partials_n_frames = 160 # 1600 ms
12 |
13 |
14 | ## Voice Activation Detection
15 | # Window size of the VAD. Must be either 10, 20 or 30 milliseconds.
16 | # This sets the granularity of the VAD. Should not need to be changed.
17 | vad_window_length = 30 # In milliseconds
18 | # Number of frames to average together when performing the moving average smoothing.
19 | # The larger this value, the larger the VAD variations must be to not get smoothed out.
20 | vad_moving_average_width = 8
21 | # Maximum number of consecutive silent frames a segment can have.
22 | vad_max_silence_length = 6
23 |
24 |
25 | ## Audio volume normalization
26 | audio_norm_target_dBFS = -30
27 |
28 |
29 | ## Model parameters
30 | model_hidden_size = 256
31 | model_embedding_size = 256
32 | model_num_layers = 3
33 |
34 |
--------------------------------------------------------------------------------
/resemblyzer/pretrained.pt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/resemble-ai/Resemblyzer/15d828edebe06bc72b9cabc8ef8ca5ab2cb457ce/resemblyzer/pretrained.pt
--------------------------------------------------------------------------------
/resemblyzer/voice_encoder.py:
--------------------------------------------------------------------------------
1 | from resemblyzer.hparams import *
2 | from resemblyzer import audio
3 | from pathlib import Path
4 | from typing import Union, List
5 | from torch import nn
6 | from time import perf_counter as timer
7 | import numpy as np
8 | import torch
9 |
10 |
11 | class VoiceEncoder(nn.Module):
12 | def __init__(self, device: Union[str, torch.device]=None, verbose=True, weights_fpath: Union[Path, str]=None):
13 | """
14 | If None, defaults to cuda if it is available on your machine, otherwise the model will
15 | run on cpu. Outputs are always returned on the cpu, as numpy arrays.
16 | :param weights_fpath: path to ".pt" file path.
17 | If None, defaults to built-in "pretrained.pt" model
18 | """
19 | super().__init__()
20 |
21 | # Define the network
22 | self.lstm = nn.LSTM(mel_n_channels, model_hidden_size, model_num_layers, batch_first=True)
23 | self.linear = nn.Linear(model_hidden_size, model_embedding_size)
24 | self.relu = nn.ReLU()
25 |
26 | # Get the target device
27 | if device is None:
28 | device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
29 | elif isinstance(device, str):
30 | device = torch.device(device)
31 | self.device = device
32 |
33 | # Load the pretrained model'speaker weights
34 | if weights_fpath is None:
35 | weights_fpath = Path(__file__).resolve().parent.joinpath("pretrained.pt")
36 | else:
37 | weights_fpath = Path(weights_fpath)
38 |
39 | if not weights_fpath.exists():
40 | raise Exception("Couldn't find the voice encoder pretrained model at %s." %
41 | weights_fpath)
42 | start = timer()
43 | checkpoint = torch.load(weights_fpath, map_location="cpu")
44 | self.load_state_dict(checkpoint["model_state"], strict=False)
45 | self.to(device)
46 |
47 | if verbose:
48 | print("Loaded the voice encoder model on %s in %.2f seconds." %
49 | (device.type, timer() - start))
50 |
51 | def forward(self, mels: torch.FloatTensor):
52 | """
53 | Computes the embeddings of a batch of utterance spectrograms.
54 |
55 | :param mels: a batch of mel spectrograms of same duration as a float32 tensor of shape
56 | (batch_size, n_frames, n_channels)
57 | :return: the embeddings as a float 32 tensor of shape (batch_size, embedding_size).
58 | Embeddings are positive and L2-normed, thus they lay in the range [0, 1].
59 | """
60 | # Pass the input through the LSTM layers and retrieve the final hidden state of the last
61 | # layer. Apply a cutoff to 0 for negative values and L2 normalize the embeddings.
62 | _, (hidden, _) = self.lstm(mels)
63 | embeds_raw = self.relu(self.linear(hidden[-1]))
64 | return embeds_raw / torch.norm(embeds_raw, dim=1, keepdim=True)
65 |
66 | @staticmethod
67 | def compute_partial_slices(n_samples: int, rate, min_coverage):
68 | """
69 | Computes where to split an utterance waveform and its corresponding mel spectrogram to
70 | obtain partial utterances of each. Both the waveform and the
71 | mel spectrogram slices are returned, so as to make each partial utterance waveform
72 | correspond to its spectrogram.
73 |
74 | The returned ranges may be indexing further than the length of the waveform. It is
75 | recommended that you pad the waveform with zeros up to wav_slices[-1].stop.
76 |
77 | :param n_samples: the number of samples in the waveform
78 | :param rate: how many partial utterances should occur per second. Partial utterances must
79 | cover the span of the entire utterance, thus the rate should not be lower than the inverse
80 | of the duration of a partial utterance. By default, partial utterances are 1.6s long and
81 | the minimum rate is thus 0.625.
82 | :param min_coverage: when reaching the last partial utterance, it may or may not have
83 | enough frames. If at least of are present,
84 | then the last partial utterance will be considered by zero-padding the audio. Otherwise,
85 | it will be discarded. If there aren't enough frames for one partial utterance,
86 | this parameter is ignored so that the function always returns at least one slice.
87 | :return: the waveform slices and mel spectrogram slices as lists of array slices. Index
88 | respectively the waveform and the mel spectrogram with these slices to obtain the partial
89 | utterances.
90 | """
91 | assert 0 < min_coverage <= 1
92 |
93 | # Compute how many frames separate two partial utterances
94 | samples_per_frame = int((sampling_rate * mel_window_step / 1000))
95 | n_frames = int(np.ceil((n_samples + 1) / samples_per_frame))
96 | frame_step = int(np.round((sampling_rate / rate) / samples_per_frame))
97 | assert 0 < frame_step, "The rate is too high"
98 | assert frame_step <= partials_n_frames, "The rate is too low, it should be %f at least" % \
99 | (sampling_rate / (samples_per_frame * partials_n_frames))
100 |
101 | # Compute the slices
102 | wav_slices, mel_slices = [], []
103 | steps = max(1, n_frames - partials_n_frames + frame_step + 1)
104 | for i in range(0, steps, frame_step):
105 | mel_range = np.array([i, i + partials_n_frames])
106 | wav_range = mel_range * samples_per_frame
107 | mel_slices.append(slice(*mel_range))
108 | wav_slices.append(slice(*wav_range))
109 |
110 | # Evaluate whether extra padding is warranted or not
111 | last_wav_range = wav_slices[-1]
112 | coverage = (n_samples - last_wav_range.start) / (last_wav_range.stop - last_wav_range.start)
113 | if coverage < min_coverage and len(mel_slices) > 1:
114 | mel_slices = mel_slices[:-1]
115 | wav_slices = wav_slices[:-1]
116 |
117 | return wav_slices, mel_slices
118 |
119 | def embed_utterance(self, wav: np.ndarray, return_partials=False, rate=1.3, min_coverage=0.75):
120 | """
121 | Computes an embedding for a single utterance. The utterance is divided in partial
122 | utterances and an embedding is computed for each. The complete utterance embedding is the
123 | L2-normed average embedding of the partial utterances.
124 |
125 | TODO: independent batched version of this function
126 |
127 | :param wav: a preprocessed utterance waveform as a numpy array of float32
128 | :param return_partials: if True, the partial embeddings will also be returned along with
129 | the wav slices corresponding to each partial utterance.
130 | :param rate: how many partial utterances should occur per second. Partial utterances must
131 | cover the span of the entire utterance, thus the rate should not be lower than the inverse
132 | of the duration of a partial utterance. By default, partial utterances are 1.6s long and
133 | the minimum rate is thus 0.625.
134 | :param min_coverage: when reaching the last partial utterance, it may or may not have
135 | enough frames. If at least of are present,
136 | then the last partial utterance will be considered by zero-padding the audio. Otherwise,
137 | it will be discarded. If there aren't enough frames for one partial utterance,
138 | this parameter is ignored so that the function always returns at least one slice.
139 | :return: the embedding as a numpy array of float32 of shape (model_embedding_size,). If
140 | is True, the partial utterances as a numpy array of float32 of shape
141 | (n_partials, model_embedding_size) and the wav partials as a list of slices will also be
142 | returned.
143 | """
144 | # Compute where to split the utterance into partials and pad the waveform with zeros if
145 | # the partial utterances cover a larger range.
146 | wav_slices, mel_slices = self.compute_partial_slices(len(wav), rate, min_coverage)
147 | max_wave_length = wav_slices[-1].stop
148 | if max_wave_length >= len(wav):
149 | wav = np.pad(wav, (0, max_wave_length - len(wav)), "constant")
150 |
151 | # Split the utterance into partials and forward them through the model
152 | mel = audio.wav_to_mel_spectrogram(wav)
153 | mels = np.array([mel[s] for s in mel_slices])
154 | with torch.no_grad():
155 | mels = torch.from_numpy(mels).to(self.device)
156 | partial_embeds = self(mels).cpu().numpy()
157 |
158 | # Compute the utterance embedding from the partial embeddings
159 | raw_embed = np.mean(partial_embeds, axis=0)
160 | embed = raw_embed / np.linalg.norm(raw_embed, 2)
161 |
162 | if return_partials:
163 | return embed, partial_embeds, wav_slices
164 | return embed
165 |
166 | def embed_speaker(self, wavs: List[np.ndarray], **kwargs):
167 | """
168 | Compute the embedding of a collection of wavs (presumably from the same speaker) by
169 | averaging their embedding and L2-normalizing it.
170 |
171 | :param wavs: list of wavs a numpy arrays of float32.
172 | :param kwargs: extra arguments to embed_utterance()
173 | :return: the embedding as a numpy array of float32 of shape (model_embedding_size,).
174 | """
175 | raw_embed = np.mean([self.embed_utterance(wav, return_partials=False, **kwargs) \
176 | for wav in wavs], axis=0)
177 | return raw_embed / np.linalg.norm(raw_embed, 2)
178 |
--------------------------------------------------------------------------------
/setup.py:
--------------------------------------------------------------------------------
1 | from setuptools import setup, find_packages
2 |
3 | with open("README.md", "r") as f:
4 | long_description = f.read()
5 |
6 | with open("requirements_package.txt", "r") as f:
7 | requirements = f.read().splitlines()
8 |
9 | setup(
10 | name="Resemblyzer",
11 | version="0.1.4",
12 | packages=find_packages(),
13 | package_data={
14 | "resemblyzer": ["pretrained.pt"]
15 | },
16 | python_requires=">=3.5",
17 | install_requires=requirements,
18 | author="Corentin Jemine",
19 | author_email="corentin@resemble.ai",
20 | description="Analyze and compare voices with deep learning",
21 | long_description=long_description,
22 | long_description_content_type="text/markdown",
23 | url="https://github.com/resemble-ai/Resemblyzer",
24 | classifiers=[
25 | "Programming Language :: Python :: 3",
26 | "License :: OSI Approved :: Apache Software License",
27 | "Operating System :: OS Independent",
28 | ],
29 | )
30 |
--------------------------------------------------------------------------------