🚩 Create a free WhyLabs account to get more value out of whylogs!
Did you know you can store, visualize, and monitor whylogs profiles with the WhyLabs Observability Platform? Sign up for a free WhyLabs account to leverage the power of whylogs and WhyLabs together!
This notebook demonstrates how to extract features from audio samples for the purpose of monitoring for drift/quality.
For a full list of features that we extract and in-depth explanation of the pyAudioAnalysis set up, please refer to this blog post by the pyAudioAnalysis author: https://medium.com/behavioral-signals-ai/intro-to-audio-analysis-recognizing-sounds-using-machine-learning-20fd646a0ec5
# Note: you may need to restart the kernel to use updated packages.
%pip install whylogs pyAudioAnalysis eyed3 pydub
[notice] A new release of pip available: 22.3.1 -> 23.0 [notice] To update, run: pip install --upgrade pip Note: you may need to restart the kernel to use updated packages.
We will use Kaggle to get audio samples from a public Audio MNIST dataset.
To set up Kaggle in Colab: https://www.kaggle.com/general/74235
! pip install -q kaggle
from google.colab import files
files.upload()
! kaggle datasets download -d joserzapata/free-spoken-digit-dataset-fsdd
Downloading free-spoken-digit-dataset-fsdd.zip to /content 32% 5.00M/15.5M [00:00<00:00, 34.9MB/s] 100% 15.5M/15.5M [00:00<00:00, 67.7MB/s]
!unzip -q /content/free-spoken-digit-dataset-fsdd.zip -d .
replace ./.gitignore? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
# This cell is optional and specific to the Kaggle dataset we are using
# The dataset contains audio samples of the format [digit]_speaker_sampleNum.wav
# Example: 0_lucas_21.wav is the speaker Lucas saying digit ZERO, 21st sample
# There are 500 samples total per speaker (50 for each digit between 0 and 9)
# We will organize the data by speaker for demo purposes, all samples
# from a specific speaker will be in a dedicated directory
import os
import shutil
speakers = ["theo", "george", "jackson", "lucas", "nicolas", "yweweler"]
for speaker in speakers:
path = os.path.join("/content/recordings", speaker)
os.mkdir(path)
for filename in os.listdir("/content/recordings"):
parts = filename.split("_")
if(len(parts) > 1):
shutil.move(os.path.join("/content/recordings/", filename), "/content/recordings/"+parts[1])
# Set up the WhyLabs environment
# The model type can be set as "Other"
# Documentation: https://docs.whylabs.ai/docs/whylabs-onboarding
import getpass
import os
# set your org-id here - should be something like "org-xxxx"
print("Enter your WhyLabs Org ID")
os.environ["WHYLABS_DEFAULT_ORG_ID"] = input()
# set your datased_id (or model_id) here - should be something like "model-xxxx"
print("Enter your WhyLabs Dataset ID")
os.environ["WHYLABS_DEFAULT_DATASET_ID"] = input()
# set your API key here
print("Enter your WhyLabs API key")
os.environ["WHYLABS_API_KEY"] = getpass.getpass()
print("Using API Key ID: ", os.environ["WHYLABS_API_KEY"][0:10])
# Set up the audio feature extraction step with pyAudioAnalysis
# https://medium.com/behavioral-signals-ai/intro-to-audio-analysis-recognizing-sounds-using-machine-learning-20fd646a0ec5
from pyAudioAnalysis import MidTermFeatures as aF
import os
import numpy as np
import plotly.graph_objs as go
import plotly
import pandas as pd
# This example will focus on just one speaker, but can be set up with
# multiple directories
dirs = ["/content/recordings/george"]
# The feature extraction has the following parameters:
# the mid-term window size (mw)
# the mid-term step size (ms)
# the short-term window size (sw)
# and the short-term step size (ss)
# These windows can be configured depending on the side of each audio sample
m_win, m_step, s_win, s_step = 0.5, 0.5, 0.1, 0.05
# segment-level feature extraction:
features = []
for d in dirs: # get feature matrix for each directory
f, files, fn = aF.directory_feature_extraction(d, m_win, m_step,
s_win, s_step)
features.append(f)
# (each element of the features list contains a
# (samples x segment features) = (N x 138) feature matrix)
# Create a dataframe from the resulting features
df = pd.DataFrame(f, columns = fn)
# Now that we have all features extracted, we have a dataframe where features
# are columns and samples are rows.
# We will use whylogs to profile the features dataframe to extract key statistics
# that we will tracking using the WhyLabs monitoring platform
# whylogs documentation: https://github.com/whylabs/whylogs
import whylogs as why
from datetime import datetime, timedelta, timezone
# We are setting the date of profiling for easier navigation in the
# WhyLabs platform
current_date = datetime.now(timezone.utc)
profile = why.log(df).profile()
profile.set_dataset_timestamp(current_date)
# As a final step, we write the resulting feature profile to the WhyLabs platform
# To see the result, log into https://hub.whylabsapp.com/ and navigate to the
# model you specified in the "Set up the WhyLabs environment" step
from whylogs.api.writer.whylabs import WhyLabsWriter
# Write the log to the WhyLabs platform
writer = WhyLabsWriter()
writer.write(file=profile.view())
(True, 'OK')
# Optional: Extract features from samples generated by another speaker
# Submit profiles to the WhyLabs platform to compare feature differences
# between two speakers
#https://medium.com/behavioral-signals-ai/intro-to-audio-analysis-recognizing-sounds-using-machine-learning-20fd646a0ec5
dirs = ["/content/recordings/lucas"]
m_win, m_step, s_win, s_step = 0.5, 0.5, 0.1, 0.05
# segment-level feature extraction:
features = []
for d in dirs: # get feature matrix for each directory
f, files, fn = aF.directory_feature_extraction(d, m_win, m_step,
s_win, s_step)
features.append(f)
# (each element of the features list contains a
# (samples x segment features) = (10 x 138) feature matrix)
df_lucas = pd.DataFrame(f, columns = fn)
yesterday_date = datetime.now() - timedelta(days=1)
profile = why.log(df_lucas).profile()
profile.set_dataset_timestamp(yesterday_date)
writer = WhyLabsWriter()
writer.write(file=profile.view())
Analyzing file 1 of 500: /content/recordings/lucas/0_lucas_0.wav Analyzing file 2 of 500: /content/recordings/lucas/0_lucas_1.wav Analyzing file 3 of 500: /content/recordings/lucas/0_lucas_10.wav Analyzing file 4 of 500: /content/recordings/lucas/0_lucas_11.wav Analyzing file 5 of 500: /content/recordings/lucas/0_lucas_12.wav Analyzing file 6 of 500: /content/recordings/lucas/0_lucas_13.wav Analyzing file 7 of 500: /content/recordings/lucas/0_lucas_14.wav Analyzing file 8 of 500: /content/recordings/lucas/0_lucas_15.wav Analyzing file 9 of 500: /content/recordings/lucas/0_lucas_16.wav Analyzing file 10 of 500: /content/recordings/lucas/0_lucas_17.wav Analyzing file 11 of 500: /content/recordings/lucas/0_lucas_18.wav Analyzing file 12 of 500: /content/recordings/lucas/0_lucas_19.wav Analyzing file 13 of 500: /content/recordings/lucas/0_lucas_2.wav Analyzing file 14 of 500: /content/recordings/lucas/0_lucas_20.wav Analyzing file 15 of 500: /content/recordings/lucas/0_lucas_21.wav Analyzing file 16 of 500: /content/recordings/lucas/0_lucas_22.wav Analyzing file 17 of 500: /content/recordings/lucas/0_lucas_23.wav Analyzing file 18 of 500: /content/recordings/lucas/0_lucas_24.wav Analyzing file 19 of 500: /content/recordings/lucas/0_lucas_25.wav Analyzing file 20 of 500: /content/recordings/lucas/0_lucas_26.wav Analyzing file 21 of 500: /content/recordings/lucas/0_lucas_27.wav Analyzing file 22 of 500: /content/recordings/lucas/0_lucas_28.wav Analyzing file 23 of 500: /content/recordings/lucas/0_lucas_29.wav Analyzing file 24 of 500: /content/recordings/lucas/0_lucas_3.wav Analyzing file 25 of 500: /content/recordings/lucas/0_lucas_30.wav Analyzing file 26 of 500: /content/recordings/lucas/0_lucas_31.wav Analyzing file 27 of 500: /content/recordings/lucas/0_lucas_32.wav Analyzing file 28 of 500: /content/recordings/lucas/0_lucas_33.wav Analyzing file 29 of 500: /content/recordings/lucas/0_lucas_34.wav Analyzing file 30 of 500: /content/recordings/lucas/0_lucas_35.wav Analyzing file 31 of 500: /content/recordings/lucas/0_lucas_36.wav Analyzing file 32 of 500: /content/recordings/lucas/0_lucas_37.wav Analyzing file 33 of 500: /content/recordings/lucas/0_lucas_38.wav Analyzing file 34 of 500: /content/recordings/lucas/0_lucas_39.wav Analyzing file 35 of 500: /content/recordings/lucas/0_lucas_4.wav Analyzing file 36 of 500: /content/recordings/lucas/0_lucas_40.wav Analyzing file 37 of 500: /content/recordings/lucas/0_lucas_41.wav Analyzing file 38 of 500: /content/recordings/lucas/0_lucas_42.wav Analyzing file 39 of 500: /content/recordings/lucas/0_lucas_43.wav Analyzing file 40 of 500: /content/recordings/lucas/0_lucas_44.wav Analyzing file 41 of 500: /content/recordings/lucas/0_lucas_45.wav Analyzing file 42 of 500: /content/recordings/lucas/0_lucas_46.wav Analyzing file 43 of 500: /content/recordings/lucas/0_lucas_47.wav Analyzing file 44 of 500: /content/recordings/lucas/0_lucas_48.wav Analyzing file 45 of 500: /content/recordings/lucas/0_lucas_49.wav Analyzing file 46 of 500: /content/recordings/lucas/0_lucas_5.wav Analyzing file 47 of 500: /content/recordings/lucas/0_lucas_6.wav Analyzing file 48 of 500: /content/recordings/lucas/0_lucas_7.wav Analyzing file 49 of 500: /content/recordings/lucas/0_lucas_8.wav Analyzing file 50 of 500: /content/recordings/lucas/0_lucas_9.wav Analyzing file 51 of 500: /content/recordings/lucas/1_lucas_0.wav Analyzing file 52 of 500: /content/recordings/lucas/1_lucas_1.wav Analyzing file 53 of 500: /content/recordings/lucas/1_lucas_10.wav Analyzing file 54 of 500: /content/recordings/lucas/1_lucas_11.wav Analyzing file 55 of 500: /content/recordings/lucas/1_lucas_12.wav Analyzing file 56 of 500: /content/recordings/lucas/1_lucas_13.wav Analyzing file 57 of 500: /content/recordings/lucas/1_lucas_14.wav Analyzing file 58 of 500: /content/recordings/lucas/1_lucas_15.wav Analyzing file 59 of 500: /content/recordings/lucas/1_lucas_16.wav Analyzing file 60 of 500: /content/recordings/lucas/1_lucas_17.wav Analyzing file 61 of 500: /content/recordings/lucas/1_lucas_18.wav Analyzing file 62 of 500: /content/recordings/lucas/1_lucas_19.wav Analyzing file 63 of 500: /content/recordings/lucas/1_lucas_2.wav Analyzing file 64 of 500: /content/recordings/lucas/1_lucas_20.wav Analyzing file 65 of 500: /content/recordings/lucas/1_lucas_21.wav Analyzing file 66 of 500: /content/recordings/lucas/1_lucas_22.wav Analyzing file 67 of 500: /content/recordings/lucas/1_lucas_23.wav Analyzing file 68 of 500: /content/recordings/lucas/1_lucas_24.wav Analyzing file 69 of 500: /content/recordings/lucas/1_lucas_25.wav Analyzing file 70 of 500: /content/recordings/lucas/1_lucas_26.wav Analyzing file 71 of 500: /content/recordings/lucas/1_lucas_27.wav Analyzing file 72 of 500: /content/recordings/lucas/1_lucas_28.wav Analyzing file 73 of 500: /content/recordings/lucas/1_lucas_29.wav Analyzing file 74 of 500: /content/recordings/lucas/1_lucas_3.wav Analyzing file 75 of 500: /content/recordings/lucas/1_lucas_30.wav Analyzing file 76 of 500: /content/recordings/lucas/1_lucas_31.wav Analyzing file 77 of 500: /content/recordings/lucas/1_lucas_32.wav Analyzing file 78 of 500: /content/recordings/lucas/1_lucas_33.wav Analyzing file 79 of 500: /content/recordings/lucas/1_lucas_34.wav Analyzing file 80 of 500: /content/recordings/lucas/1_lucas_35.wav Analyzing file 81 of 500: /content/recordings/lucas/1_lucas_36.wav Analyzing file 82 of 500: /content/recordings/lucas/1_lucas_37.wav Analyzing file 83 of 500: /content/recordings/lucas/1_lucas_38.wav Analyzing file 84 of 500: /content/recordings/lucas/1_lucas_39.wav Analyzing file 85 of 500: /content/recordings/lucas/1_lucas_4.wav Analyzing file 86 of 500: /content/recordings/lucas/1_lucas_40.wav Analyzing file 87 of 500: /content/recordings/lucas/1_lucas_41.wav Analyzing file 88 of 500: /content/recordings/lucas/1_lucas_42.wav Analyzing file 89 of 500: /content/recordings/lucas/1_lucas_43.wav Analyzing file 90 of 500: /content/recordings/lucas/1_lucas_44.wav Analyzing file 91 of 500: /content/recordings/lucas/1_lucas_45.wav Analyzing file 92 of 500: /content/recordings/lucas/1_lucas_46.wav Analyzing file 93 of 500: /content/recordings/lucas/1_lucas_47.wav Analyzing file 94 of 500: /content/recordings/lucas/1_lucas_48.wav Analyzing file 95 of 500: /content/recordings/lucas/1_lucas_49.wav Analyzing file 96 of 500: /content/recordings/lucas/1_lucas_5.wav Analyzing file 97 of 500: /content/recordings/lucas/1_lucas_6.wav Analyzing file 98 of 500: /content/recordings/lucas/1_lucas_7.wav Analyzing file 99 of 500: /content/recordings/lucas/1_lucas_8.wav Analyzing file 100 of 500: /content/recordings/lucas/1_lucas_9.wav Analyzing file 101 of 500: /content/recordings/lucas/2_lucas_0.wav Analyzing file 102 of 500: /content/recordings/lucas/2_lucas_1.wav Analyzing file 103 of 500: /content/recordings/lucas/2_lucas_10.wav Analyzing file 104 of 500: /content/recordings/lucas/2_lucas_11.wav Analyzing file 105 of 500: /content/recordings/lucas/2_lucas_12.wav Analyzing file 106 of 500: /content/recordings/lucas/2_lucas_13.wav Analyzing file 107 of 500: /content/recordings/lucas/2_lucas_14.wav Analyzing file 108 of 500: /content/recordings/lucas/2_lucas_15.wav Analyzing file 109 of 500: /content/recordings/lucas/2_lucas_16.wav Analyzing file 110 of 500: /content/recordings/lucas/2_lucas_17.wav Analyzing file 111 of 500: /content/recordings/lucas/2_lucas_18.wav Analyzing file 112 of 500: /content/recordings/lucas/2_lucas_19.wav Analyzing file 113 of 500: /content/recordings/lucas/2_lucas_2.wav Analyzing file 114 of 500: /content/recordings/lucas/2_lucas_20.wav Analyzing file 115 of 500: /content/recordings/lucas/2_lucas_21.wav Analyzing file 116 of 500: /content/recordings/lucas/2_lucas_22.wav Analyzing file 117 of 500: /content/recordings/lucas/2_lucas_23.wav Analyzing file 118 of 500: /content/recordings/lucas/2_lucas_24.wav Analyzing file 119 of 500: /content/recordings/lucas/2_lucas_25.wav Analyzing file 120 of 500: /content/recordings/lucas/2_lucas_26.wav Analyzing file 121 of 500: /content/recordings/lucas/2_lucas_27.wav Analyzing file 122 of 500: /content/recordings/lucas/2_lucas_28.wav Analyzing file 123 of 500: /content/recordings/lucas/2_lucas_29.wav Analyzing file 124 of 500: /content/recordings/lucas/2_lucas_3.wav Analyzing file 125 of 500: /content/recordings/lucas/2_lucas_30.wav Analyzing file 126 of 500: /content/recordings/lucas/2_lucas_31.wav Analyzing file 127 of 500: /content/recordings/lucas/2_lucas_32.wav Analyzing file 128 of 500: /content/recordings/lucas/2_lucas_33.wav Analyzing file 129 of 500: /content/recordings/lucas/2_lucas_34.wav Analyzing file 130 of 500: /content/recordings/lucas/2_lucas_35.wav Analyzing file 131 of 500: /content/recordings/lucas/2_lucas_36.wav Analyzing file 132 of 500: /content/recordings/lucas/2_lucas_37.wav Analyzing file 133 of 500: /content/recordings/lucas/2_lucas_38.wav Analyzing file 134 of 500: /content/recordings/lucas/2_lucas_39.wav Analyzing file 135 of 500: /content/recordings/lucas/2_lucas_4.wav Analyzing file 136 of 500: /content/recordings/lucas/2_lucas_40.wav Analyzing file 137 of 500: /content/recordings/lucas/2_lucas_41.wav Analyzing file 138 of 500: /content/recordings/lucas/2_lucas_42.wav Analyzing file 139 of 500: /content/recordings/lucas/2_lucas_43.wav Analyzing file 140 of 500: /content/recordings/lucas/2_lucas_44.wav Analyzing file 141 of 500: /content/recordings/lucas/2_lucas_45.wav Analyzing file 142 of 500: /content/recordings/lucas/2_lucas_46.wav Analyzing file 143 of 500: /content/recordings/lucas/2_lucas_47.wav Analyzing file 144 of 500: /content/recordings/lucas/2_lucas_48.wav Analyzing file 145 of 500: /content/recordings/lucas/2_lucas_49.wav Analyzing file 146 of 500: /content/recordings/lucas/2_lucas_5.wav Analyzing file 147 of 500: /content/recordings/lucas/2_lucas_6.wav Analyzing file 148 of 500: /content/recordings/lucas/2_lucas_7.wav Analyzing file 149 of 500: /content/recordings/lucas/2_lucas_8.wav Analyzing file 150 of 500: /content/recordings/lucas/2_lucas_9.wav Analyzing file 151 of 500: /content/recordings/lucas/3_lucas_0.wav Analyzing file 152 of 500: /content/recordings/lucas/3_lucas_1.wav Analyzing file 153 of 500: /content/recordings/lucas/3_lucas_10.wav Analyzing file 154 of 500: /content/recordings/lucas/3_lucas_11.wav Analyzing file 155 of 500: /content/recordings/lucas/3_lucas_12.wav Analyzing file 156 of 500: /content/recordings/lucas/3_lucas_13.wav Analyzing file 157 of 500: /content/recordings/lucas/3_lucas_14.wav Analyzing file 158 of 500: /content/recordings/lucas/3_lucas_15.wav Analyzing file 159 of 500: /content/recordings/lucas/3_lucas_16.wav Analyzing file 160 of 500: /content/recordings/lucas/3_lucas_17.wav Analyzing file 161 of 500: /content/recordings/lucas/3_lucas_18.wav Analyzing file 162 of 500: /content/recordings/lucas/3_lucas_19.wav Analyzing file 163 of 500: /content/recordings/lucas/3_lucas_2.wav Analyzing file 164 of 500: /content/recordings/lucas/3_lucas_20.wav Analyzing file 165 of 500: /content/recordings/lucas/3_lucas_21.wav Analyzing file 166 of 500: /content/recordings/lucas/3_lucas_22.wav Analyzing file 167 of 500: /content/recordings/lucas/3_lucas_23.wav Analyzing file 168 of 500: /content/recordings/lucas/3_lucas_24.wav Analyzing file 169 of 500: /content/recordings/lucas/3_lucas_25.wav Analyzing file 170 of 500: /content/recordings/lucas/3_lucas_26.wav Analyzing file 171 of 500: /content/recordings/lucas/3_lucas_27.wav Analyzing file 172 of 500: /content/recordings/lucas/3_lucas_28.wav Analyzing file 173 of 500: /content/recordings/lucas/3_lucas_29.wav Analyzing file 174 of 500: /content/recordings/lucas/3_lucas_3.wav Analyzing file 175 of 500: /content/recordings/lucas/3_lucas_30.wav Analyzing file 176 of 500: /content/recordings/lucas/3_lucas_31.wav Analyzing file 177 of 500: /content/recordings/lucas/3_lucas_32.wav Analyzing file 178 of 500: /content/recordings/lucas/3_lucas_33.wav Analyzing file 179 of 500: /content/recordings/lucas/3_lucas_34.wav Analyzing file 180 of 500: /content/recordings/lucas/3_lucas_35.wav Analyzing file 181 of 500: /content/recordings/lucas/3_lucas_36.wav Analyzing file 182 of 500: /content/recordings/lucas/3_lucas_37.wav Analyzing file 183 of 500: /content/recordings/lucas/3_lucas_38.wav Analyzing file 184 of 500: /content/recordings/lucas/3_lucas_39.wav Analyzing file 185 of 500: /content/recordings/lucas/3_lucas_4.wav Analyzing file 186 of 500: /content/recordings/lucas/3_lucas_40.wav Analyzing file 187 of 500: /content/recordings/lucas/3_lucas_41.wav Analyzing file 188 of 500: /content/recordings/lucas/3_lucas_42.wav Analyzing file 189 of 500: /content/recordings/lucas/3_lucas_43.wav Analyzing file 190 of 500: /content/recordings/lucas/3_lucas_44.wav Analyzing file 191 of 500: /content/recordings/lucas/3_lucas_45.wav Analyzing file 192 of 500: /content/recordings/lucas/3_lucas_46.wav Analyzing file 193 of 500: /content/recordings/lucas/3_lucas_47.wav Analyzing file 194 of 500: /content/recordings/lucas/3_lucas_48.wav Analyzing file 195 of 500: /content/recordings/lucas/3_lucas_49.wav Analyzing file 196 of 500: /content/recordings/lucas/3_lucas_5.wav Analyzing file 197 of 500: /content/recordings/lucas/3_lucas_6.wav Analyzing file 198 of 500: /content/recordings/lucas/3_lucas_7.wav Analyzing file 199 of 500: /content/recordings/lucas/3_lucas_8.wav Analyzing file 200 of 500: /content/recordings/lucas/3_lucas_9.wav Analyzing file 201 of 500: /content/recordings/lucas/4_lucas_0.wav Analyzing file 202 of 500: /content/recordings/lucas/4_lucas_1.wav Analyzing file 203 of 500: /content/recordings/lucas/4_lucas_10.wav Analyzing file 204 of 500: /content/recordings/lucas/4_lucas_11.wav Analyzing file 205 of 500: /content/recordings/lucas/4_lucas_12.wav Analyzing file 206 of 500: /content/recordings/lucas/4_lucas_13.wav Analyzing file 207 of 500: /content/recordings/lucas/4_lucas_14.wav Analyzing file 208 of 500: /content/recordings/lucas/4_lucas_15.wav Analyzing file 209 of 500: /content/recordings/lucas/4_lucas_16.wav Analyzing file 210 of 500: /content/recordings/lucas/4_lucas_17.wav Analyzing file 211 of 500: /content/recordings/lucas/4_lucas_18.wav Analyzing file 212 of 500: /content/recordings/lucas/4_lucas_19.wav Analyzing file 213 of 500: /content/recordings/lucas/4_lucas_2.wav Analyzing file 214 of 500: /content/recordings/lucas/4_lucas_20.wav Analyzing file 215 of 500: /content/recordings/lucas/4_lucas_21.wav Analyzing file 216 of 500: /content/recordings/lucas/4_lucas_22.wav Analyzing file 217 of 500: /content/recordings/lucas/4_lucas_23.wav Analyzing file 218 of 500: /content/recordings/lucas/4_lucas_24.wav Analyzing file 219 of 500: /content/recordings/lucas/4_lucas_25.wav Analyzing file 220 of 500: /content/recordings/lucas/4_lucas_26.wav Analyzing file 221 of 500: /content/recordings/lucas/4_lucas_27.wav Analyzing file 222 of 500: /content/recordings/lucas/4_lucas_28.wav Analyzing file 223 of 500: /content/recordings/lucas/4_lucas_29.wav Analyzing file 224 of 500: /content/recordings/lucas/4_lucas_3.wav Analyzing file 225 of 500: /content/recordings/lucas/4_lucas_30.wav Analyzing file 226 of 500: /content/recordings/lucas/4_lucas_31.wav Analyzing file 227 of 500: /content/recordings/lucas/4_lucas_32.wav Analyzing file 228 of 500: /content/recordings/lucas/4_lucas_33.wav Analyzing file 229 of 500: /content/recordings/lucas/4_lucas_34.wav Analyzing file 230 of 500: /content/recordings/lucas/4_lucas_35.wav Analyzing file 231 of 500: /content/recordings/lucas/4_lucas_36.wav Analyzing file 232 of 500: /content/recordings/lucas/4_lucas_37.wav Analyzing file 233 of 500: /content/recordings/lucas/4_lucas_38.wav Analyzing file 234 of 500: /content/recordings/lucas/4_lucas_39.wav Analyzing file 235 of 500: /content/recordings/lucas/4_lucas_4.wav Analyzing file 236 of 500: /content/recordings/lucas/4_lucas_40.wav Analyzing file 237 of 500: /content/recordings/lucas/4_lucas_41.wav Analyzing file 238 of 500: /content/recordings/lucas/4_lucas_42.wav Analyzing file 239 of 500: /content/recordings/lucas/4_lucas_43.wav Analyzing file 240 of 500: /content/recordings/lucas/4_lucas_44.wav Analyzing file 241 of 500: /content/recordings/lucas/4_lucas_45.wav Analyzing file 242 of 500: /content/recordings/lucas/4_lucas_46.wav Analyzing file 243 of 500: /content/recordings/lucas/4_lucas_47.wav Analyzing file 244 of 500: /content/recordings/lucas/4_lucas_48.wav Analyzing file 245 of 500: /content/recordings/lucas/4_lucas_49.wav Analyzing file 246 of 500: /content/recordings/lucas/4_lucas_5.wav Analyzing file 247 of 500: /content/recordings/lucas/4_lucas_6.wav Analyzing file 248 of 500: /content/recordings/lucas/4_lucas_7.wav Analyzing file 249 of 500: /content/recordings/lucas/4_lucas_8.wav Analyzing file 250 of 500: /content/recordings/lucas/4_lucas_9.wav Analyzing file 251 of 500: /content/recordings/lucas/5_lucas_0.wav Analyzing file 252 of 500: /content/recordings/lucas/5_lucas_1.wav Analyzing file 253 of 500: /content/recordings/lucas/5_lucas_10.wav Analyzing file 254 of 500: /content/recordings/lucas/5_lucas_11.wav Analyzing file 255 of 500: /content/recordings/lucas/5_lucas_12.wav Analyzing file 256 of 500: /content/recordings/lucas/5_lucas_13.wav Analyzing file 257 of 500: /content/recordings/lucas/5_lucas_14.wav Analyzing file 258 of 500: /content/recordings/lucas/5_lucas_15.wav Analyzing file 259 of 500: /content/recordings/lucas/5_lucas_16.wav Analyzing file 260 of 500: /content/recordings/lucas/5_lucas_17.wav Analyzing file 261 of 500: /content/recordings/lucas/5_lucas_18.wav Analyzing file 262 of 500: /content/recordings/lucas/5_lucas_19.wav Analyzing file 263 of 500: /content/recordings/lucas/5_lucas_2.wav Analyzing file 264 of 500: /content/recordings/lucas/5_lucas_20.wav Analyzing file 265 of 500: /content/recordings/lucas/5_lucas_21.wav Analyzing file 266 of 500: /content/recordings/lucas/5_lucas_22.wav Analyzing file 267 of 500: /content/recordings/lucas/5_lucas_23.wav Analyzing file 268 of 500: /content/recordings/lucas/5_lucas_24.wav Analyzing file 269 of 500: /content/recordings/lucas/5_lucas_25.wav Analyzing file 270 of 500: /content/recordings/lucas/5_lucas_26.wav Analyzing file 271 of 500: /content/recordings/lucas/5_lucas_27.wav Analyzing file 272 of 500: /content/recordings/lucas/5_lucas_28.wav Analyzing file 273 of 500: /content/recordings/lucas/5_lucas_29.wav Analyzing file 274 of 500: /content/recordings/lucas/5_lucas_3.wav Analyzing file 275 of 500: /content/recordings/lucas/5_lucas_30.wav Analyzing file 276 of 500: /content/recordings/lucas/5_lucas_31.wav Analyzing file 277 of 500: /content/recordings/lucas/5_lucas_32.wav Analyzing file 278 of 500: /content/recordings/lucas/5_lucas_33.wav Analyzing file 279 of 500: /content/recordings/lucas/5_lucas_34.wav Analyzing file 280 of 500: /content/recordings/lucas/5_lucas_35.wav Analyzing file 281 of 500: /content/recordings/lucas/5_lucas_36.wav Analyzing file 282 of 500: /content/recordings/lucas/5_lucas_37.wav Analyzing file 283 of 500: /content/recordings/lucas/5_lucas_38.wav Analyzing file 284 of 500: /content/recordings/lucas/5_lucas_39.wav Analyzing file 285 of 500: /content/recordings/lucas/5_lucas_4.wav Analyzing file 286 of 500: /content/recordings/lucas/5_lucas_40.wav Analyzing file 287 of 500: /content/recordings/lucas/5_lucas_41.wav Analyzing file 288 of 500: /content/recordings/lucas/5_lucas_42.wav Analyzing file 289 of 500: /content/recordings/lucas/5_lucas_43.wav Analyzing file 290 of 500: /content/recordings/lucas/5_lucas_44.wav Analyzing file 291 of 500: /content/recordings/lucas/5_lucas_45.wav Analyzing file 292 of 500: /content/recordings/lucas/5_lucas_46.wav Analyzing file 293 of 500: /content/recordings/lucas/5_lucas_47.wav Analyzing file 294 of 500: /content/recordings/lucas/5_lucas_48.wav Analyzing file 295 of 500: /content/recordings/lucas/5_lucas_49.wav Analyzing file 296 of 500: /content/recordings/lucas/5_lucas_5.wav Analyzing file 297 of 500: /content/recordings/lucas/5_lucas_6.wav Analyzing file 298 of 500: /content/recordings/lucas/5_lucas_7.wav Analyzing file 299 of 500: /content/recordings/lucas/5_lucas_8.wav Analyzing file 300 of 500: /content/recordings/lucas/5_lucas_9.wav Analyzing file 301 of 500: /content/recordings/lucas/6_lucas_0.wav Analyzing file 302 of 500: /content/recordings/lucas/6_lucas_1.wav Analyzing file 303 of 500: /content/recordings/lucas/6_lucas_10.wav Analyzing file 304 of 500: /content/recordings/lucas/6_lucas_11.wav Analyzing file 305 of 500: /content/recordings/lucas/6_lucas_12.wav Analyzing file 306 of 500: /content/recordings/lucas/6_lucas_13.wav Analyzing file 307 of 500: /content/recordings/lucas/6_lucas_14.wav Analyzing file 308 of 500: /content/recordings/lucas/6_lucas_15.wav Analyzing file 309 of 500: /content/recordings/lucas/6_lucas_16.wav Analyzing file 310 of 500: /content/recordings/lucas/6_lucas_17.wav Analyzing file 311 of 500: /content/recordings/lucas/6_lucas_18.wav Analyzing file 312 of 500: /content/recordings/lucas/6_lucas_19.wav Analyzing file 313 of 500: /content/recordings/lucas/6_lucas_2.wav Analyzing file 314 of 500: /content/recordings/lucas/6_lucas_20.wav Analyzing file 315 of 500: /content/recordings/lucas/6_lucas_21.wav Analyzing file 316 of 500: /content/recordings/lucas/6_lucas_22.wav Analyzing file 317 of 500: /content/recordings/lucas/6_lucas_23.wav Analyzing file 318 of 500: /content/recordings/lucas/6_lucas_24.wav Analyzing file 319 of 500: /content/recordings/lucas/6_lucas_25.wav Analyzing file 320 of 500: /content/recordings/lucas/6_lucas_26.wav Analyzing file 321 of 500: /content/recordings/lucas/6_lucas_27.wav Analyzing file 322 of 500: /content/recordings/lucas/6_lucas_28.wav Analyzing file 323 of 500: /content/recordings/lucas/6_lucas_29.wav Analyzing file 324 of 500: /content/recordings/lucas/6_lucas_3.wav Analyzing file 325 of 500: /content/recordings/lucas/6_lucas_30.wav Analyzing file 326 of 500: /content/recordings/lucas/6_lucas_31.wav Analyzing file 327 of 500: /content/recordings/lucas/6_lucas_32.wav Analyzing file 328 of 500: /content/recordings/lucas/6_lucas_33.wav Analyzing file 329 of 500: /content/recordings/lucas/6_lucas_34.wav Analyzing file 330 of 500: /content/recordings/lucas/6_lucas_35.wav Analyzing file 331 of 500: /content/recordings/lucas/6_lucas_36.wav Analyzing file 332 of 500: /content/recordings/lucas/6_lucas_37.wav Analyzing file 333 of 500: /content/recordings/lucas/6_lucas_38.wav Analyzing file 334 of 500: /content/recordings/lucas/6_lucas_39.wav Analyzing file 335 of 500: /content/recordings/lucas/6_lucas_4.wav Analyzing file 336 of 500: /content/recordings/lucas/6_lucas_40.wav Analyzing file 337 of 500: /content/recordings/lucas/6_lucas_41.wav Analyzing file 338 of 500: /content/recordings/lucas/6_lucas_42.wav Analyzing file 339 of 500: /content/recordings/lucas/6_lucas_43.wav Analyzing file 340 of 500: /content/recordings/lucas/6_lucas_44.wav Analyzing file 341 of 500: /content/recordings/lucas/6_lucas_45.wav Analyzing file 342 of 500: /content/recordings/lucas/6_lucas_46.wav Analyzing file 343 of 500: /content/recordings/lucas/6_lucas_47.wav Analyzing file 344 of 500: /content/recordings/lucas/6_lucas_48.wav Analyzing file 345 of 500: /content/recordings/lucas/6_lucas_49.wav Analyzing file 346 of 500: /content/recordings/lucas/6_lucas_5.wav Analyzing file 347 of 500: /content/recordings/lucas/6_lucas_6.wav Analyzing file 348 of 500: /content/recordings/lucas/6_lucas_7.wav Analyzing file 349 of 500: /content/recordings/lucas/6_lucas_8.wav Analyzing file 350 of 500: /content/recordings/lucas/6_lucas_9.wav Analyzing file 351 of 500: /content/recordings/lucas/7_lucas_0.wav Analyzing file 352 of 500: /content/recordings/lucas/7_lucas_1.wav Analyzing file 353 of 500: /content/recordings/lucas/7_lucas_10.wav Analyzing file 354 of 500: /content/recordings/lucas/7_lucas_11.wav Analyzing file 355 of 500: /content/recordings/lucas/7_lucas_12.wav Analyzing file 356 of 500: /content/recordings/lucas/7_lucas_13.wav Analyzing file 357 of 500: /content/recordings/lucas/7_lucas_14.wav Analyzing file 358 of 500: /content/recordings/lucas/7_lucas_15.wav Analyzing file 359 of 500: /content/recordings/lucas/7_lucas_16.wav Analyzing file 360 of 500: /content/recordings/lucas/7_lucas_17.wav Analyzing file 361 of 500: /content/recordings/lucas/7_lucas_18.wav Analyzing file 362 of 500: /content/recordings/lucas/7_lucas_19.wav Analyzing file 363 of 500: /content/recordings/lucas/7_lucas_2.wav Analyzing file 364 of 500: /content/recordings/lucas/7_lucas_20.wav Analyzing file 365 of 500: /content/recordings/lucas/7_lucas_21.wav Analyzing file 366 of 500: /content/recordings/lucas/7_lucas_22.wav Analyzing file 367 of 500: /content/recordings/lucas/7_lucas_23.wav Analyzing file 368 of 500: /content/recordings/lucas/7_lucas_24.wav Analyzing file 369 of 500: /content/recordings/lucas/7_lucas_25.wav Analyzing file 370 of 500: /content/recordings/lucas/7_lucas_26.wav Analyzing file 371 of 500: /content/recordings/lucas/7_lucas_27.wav Analyzing file 372 of 500: /content/recordings/lucas/7_lucas_28.wav Analyzing file 373 of 500: /content/recordings/lucas/7_lucas_29.wav Analyzing file 374 of 500: /content/recordings/lucas/7_lucas_3.wav Analyzing file 375 of 500: /content/recordings/lucas/7_lucas_30.wav Analyzing file 376 of 500: /content/recordings/lucas/7_lucas_31.wav Analyzing file 377 of 500: /content/recordings/lucas/7_lucas_32.wav Analyzing file 378 of 500: /content/recordings/lucas/7_lucas_33.wav Analyzing file 379 of 500: /content/recordings/lucas/7_lucas_34.wav Analyzing file 380 of 500: /content/recordings/lucas/7_lucas_35.wav Analyzing file 381 of 500: /content/recordings/lucas/7_lucas_36.wav Analyzing file 382 of 500: /content/recordings/lucas/7_lucas_37.wav Analyzing file 383 of 500: /content/recordings/lucas/7_lucas_38.wav Analyzing file 384 of 500: /content/recordings/lucas/7_lucas_39.wav Analyzing file 385 of 500: /content/recordings/lucas/7_lucas_4.wav Analyzing file 386 of 500: /content/recordings/lucas/7_lucas_40.wav Analyzing file 387 of 500: /content/recordings/lucas/7_lucas_41.wav Analyzing file 388 of 500: /content/recordings/lucas/7_lucas_42.wav Analyzing file 389 of 500: /content/recordings/lucas/7_lucas_43.wav Analyzing file 390 of 500: /content/recordings/lucas/7_lucas_44.wav Analyzing file 391 of 500: /content/recordings/lucas/7_lucas_45.wav Analyzing file 392 of 500: /content/recordings/lucas/7_lucas_46.wav Analyzing file 393 of 500: /content/recordings/lucas/7_lucas_47.wav Analyzing file 394 of 500: /content/recordings/lucas/7_lucas_48.wav Analyzing file 395 of 500: /content/recordings/lucas/7_lucas_49.wav Analyzing file 396 of 500: /content/recordings/lucas/7_lucas_5.wav Analyzing file 397 of 500: /content/recordings/lucas/7_lucas_6.wav Analyzing file 398 of 500: /content/recordings/lucas/7_lucas_7.wav Analyzing file 399 of 500: /content/recordings/lucas/7_lucas_8.wav Analyzing file 400 of 500: /content/recordings/lucas/7_lucas_9.wav Analyzing file 401 of 500: /content/recordings/lucas/8_lucas_0.wav Analyzing file 402 of 500: /content/recordings/lucas/8_lucas_1.wav Analyzing file 403 of 500: /content/recordings/lucas/8_lucas_10.wav Analyzing file 404 of 500: /content/recordings/lucas/8_lucas_11.wav Analyzing file 405 of 500: /content/recordings/lucas/8_lucas_12.wav Analyzing file 406 of 500: /content/recordings/lucas/8_lucas_13.wav Analyzing file 407 of 500: /content/recordings/lucas/8_lucas_14.wav Analyzing file 408 of 500: /content/recordings/lucas/8_lucas_15.wav Analyzing file 409 of 500: /content/recordings/lucas/8_lucas_16.wav Analyzing file 410 of 500: /content/recordings/lucas/8_lucas_17.wav Analyzing file 411 of 500: /content/recordings/lucas/8_lucas_18.wav Analyzing file 412 of 500: /content/recordings/lucas/8_lucas_19.wav Analyzing file 413 of 500: /content/recordings/lucas/8_lucas_2.wav Analyzing file 414 of 500: /content/recordings/lucas/8_lucas_20.wav Analyzing file 415 of 500: /content/recordings/lucas/8_lucas_21.wav Analyzing file 416 of 500: /content/recordings/lucas/8_lucas_22.wav Analyzing file 417 of 500: /content/recordings/lucas/8_lucas_23.wav Analyzing file 418 of 500: /content/recordings/lucas/8_lucas_24.wav Analyzing file 419 of 500: /content/recordings/lucas/8_lucas_25.wav Analyzing file 420 of 500: /content/recordings/lucas/8_lucas_26.wav Analyzing file 421 of 500: /content/recordings/lucas/8_lucas_27.wav Analyzing file 422 of 500: /content/recordings/lucas/8_lucas_28.wav Analyzing file 423 of 500: /content/recordings/lucas/8_lucas_29.wav Analyzing file 424 of 500: /content/recordings/lucas/8_lucas_3.wav Analyzing file 425 of 500: /content/recordings/lucas/8_lucas_30.wav Analyzing file 426 of 500: /content/recordings/lucas/8_lucas_31.wav Analyzing file 427 of 500: /content/recordings/lucas/8_lucas_32.wav Analyzing file 428 of 500: /content/recordings/lucas/8_lucas_33.wav Analyzing file 429 of 500: /content/recordings/lucas/8_lucas_34.wav Analyzing file 430 of 500: /content/recordings/lucas/8_lucas_35.wav Analyzing file 431 of 500: /content/recordings/lucas/8_lucas_36.wav Analyzing file 432 of 500: /content/recordings/lucas/8_lucas_37.wav Analyzing file 433 of 500: /content/recordings/lucas/8_lucas_38.wav Analyzing file 434 of 500: /content/recordings/lucas/8_lucas_39.wav Analyzing file 435 of 500: /content/recordings/lucas/8_lucas_4.wav Analyzing file 436 of 500: /content/recordings/lucas/8_lucas_40.wav Analyzing file 437 of 500: /content/recordings/lucas/8_lucas_41.wav Analyzing file 438 of 500: /content/recordings/lucas/8_lucas_42.wav Analyzing file 439 of 500: /content/recordings/lucas/8_lucas_43.wav Analyzing file 440 of 500: /content/recordings/lucas/8_lucas_44.wav Analyzing file 441 of 500: /content/recordings/lucas/8_lucas_45.wav Analyzing file 442 of 500: /content/recordings/lucas/8_lucas_46.wav Analyzing file 443 of 500: /content/recordings/lucas/8_lucas_47.wav Analyzing file 444 of 500: /content/recordings/lucas/8_lucas_48.wav Analyzing file 445 of 500: /content/recordings/lucas/8_lucas_49.wav Analyzing file 446 of 500: /content/recordings/lucas/8_lucas_5.wav Analyzing file 447 of 500: /content/recordings/lucas/8_lucas_6.wav Analyzing file 448 of 500: /content/recordings/lucas/8_lucas_7.wav Analyzing file 449 of 500: /content/recordings/lucas/8_lucas_8.wav Analyzing file 450 of 500: /content/recordings/lucas/8_lucas_9.wav Analyzing file 451 of 500: /content/recordings/lucas/9_lucas_0.wav Analyzing file 452 of 500: /content/recordings/lucas/9_lucas_1.wav Analyzing file 453 of 500: /content/recordings/lucas/9_lucas_10.wav Analyzing file 454 of 500: /content/recordings/lucas/9_lucas_11.wav Analyzing file 455 of 500: /content/recordings/lucas/9_lucas_12.wav Analyzing file 456 of 500: /content/recordings/lucas/9_lucas_13.wav Analyzing file 457 of 500: /content/recordings/lucas/9_lucas_14.wav Analyzing file 458 of 500: /content/recordings/lucas/9_lucas_15.wav Analyzing file 459 of 500: /content/recordings/lucas/9_lucas_16.wav Analyzing file 460 of 500: /content/recordings/lucas/9_lucas_17.wav Analyzing file 461 of 500: /content/recordings/lucas/9_lucas_18.wav Analyzing file 462 of 500: /content/recordings/lucas/9_lucas_19.wav Analyzing file 463 of 500: /content/recordings/lucas/9_lucas_2.wav Analyzing file 464 of 500: /content/recordings/lucas/9_lucas_20.wav Analyzing file 465 of 500: /content/recordings/lucas/9_lucas_21.wav Analyzing file 466 of 500: /content/recordings/lucas/9_lucas_22.wav Analyzing file 467 of 500: /content/recordings/lucas/9_lucas_23.wav Analyzing file 468 of 500: /content/recordings/lucas/9_lucas_24.wav Analyzing file 469 of 500: /content/recordings/lucas/9_lucas_25.wav Analyzing file 470 of 500: /content/recordings/lucas/9_lucas_26.wav Analyzing file 471 of 500: /content/recordings/lucas/9_lucas_27.wav Analyzing file 472 of 500: /content/recordings/lucas/9_lucas_28.wav Analyzing file 473 of 500: /content/recordings/lucas/9_lucas_29.wav Analyzing file 474 of 500: /content/recordings/lucas/9_lucas_3.wav Analyzing file 475 of 500: /content/recordings/lucas/9_lucas_30.wav Analyzing file 476 of 500: /content/recordings/lucas/9_lucas_31.wav Analyzing file 477 of 500: /content/recordings/lucas/9_lucas_32.wav Analyzing file 478 of 500: /content/recordings/lucas/9_lucas_33.wav Analyzing file 479 of 500: /content/recordings/lucas/9_lucas_34.wav Analyzing file 480 of 500: /content/recordings/lucas/9_lucas_35.wav Analyzing file 481 of 500: /content/recordings/lucas/9_lucas_36.wav Analyzing file 482 of 500: /content/recordings/lucas/9_lucas_37.wav Analyzing file 483 of 500: /content/recordings/lucas/9_lucas_38.wav Analyzing file 484 of 500: /content/recordings/lucas/9_lucas_39.wav Analyzing file 485 of 500: /content/recordings/lucas/9_lucas_4.wav Analyzing file 486 of 500: /content/recordings/lucas/9_lucas_40.wav Analyzing file 487 of 500: /content/recordings/lucas/9_lucas_41.wav Analyzing file 488 of 500: /content/recordings/lucas/9_lucas_42.wav Analyzing file 489 of 500: /content/recordings/lucas/9_lucas_43.wav Analyzing file 490 of 500: /content/recordings/lucas/9_lucas_44.wav Analyzing file 491 of 500: /content/recordings/lucas/9_lucas_45.wav Analyzing file 492 of 500: /content/recordings/lucas/9_lucas_46.wav Analyzing file 493 of 500: /content/recordings/lucas/9_lucas_47.wav Analyzing file 494 of 500: /content/recordings/lucas/9_lucas_48.wav Analyzing file 495 of 500: /content/recordings/lucas/9_lucas_49.wav Analyzing file 496 of 500: /content/recordings/lucas/9_lucas_5.wav Analyzing file 497 of 500: /content/recordings/lucas/9_lucas_6.wav Analyzing file 498 of 500: /content/recordings/lucas/9_lucas_7.wav Analyzing file 499 of 500: /content/recordings/lucas/9_lucas_8.wav Analyzing file 500 of 500: /content/recordings/lucas/9_lucas_9.wav Feature extraction complexity ratio: 19.2 x realtime
WARNING:whylogs.core.dataset_profile:No timezone set in the datetime_timestamp object. Default to local timezone
(True, 'OK')