Yehor commited on
Commit
9681162
·
verified ·
1 Parent(s): 7b0309c

Upload 11 files

Browse files
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ yamnet_model/variables/variables.data-00000-of-00001 filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ library_name: coreml
4
+ tags:
5
+ - coreml
6
+ - yamnet
7
+ - audio-classification
8
+ - tensorflow
9
+ - apple
10
+ ---
11
+
12
+ # YAMNet Core ML
13
+
14
+ This is a Core ML conversion of the YAMNet audio event classifier. The model was converted from the TensorFlow Hub YAMNet SavedModel.
15
+
16
+ Important: this Core ML package does not accept raw waveform audio. It accepts precomputed YAMNet log-mel feature patches shaped `[1, 96, 64]`.
17
+
18
+ ## Model Interface
19
+
20
+ Input:
21
+
22
+ - `features`: `MLMultiArray` shaped `[1, 96, 64]`, `Float16`
23
+ - Represents one YAMNet log-mel patch: 96 frames x 64 mel bands.
24
+
25
+ Output:
26
+
27
+ - `Identity`: `MLMultiArray` shaped `[1, 521]`, `Float16`
28
+ - Contains class scores for the 521 YAMNet AudioSet classes.
29
+
30
+ Class labels are available in:
31
+
32
+ ```text
33
+ yamnet_model/assets/yamnet_class_map.csv
34
+ ```
35
+
36
+ ## Swift Usage
37
+
38
+ ```swift
39
+ import CoreML
40
+ import Foundation
41
+
42
+ let modelURL = URL(fileURLWithPath: "YAMNet.mlpackage")
43
+ let model = try MLModel(contentsOf: modelURL)
44
+
45
+ let features = try MLMultiArray(shape: [1, 96, 64], dataType: .float16)
46
+
47
+ // Fill `features` with YAMNet-compatible log-mel values.
48
+ // Layout is [batch, frame, melBand].
49
+ for frame in 0..<96 {
50
+ for band in 0..<64 {
51
+ let index = [0, NSNumber(value: frame), NSNumber(value: band)]
52
+ features[index] = 0.0
53
+ }
54
+ }
55
+
56
+ let input = try MLDictionaryFeatureProvider(dictionary: [
57
+ "features": MLFeatureValue(multiArray: features)
58
+ ])
59
+
60
+ let output = try model.prediction(from: input)
61
+ guard let scores = output.featureValue(for: "Identity")?.multiArrayValue else {
62
+ throw NSError(domain: "YAMNet", code: 1, userInfo: [NSLocalizedDescriptionKey: "Missing scores output"])
63
+ }
64
+
65
+ var bestIndex = 0
66
+ var bestScore = -Double.infinity
67
+ for index in 0..<521 {
68
+ let score = scores[[0, NSNumber(value: index)]].doubleValue
69
+ if score > bestScore {
70
+ bestScore = score
71
+ bestIndex = index
72
+ }
73
+ }
74
+
75
+ print("Top class index: \(bestIndex), score: \(bestScore)")
76
+ ```
77
+
78
+ ## Feature Extraction
79
+
80
+ To use this model with raw audio, compute YAMNet-compatible features first:
81
+
82
+ - sample rate: 16 kHz mono
83
+ - STFT window: 25 ms
84
+ - STFT hop: 10 ms
85
+ - mel bands: 64
86
+ - mel range: 125 Hz to 7500 Hz
87
+ - log offset: `0.001`
88
+ - patch size: 96 frames x 64 mel bands
89
+
90
+ The original TensorFlow Hub YAMNet model includes waveform preprocessing, but that path uses TensorFlow ops that are not currently supported by Core ML conversion. This package therefore contains only the classifier network after feature extraction.
91
+
92
+ ## Conversion
93
+
94
+ The package was generated with:
95
+
96
+ ```bash
97
+ uv run main.py --model-path ./yamnet_model --output ./YAMNet.mlpackage
98
+ ```
99
+
100
+ To download the TensorFlow Hub source model:
101
+
102
+ ```bash
103
+ uv run main.py --download-only
104
+ ```
YAMNet.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2f555c993e6632c3a1be43f87fa9ec44520c7697ebf3c27c5b17532f1f9c3a7d
3
+ size 70188
YAMNet.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:39aee5b5261a4d27cab29a0cd0d272a8d949d456e551bb68c14182cafb78a8ea
3
+ size 7462610
YAMNet.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "59FD609B-A52D-4E4F-9F68-CD1D6DDD3322": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Specification",
7
+ "name": "model.mlmodel",
8
+ "path": "com.apple.CoreML/model.mlmodel"
9
+ },
10
+ "822F1EC3-B78E-47D5-A954-D8237778EB0D": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Weights",
13
+ "name": "weights",
14
+ "path": "com.apple.CoreML/weights"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "59FD609B-A52D-4E4F-9F68-CD1D6DDD3322"
18
+ }
main.py ADDED
@@ -0,0 +1,357 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import argparse
2
+ import shutil
3
+ import tarfile
4
+ import tempfile
5
+ import urllib.request
6
+ from dataclasses import dataclass
7
+ from pathlib import Path
8
+
9
+ import coremltools as ct
10
+ import tensorflow as tf
11
+
12
+ DEFAULT_TFHUB_URL = "https://tfhub.dev/google/yamnet/1?tf-hub-format=compressed"
13
+
14
+
15
+ def parse_args():
16
+ script_dir = Path(__file__).resolve().parent
17
+ parser = argparse.ArgumentParser(description="Convert YAMNet TensorFlow SavedModel to Core ML.")
18
+ parser.add_argument(
19
+ "--model-path",
20
+ default=script_dir / "yamnet_model",
21
+ type=Path,
22
+ help="Path to a TensorFlow SavedModel directory, .keras file, or .h5 file.",
23
+ )
24
+ parser.add_argument(
25
+ "--output",
26
+ default=script_dir / "YAMNet.mlpackage",
27
+ type=Path,
28
+ help="Output Core ML package path.",
29
+ )
30
+ parser.add_argument(
31
+ "--waveform-samples",
32
+ default=15_600,
33
+ type=int,
34
+ help="Fixed waveform length for the Core ML input. YAMNet commonly uses 0.975s at 16 kHz.",
35
+ )
36
+ parser.add_argument(
37
+ "--output-key",
38
+ default=None,
39
+ help="SavedModel output key for --conversion-mode waveform. Defaults to output_0 for TFHub YAMNet.",
40
+ )
41
+ parser.add_argument(
42
+ "--conversion-mode",
43
+ choices=["features", "waveform"],
44
+ default="features",
45
+ help=(
46
+ "features converts the YAMNet classifier from 96x64 log-mel patches and avoids unsupported "
47
+ "TensorFlow FFT ops. waveform attempts direct full SavedModel conversion."
48
+ ),
49
+ )
50
+ parser.add_argument(
51
+ "--download-tfhub",
52
+ action="store_true",
53
+ help="Download YAMNet from TFHub into --model-path before conversion if it is missing.",
54
+ )
55
+ parser.add_argument(
56
+ "--force-download",
57
+ action="store_true",
58
+ help="Replace --model-path with a fresh TFHub download before conversion.",
59
+ )
60
+ parser.add_argument(
61
+ "--download-only",
62
+ action="store_true",
63
+ help="Download YAMNet from TFHub into --model-path and exit without Core ML conversion.",
64
+ )
65
+ parser.add_argument(
66
+ "--tfhub-url",
67
+ default=DEFAULT_TFHUB_URL,
68
+ help="TFHub compressed SavedModel URL.",
69
+ )
70
+ return parser.parse_args()
71
+
72
+
73
+ @dataclass(frozen=True)
74
+ class YamnetParams:
75
+ patch_frames: int = 96
76
+ patch_bands: int = 64
77
+ num_classes: int = 521
78
+ conv_padding: str = "same"
79
+ batchnorm_center: bool = True
80
+ batchnorm_scale: bool = False
81
+ batchnorm_epsilon: float = 1e-4
82
+ classifier_activation: str = "sigmoid"
83
+
84
+
85
+ YAMNET_LAYER_DEFS = [
86
+ ("conv", [3, 3], 2, 32),
87
+ ("separable_conv", [3, 3], 1, 64),
88
+ ("separable_conv", [3, 3], 2, 128),
89
+ ("separable_conv", [3, 3], 1, 128),
90
+ ("separable_conv", [3, 3], 2, 256),
91
+ ("separable_conv", [3, 3], 1, 256),
92
+ ("separable_conv", [3, 3], 2, 512),
93
+ ("separable_conv", [3, 3], 1, 512),
94
+ ("separable_conv", [3, 3], 1, 512),
95
+ ("separable_conv", [3, 3], 1, 512),
96
+ ("separable_conv", [3, 3], 1, 512),
97
+ ("separable_conv", [3, 3], 1, 512),
98
+ ("separable_conv", [3, 3], 2, 1024),
99
+ ("separable_conv", [3, 3], 1, 1024),
100
+ ]
101
+
102
+
103
+ def download_tfhub_saved_model(tfhub_url, model_path, force=False):
104
+ if model_path.exists() and not force:
105
+ print(f"Using existing model: {model_path}")
106
+ return
107
+
108
+ if model_path.exists():
109
+ if model_path.is_dir():
110
+ shutil.rmtree(model_path)
111
+ else:
112
+ model_path.unlink()
113
+
114
+ model_path.parent.mkdir(parents=True, exist_ok=True)
115
+ print(f"Downloading TFHub model: {tfhub_url}")
116
+
117
+ with tempfile.TemporaryDirectory(prefix="yamnet-tfhub-") as temp_dir:
118
+ archive_path = Path(temp_dir) / "model.tar.gz"
119
+ request = urllib.request.Request(tfhub_url, headers={"User-Agent": "langpipe-yamnet-coreml"})
120
+ with urllib.request.urlopen(request) as response, archive_path.open("wb") as archive:
121
+ shutil.copyfileobj(response, archive)
122
+
123
+ extract_path = Path(temp_dir) / "model"
124
+ extract_path.mkdir()
125
+ with tarfile.open(archive_path, "r:gz") as tar:
126
+ tar.extractall(extract_path, filter="data")
127
+
128
+ saved_model_pb = next(extract_path.rglob("saved_model.pb"), None)
129
+ if saved_model_pb is None:
130
+ raise ValueError(f"TFHub archive did not contain saved_model.pb: {tfhub_url}")
131
+
132
+ extracted_model_root = saved_model_pb.parent
133
+ shutil.copytree(extracted_model_root, model_path)
134
+
135
+ print(f"Saved TFHub model: {model_path}")
136
+
137
+
138
+ def batch_norm(name, params, layer_input):
139
+ return tf.keras.layers.BatchNormalization(
140
+ name=name,
141
+ center=params.batchnorm_center,
142
+ scale=params.batchnorm_scale,
143
+ epsilon=params.batchnorm_epsilon,
144
+ )(layer_input)
145
+
146
+
147
+ def build_yamnet_feature_model(params=YamnetParams()):
148
+ features = tf.keras.Input(
149
+ shape=(params.patch_frames, params.patch_bands),
150
+ dtype=tf.float32,
151
+ name="features",
152
+ )
153
+ net = tf.keras.layers.Reshape(
154
+ (params.patch_frames, params.patch_bands, 1),
155
+ name="features_4d",
156
+ )(features)
157
+
158
+ for layer_index, (layer_type, kernel, stride, filters) in enumerate(YAMNET_LAYER_DEFS, start=1):
159
+ prefix = f"layer{layer_index}"
160
+ if layer_type == "conv":
161
+ net = tf.keras.layers.Conv2D(
162
+ name=f"{prefix}_conv",
163
+ filters=filters,
164
+ kernel_size=kernel,
165
+ strides=stride,
166
+ padding=params.conv_padding,
167
+ use_bias=False,
168
+ activation=None,
169
+ )(net)
170
+ net = batch_norm(f"{prefix}_conv_bn", params, net)
171
+ net = tf.keras.layers.ReLU(name=f"{prefix}_relu")(net)
172
+ continue
173
+
174
+ net = tf.keras.layers.DepthwiseConv2D(
175
+ name=f"{prefix}_depthwise_conv",
176
+ kernel_size=kernel,
177
+ strides=stride,
178
+ depth_multiplier=1,
179
+ padding=params.conv_padding,
180
+ use_bias=False,
181
+ activation=None,
182
+ )(net)
183
+ net = batch_norm(f"{prefix}_depthwise_conv_bn", params, net)
184
+ net = tf.keras.layers.ReLU(name=f"{prefix}_depthwise_relu")(net)
185
+ net = tf.keras.layers.Conv2D(
186
+ name=f"{prefix}_pointwise_conv",
187
+ filters=filters,
188
+ kernel_size=(1, 1),
189
+ strides=1,
190
+ padding=params.conv_padding,
191
+ use_bias=False,
192
+ activation=None,
193
+ )(net)
194
+ net = batch_norm(f"{prefix}_pointwise_conv_bn", params, net)
195
+ net = tf.keras.layers.ReLU(name=f"{prefix}_pointwise_relu")(net)
196
+
197
+ embeddings = tf.keras.layers.GlobalAveragePooling2D(name="embeddings")(net)
198
+ logits = tf.keras.layers.Dense(units=params.num_classes, use_bias=True, name="dense")(embeddings)
199
+ class_scores = tf.keras.layers.Activation(
200
+ activation=params.classifier_activation,
201
+ name="class_scores",
202
+ )(logits)
203
+ return tf.keras.Model(name="yamnet_features", inputs=features, outputs=class_scores)
204
+
205
+
206
+ def load_feature_model_weights_from_saved_model(model, model_path):
207
+ loaded = tf.saved_model.load(str(model_path))
208
+ if not hasattr(loaded, "_yamnet"):
209
+ raise ValueError("SavedModel does not expose the expected TFHub YAMNet _yamnet object.")
210
+
211
+ source_weights = list(loaded._yamnet.variables)
212
+ target_weights = model.weights
213
+ if len(source_weights) != len(target_weights):
214
+ raise ValueError(f"Weight count mismatch: source={len(source_weights)}, target={len(target_weights)}")
215
+
216
+ for index, (target, source) in enumerate(zip(target_weights, source_weights)):
217
+ if tuple(target.shape) != tuple(source.shape):
218
+ raise ValueError(
219
+ f"Weight shape mismatch at {index}: target {target.name} {target.shape}, "
220
+ f"source {source.name} {source.shape}"
221
+ )
222
+
223
+ model.set_weights([weight.numpy() for weight in source_weights])
224
+
225
+
226
+ def describe_signature(signature):
227
+ _, keyword_specs = signature.structured_input_signature
228
+ print("SavedModel inputs:")
229
+ for name, spec in keyword_specs.items():
230
+ print(f" {name}: shape={spec.shape}, dtype={spec.dtype.name}")
231
+
232
+ print("SavedModel outputs:")
233
+ for name, spec in signature.structured_outputs.items():
234
+ print(f" {name}: shape={spec.shape}, dtype={spec.dtype.name}")
235
+
236
+
237
+ def select_output_key(signature, requested_key):
238
+ outputs = signature.structured_outputs
239
+ if requested_key:
240
+ if requested_key not in outputs:
241
+ raise ValueError(f"--output-key {requested_key!r} not found. Available keys: {list(outputs)}")
242
+ return requested_key
243
+
244
+ if "output_0" in outputs:
245
+ return "output_0"
246
+
247
+ for key in outputs:
248
+ if "score" in key.lower() or "class" in key.lower():
249
+ return key
250
+
251
+ if not outputs:
252
+ raise ValueError("SavedModel serving_default has no outputs.")
253
+ return next(iter(outputs))
254
+
255
+
256
+ class SavedModelClassScores(tf.Module):
257
+ def __init__(self, signature, input_key, output_key):
258
+ super().__init__()
259
+ self.signature = signature
260
+ self.input_key = input_key
261
+ self.output_key = output_key
262
+
263
+ @tf.function
264
+ def __call__(self, waveform):
265
+ outputs = self.signature(**{self.input_key: waveform})
266
+ return {"class_scores": outputs[self.output_key]}
267
+
268
+
269
+ def convert_saved_model(model_path, output_path, waveform_samples, output_key):
270
+ loaded = tf.saved_model.load(str(model_path))
271
+ if "serving_default" not in loaded.signatures:
272
+ raise ValueError(f"SavedModel has no serving_default signature. Available: {list(loaded.signatures)}")
273
+
274
+ signature = loaded.signatures["serving_default"]
275
+ describe_signature(signature)
276
+
277
+ _, keyword_specs = signature.structured_input_signature
278
+ if len(keyword_specs) != 1:
279
+ raise ValueError(
280
+ "Expected one SavedModel input. Pass a wrapper model if this SavedModel has "
281
+ f"{len(keyword_specs)} inputs: {list(keyword_specs)}"
282
+ )
283
+
284
+ input_key = next(iter(keyword_specs))
285
+ selected_output = select_output_key(signature, output_key)
286
+ print(f"Converting input {input_key!r} -> output {selected_output!r} as 'class_scores'")
287
+
288
+ wrapper = SavedModelClassScores(signature, input_key, selected_output)
289
+ concrete = wrapper.__call__.get_concrete_function(
290
+ tf.TensorSpec([waveform_samples], tf.float32, name="waveform")
291
+ )
292
+
293
+ return ct.convert(
294
+ [concrete],
295
+ source="tensorflow",
296
+ inputs=[ct.TensorType(shape=(waveform_samples,), name="waveform")],
297
+ convert_to="mlprogram",
298
+ minimum_deployment_target=ct.target.macOS13,
299
+ )
300
+
301
+
302
+ def convert_keras_model(model_path, output_path):
303
+ model = tf.keras.models.load_model(str(model_path))
304
+ return ct.convert(
305
+ model,
306
+ inputs=[ct.TensorType(shape=(1, 64, 96, 1), name="features")],
307
+ outputs=[ct.TensorType(name="class_scores")],
308
+ convert_to="mlprogram",
309
+ minimum_deployment_target=ct.target.macOS13,
310
+ )
311
+
312
+
313
+ def convert_feature_model(model_path):
314
+ model = build_yamnet_feature_model()
315
+ model(tf.zeros((1, 96, 64), dtype=tf.float32))
316
+ load_feature_model_weights_from_saved_model(model, model_path)
317
+ return ct.convert(
318
+ model,
319
+ source="tensorflow",
320
+ inputs=[ct.TensorType(shape=(1, 96, 64), name="features")],
321
+ convert_to="mlprogram",
322
+ minimum_deployment_target=ct.target.macOS13,
323
+ )
324
+
325
+
326
+ def main():
327
+ args = parse_args()
328
+ if args.download_tfhub or args.force_download or args.download_only:
329
+ download_tfhub_saved_model(args.tfhub_url, args.model_path, force=args.force_download)
330
+ if args.download_only:
331
+ return
332
+
333
+ if not args.model_path.exists():
334
+ raise FileNotFoundError(
335
+ f"Model path does not exist: {args.model_path}. "
336
+ "Pass --download-tfhub to download YAMNet from TFHub."
337
+ )
338
+
339
+ if args.conversion_mode == "features":
340
+ mlmodel = convert_feature_model(args.model_path)
341
+ elif args.model_path.suffix in {".keras", ".h5", ".hdf5"}:
342
+ mlmodel = convert_keras_model(args.model_path, args.output)
343
+ else:
344
+ mlmodel = convert_saved_model(
345
+ args.model_path,
346
+ args.output,
347
+ args.waveform_samples,
348
+ args.output_key,
349
+ )
350
+
351
+ args.output.parent.mkdir(parents=True, exist_ok=True)
352
+ mlmodel.save(str(args.output))
353
+ print(f"Saved Core ML model: {args.output}")
354
+
355
+
356
+ if __name__ == "__main__":
357
+ main()
pyproject.toml ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ [project]
2
+ name = "yamnet-coreml"
3
+ version = "0.1.0"
4
+ description = "Add your description here"
5
+ readme = "README.md"
6
+ requires-python = ">=3.13"
7
+ dependencies = [
8
+ "coremltools>=9.0",
9
+ "tensorflow>=2.21.0",
10
+ ]
uv.lock ADDED
The diff for this file is too large to render. See raw diff
 
yamnet_model/assets/yamnet_class_map.csv ADDED
@@ -0,0 +1,522 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ index,mid,display_name
2
+ 0,/m/09x0r,Speech
3
+ 1,/m/0ytgt,"Child speech, kid speaking"
4
+ 2,/m/01h8n0,Conversation
5
+ 3,/m/02qldy,"Narration, monologue"
6
+ 4,/m/0261r1,Babbling
7
+ 5,/m/0brhx,Speech synthesizer
8
+ 6,/m/07p6fty,Shout
9
+ 7,/m/07q4ntr,Bellow
10
+ 8,/m/07rwj3x,Whoop
11
+ 9,/m/07sr1lc,Yell
12
+ 10,/t/dd00135,Children shouting
13
+ 11,/m/03qc9zr,Screaming
14
+ 12,/m/02rtxlg,Whispering
15
+ 13,/m/01j3sz,Laughter
16
+ 14,/t/dd00001,Baby laughter
17
+ 15,/m/07r660_,Giggle
18
+ 16,/m/07s04w4,Snicker
19
+ 17,/m/07sq110,Belly laugh
20
+ 18,/m/07rgt08,"Chuckle, chortle"
21
+ 19,/m/0463cq4,"Crying, sobbing"
22
+ 20,/t/dd00002,"Baby cry, infant cry"
23
+ 21,/m/07qz6j3,Whimper
24
+ 22,/m/07qw_06,"Wail, moan"
25
+ 23,/m/07plz5l,Sigh
26
+ 24,/m/015lz1,Singing
27
+ 25,/m/0l14jd,Choir
28
+ 26,/m/01swy6,Yodeling
29
+ 27,/m/02bk07,Chant
30
+ 28,/m/01c194,Mantra
31
+ 29,/t/dd00005,Child singing
32
+ 30,/t/dd00006,Synthetic singing
33
+ 31,/m/06bxc,Rapping
34
+ 32,/m/02fxyj,Humming
35
+ 33,/m/07s2xch,Groan
36
+ 34,/m/07r4k75,Grunt
37
+ 35,/m/01w250,Whistling
38
+ 36,/m/0lyf6,Breathing
39
+ 37,/m/07mzm6,Wheeze
40
+ 38,/m/01d3sd,Snoring
41
+ 39,/m/07s0dtb,Gasp
42
+ 40,/m/07pyy8b,Pant
43
+ 41,/m/07q0yl5,Snort
44
+ 42,/m/01b_21,Cough
45
+ 43,/m/0dl9sf8,Throat clearing
46
+ 44,/m/01hsr_,Sneeze
47
+ 45,/m/07ppn3j,Sniff
48
+ 46,/m/06h7j,Run
49
+ 47,/m/07qv_x_,Shuffle
50
+ 48,/m/07pbtc8,"Walk, footsteps"
51
+ 49,/m/03cczk,"Chewing, mastication"
52
+ 50,/m/07pdhp0,Biting
53
+ 51,/m/0939n_,Gargling
54
+ 52,/m/01g90h,Stomach rumble
55
+ 53,/m/03q5_w,"Burping, eructation"
56
+ 54,/m/02p3nc,Hiccup
57
+ 55,/m/02_nn,Fart
58
+ 56,/m/0k65p,Hands
59
+ 57,/m/025_jnm,Finger snapping
60
+ 58,/m/0l15bq,Clapping
61
+ 59,/m/01jg02,"Heart sounds, heartbeat"
62
+ 60,/m/01jg1z,Heart murmur
63
+ 61,/m/053hz1,Cheering
64
+ 62,/m/028ght,Applause
65
+ 63,/m/07rkbfh,Chatter
66
+ 64,/m/03qtwd,Crowd
67
+ 65,/m/07qfr4h,"Hubbub, speech noise, speech babble"
68
+ 66,/t/dd00013,Children playing
69
+ 67,/m/0jbk,Animal
70
+ 68,/m/068hy,"Domestic animals, pets"
71
+ 69,/m/0bt9lr,Dog
72
+ 70,/m/05tny_,Bark
73
+ 71,/m/07r_k2n,Yip
74
+ 72,/m/07qf0zm,Howl
75
+ 73,/m/07rc7d9,Bow-wow
76
+ 74,/m/0ghcn6,Growling
77
+ 75,/t/dd00136,Whimper (dog)
78
+ 76,/m/01yrx,Cat
79
+ 77,/m/02yds9,Purr
80
+ 78,/m/07qrkrw,Meow
81
+ 79,/m/07rjwbb,Hiss
82
+ 80,/m/07r81j2,Caterwaul
83
+ 81,/m/0ch8v,"Livestock, farm animals, working animals"
84
+ 82,/m/03k3r,Horse
85
+ 83,/m/07rv9rh,Clip-clop
86
+ 84,/m/07q5rw0,"Neigh, whinny"
87
+ 85,/m/01xq0k1,"Cattle, bovinae"
88
+ 86,/m/07rpkh9,Moo
89
+ 87,/m/0239kh,Cowbell
90
+ 88,/m/068zj,Pig
91
+ 89,/t/dd00018,Oink
92
+ 90,/m/03fwl,Goat
93
+ 91,/m/07q0h5t,Bleat
94
+ 92,/m/07bgp,Sheep
95
+ 93,/m/025rv6n,Fowl
96
+ 94,/m/09b5t,"Chicken, rooster"
97
+ 95,/m/07st89h,Cluck
98
+ 96,/m/07qn5dc,"Crowing, cock-a-doodle-doo"
99
+ 97,/m/01rd7k,Turkey
100
+ 98,/m/07svc2k,Gobble
101
+ 99,/m/09ddx,Duck
102
+ 100,/m/07qdb04,Quack
103
+ 101,/m/0dbvp,Goose
104
+ 102,/m/07qwf61,Honk
105
+ 103,/m/01280g,Wild animals
106
+ 104,/m/0cdnk,"Roaring cats (lions, tigers)"
107
+ 105,/m/04cvmfc,Roar
108
+ 106,/m/015p6,Bird
109
+ 107,/m/020bb7,"Bird vocalization, bird call, bird song"
110
+ 108,/m/07pggtn,"Chirp, tweet"
111
+ 109,/m/07sx8x_,Squawk
112
+ 110,/m/0h0rv,"Pigeon, dove"
113
+ 111,/m/07r_25d,Coo
114
+ 112,/m/04s8yn,Crow
115
+ 113,/m/07r5c2p,Caw
116
+ 114,/m/09d5_,Owl
117
+ 115,/m/07r_80w,Hoot
118
+ 116,/m/05_wcq,"Bird flight, flapping wings"
119
+ 117,/m/01z5f,"Canidae, dogs, wolves"
120
+ 118,/m/06hps,"Rodents, rats, mice"
121
+ 119,/m/04rmv,Mouse
122
+ 120,/m/07r4gkf,Patter
123
+ 121,/m/03vt0,Insect
124
+ 122,/m/09xqv,Cricket
125
+ 123,/m/09f96,Mosquito
126
+ 124,/m/0h2mp,"Fly, housefly"
127
+ 125,/m/07pjwq1,Buzz
128
+ 126,/m/01h3n,"Bee, wasp, etc."
129
+ 127,/m/09ld4,Frog
130
+ 128,/m/07st88b,Croak
131
+ 129,/m/078jl,Snake
132
+ 130,/m/07qn4z3,Rattle
133
+ 131,/m/032n05,Whale vocalization
134
+ 132,/m/04rlf,Music
135
+ 133,/m/04szw,Musical instrument
136
+ 134,/m/0fx80y,Plucked string instrument
137
+ 135,/m/0342h,Guitar
138
+ 136,/m/02sgy,Electric guitar
139
+ 137,/m/018vs,Bass guitar
140
+ 138,/m/042v_gx,Acoustic guitar
141
+ 139,/m/06w87,"Steel guitar, slide guitar"
142
+ 140,/m/01glhc,Tapping (guitar technique)
143
+ 141,/m/07s0s5r,Strum
144
+ 142,/m/018j2,Banjo
145
+ 143,/m/0jtg0,Sitar
146
+ 144,/m/04rzd,Mandolin
147
+ 145,/m/01bns_,Zither
148
+ 146,/m/07xzm,Ukulele
149
+ 147,/m/05148p4,Keyboard (musical)
150
+ 148,/m/05r5c,Piano
151
+ 149,/m/01s0ps,Electric piano
152
+ 150,/m/013y1f,Organ
153
+ 151,/m/03xq_f,Electronic organ
154
+ 152,/m/03gvt,Hammond organ
155
+ 153,/m/0l14qv,Synthesizer
156
+ 154,/m/01v1d8,Sampler
157
+ 155,/m/03q5t,Harpsichord
158
+ 156,/m/0l14md,Percussion
159
+ 157,/m/02hnl,Drum kit
160
+ 158,/m/0cfdd,Drum machine
161
+ 159,/m/026t6,Drum
162
+ 160,/m/06rvn,Snare drum
163
+ 161,/m/03t3fj,Rimshot
164
+ 162,/m/02k_mr,Drum roll
165
+ 163,/m/0bm02,Bass drum
166
+ 164,/m/011k_j,Timpani
167
+ 165,/m/01p970,Tabla
168
+ 166,/m/01qbl,Cymbal
169
+ 167,/m/03qtq,Hi-hat
170
+ 168,/m/01sm1g,Wood block
171
+ 169,/m/07brj,Tambourine
172
+ 170,/m/05r5wn,Rattle (instrument)
173
+ 171,/m/0xzly,Maraca
174
+ 172,/m/0mbct,Gong
175
+ 173,/m/016622,Tubular bells
176
+ 174,/m/0j45pbj,Mallet percussion
177
+ 175,/m/0dwsp,"Marimba, xylophone"
178
+ 176,/m/0dwtp,Glockenspiel
179
+ 177,/m/0dwt5,Vibraphone
180
+ 178,/m/0l156b,Steelpan
181
+ 179,/m/05pd6,Orchestra
182
+ 180,/m/01kcd,Brass instrument
183
+ 181,/m/0319l,French horn
184
+ 182,/m/07gql,Trumpet
185
+ 183,/m/07c6l,Trombone
186
+ 184,/m/0l14_3,Bowed string instrument
187
+ 185,/m/02qmj0d,String section
188
+ 186,/m/07y_7,"Violin, fiddle"
189
+ 187,/m/0d8_n,Pizzicato
190
+ 188,/m/01xqw,Cello
191
+ 189,/m/02fsn,Double bass
192
+ 190,/m/085jw,"Wind instrument, woodwind instrument"
193
+ 191,/m/0l14j_,Flute
194
+ 192,/m/06ncr,Saxophone
195
+ 193,/m/01wy6,Clarinet
196
+ 194,/m/03m5k,Harp
197
+ 195,/m/0395lw,Bell
198
+ 196,/m/03w41f,Church bell
199
+ 197,/m/027m70_,Jingle bell
200
+ 198,/m/0gy1t2s,Bicycle bell
201
+ 199,/m/07n_g,Tuning fork
202
+ 200,/m/0f8s22,Chime
203
+ 201,/m/026fgl,Wind chime
204
+ 202,/m/0150b9,Change ringing (campanology)
205
+ 203,/m/03qjg,Harmonica
206
+ 204,/m/0mkg,Accordion
207
+ 205,/m/0192l,Bagpipes
208
+ 206,/m/02bxd,Didgeridoo
209
+ 207,/m/0l14l2,Shofar
210
+ 208,/m/07kc_,Theremin
211
+ 209,/m/0l14t7,Singing bowl
212
+ 210,/m/01hgjl,Scratching (performance technique)
213
+ 211,/m/064t9,Pop music
214
+ 212,/m/0glt670,Hip hop music
215
+ 213,/m/02cz_7,Beatboxing
216
+ 214,/m/06by7,Rock music
217
+ 215,/m/03lty,Heavy metal
218
+ 216,/m/05r6t,Punk rock
219
+ 217,/m/0dls3,Grunge
220
+ 218,/m/0dl5d,Progressive rock
221
+ 219,/m/07sbbz2,Rock and roll
222
+ 220,/m/05w3f,Psychedelic rock
223
+ 221,/m/06j6l,Rhythm and blues
224
+ 222,/m/0gywn,Soul music
225
+ 223,/m/06cqb,Reggae
226
+ 224,/m/01lyv,Country
227
+ 225,/m/015y_n,Swing music
228
+ 226,/m/0gg8l,Bluegrass
229
+ 227,/m/02x8m,Funk
230
+ 228,/m/02w4v,Folk music
231
+ 229,/m/06j64v,Middle Eastern music
232
+ 230,/m/03_d0,Jazz
233
+ 231,/m/026z9,Disco
234
+ 232,/m/0ggq0m,Classical music
235
+ 233,/m/05lls,Opera
236
+ 234,/m/02lkt,Electronic music
237
+ 235,/m/03mb9,House music
238
+ 236,/m/07gxw,Techno
239
+ 237,/m/07s72n,Dubstep
240
+ 238,/m/0283d,Drum and bass
241
+ 239,/m/0m0jc,Electronica
242
+ 240,/m/08cyft,Electronic dance music
243
+ 241,/m/0fd3y,Ambient music
244
+ 242,/m/07lnk,Trance music
245
+ 243,/m/0g293,Music of Latin America
246
+ 244,/m/0ln16,Salsa music
247
+ 245,/m/0326g,Flamenco
248
+ 246,/m/0155w,Blues
249
+ 247,/m/05fw6t,Music for children
250
+ 248,/m/02v2lh,New-age music
251
+ 249,/m/0y4f8,Vocal music
252
+ 250,/m/0z9c,A capella
253
+ 251,/m/0164x2,Music of Africa
254
+ 252,/m/0145m,Afrobeat
255
+ 253,/m/02mscn,Christian music
256
+ 254,/m/016cjb,Gospel music
257
+ 255,/m/028sqc,Music of Asia
258
+ 256,/m/015vgc,Carnatic music
259
+ 257,/m/0dq0md,Music of Bollywood
260
+ 258,/m/06rqw,Ska
261
+ 259,/m/02p0sh1,Traditional music
262
+ 260,/m/05rwpb,Independent music
263
+ 261,/m/074ft,Song
264
+ 262,/m/025td0t,Background music
265
+ 263,/m/02cjck,Theme music
266
+ 264,/m/03r5q_,Jingle (music)
267
+ 265,/m/0l14gg,Soundtrack music
268
+ 266,/m/07pkxdp,Lullaby
269
+ 267,/m/01z7dr,Video game music
270
+ 268,/m/0140xf,Christmas music
271
+ 269,/m/0ggx5q,Dance music
272
+ 270,/m/04wptg,Wedding music
273
+ 271,/t/dd00031,Happy music
274
+ 272,/t/dd00033,Sad music
275
+ 273,/t/dd00034,Tender music
276
+ 274,/t/dd00035,Exciting music
277
+ 275,/t/dd00036,Angry music
278
+ 276,/t/dd00037,Scary music
279
+ 277,/m/03m9d0z,Wind
280
+ 278,/m/09t49,Rustling leaves
281
+ 279,/t/dd00092,Wind noise (microphone)
282
+ 280,/m/0jb2l,Thunderstorm
283
+ 281,/m/0ngt1,Thunder
284
+ 282,/m/0838f,Water
285
+ 283,/m/06mb1,Rain
286
+ 284,/m/07r10fb,Raindrop
287
+ 285,/t/dd00038,Rain on surface
288
+ 286,/m/0j6m2,Stream
289
+ 287,/m/0j2kx,Waterfall
290
+ 288,/m/05kq4,Ocean
291
+ 289,/m/034srq,"Waves, surf"
292
+ 290,/m/06wzb,Steam
293
+ 291,/m/07swgks,Gurgling
294
+ 292,/m/02_41,Fire
295
+ 293,/m/07pzfmf,Crackle
296
+ 294,/m/07yv9,Vehicle
297
+ 295,/m/019jd,"Boat, Water vehicle"
298
+ 296,/m/0hsrw,"Sailboat, sailing ship"
299
+ 297,/m/056ks2,"Rowboat, canoe, kayak"
300
+ 298,/m/02rlv9,"Motorboat, speedboat"
301
+ 299,/m/06q74,Ship
302
+ 300,/m/012f08,Motor vehicle (road)
303
+ 301,/m/0k4j,Car
304
+ 302,/m/0912c9,"Vehicle horn, car horn, honking"
305
+ 303,/m/07qv_d5,Toot
306
+ 304,/m/02mfyn,Car alarm
307
+ 305,/m/04gxbd,"Power windows, electric windows"
308
+ 306,/m/07rknqz,Skidding
309
+ 307,/m/0h9mv,Tire squeal
310
+ 308,/t/dd00134,Car passing by
311
+ 309,/m/0ltv,"Race car, auto racing"
312
+ 310,/m/07r04,Truck
313
+ 311,/m/0gvgw0,Air brake
314
+ 312,/m/05x_td,"Air horn, truck horn"
315
+ 313,/m/02rhddq,Reversing beeps
316
+ 314,/m/03cl9h,"Ice cream truck, ice cream van"
317
+ 315,/m/01bjv,Bus
318
+ 316,/m/03j1ly,Emergency vehicle
319
+ 317,/m/04qvtq,Police car (siren)
320
+ 318,/m/012n7d,Ambulance (siren)
321
+ 319,/m/012ndj,"Fire engine, fire truck (siren)"
322
+ 320,/m/04_sv,Motorcycle
323
+ 321,/m/0btp2,"Traffic noise, roadway noise"
324
+ 322,/m/06d_3,Rail transport
325
+ 323,/m/07jdr,Train
326
+ 324,/m/04zmvq,Train whistle
327
+ 325,/m/0284vy3,Train horn
328
+ 326,/m/01g50p,"Railroad car, train wagon"
329
+ 327,/t/dd00048,Train wheels squealing
330
+ 328,/m/0195fx,"Subway, metro, underground"
331
+ 329,/m/0k5j,Aircraft
332
+ 330,/m/014yck,Aircraft engine
333
+ 331,/m/04229,Jet engine
334
+ 332,/m/02l6bg,"Propeller, airscrew"
335
+ 333,/m/09ct_,Helicopter
336
+ 334,/m/0cmf2,"Fixed-wing aircraft, airplane"
337
+ 335,/m/0199g,Bicycle
338
+ 336,/m/06_fw,Skateboard
339
+ 337,/m/02mk9,Engine
340
+ 338,/t/dd00065,Light engine (high frequency)
341
+ 339,/m/08j51y,"Dental drill, dentist's drill"
342
+ 340,/m/01yg9g,Lawn mower
343
+ 341,/m/01j4z9,Chainsaw
344
+ 342,/t/dd00066,Medium engine (mid frequency)
345
+ 343,/t/dd00067,Heavy engine (low frequency)
346
+ 344,/m/01h82_,Engine knocking
347
+ 345,/t/dd00130,Engine starting
348
+ 346,/m/07pb8fc,Idling
349
+ 347,/m/07q2z82,"Accelerating, revving, vroom"
350
+ 348,/m/02dgv,Door
351
+ 349,/m/03wwcy,Doorbell
352
+ 350,/m/07r67yg,Ding-dong
353
+ 351,/m/02y_763,Sliding door
354
+ 352,/m/07rjzl8,Slam
355
+ 353,/m/07r4wb8,Knock
356
+ 354,/m/07qcpgn,Tap
357
+ 355,/m/07q6cd_,Squeak
358
+ 356,/m/0642b4,Cupboard open or close
359
+ 357,/m/0fqfqc,Drawer open or close
360
+ 358,/m/04brg2,"Dishes, pots, and pans"
361
+ 359,/m/023pjk,"Cutlery, silverware"
362
+ 360,/m/07pn_8q,Chopping (food)
363
+ 361,/m/0dxrf,Frying (food)
364
+ 362,/m/0fx9l,Microwave oven
365
+ 363,/m/02pjr4,Blender
366
+ 364,/m/02jz0l,"Water tap, faucet"
367
+ 365,/m/0130jx,Sink (filling or washing)
368
+ 366,/m/03dnzn,Bathtub (filling or washing)
369
+ 367,/m/03wvsk,Hair dryer
370
+ 368,/m/01jt3m,Toilet flush
371
+ 369,/m/012xff,Toothbrush
372
+ 370,/m/04fgwm,Electric toothbrush
373
+ 371,/m/0d31p,Vacuum cleaner
374
+ 372,/m/01s0vc,Zipper (clothing)
375
+ 373,/m/03v3yw,Keys jangling
376
+ 374,/m/0242l,Coin (dropping)
377
+ 375,/m/01lsmm,Scissors
378
+ 376,/m/02g901,"Electric shaver, electric razor"
379
+ 377,/m/05rj2,Shuffling cards
380
+ 378,/m/0316dw,Typing
381
+ 379,/m/0c2wf,Typewriter
382
+ 380,/m/01m2v,Computer keyboard
383
+ 381,/m/081rb,Writing
384
+ 382,/m/07pp_mv,Alarm
385
+ 383,/m/07cx4,Telephone
386
+ 384,/m/07pp8cl,Telephone bell ringing
387
+ 385,/m/01hnzm,Ringtone
388
+ 386,/m/02c8p,"Telephone dialing, DTMF"
389
+ 387,/m/015jpf,Dial tone
390
+ 388,/m/01z47d,Busy signal
391
+ 389,/m/046dlr,Alarm clock
392
+ 390,/m/03kmc9,Siren
393
+ 391,/m/0dgbq,Civil defense siren
394
+ 392,/m/030rvx,Buzzer
395
+ 393,/m/01y3hg,"Smoke detector, smoke alarm"
396
+ 394,/m/0c3f7m,Fire alarm
397
+ 395,/m/04fq5q,Foghorn
398
+ 396,/m/0l156k,Whistle
399
+ 397,/m/06hck5,Steam whistle
400
+ 398,/t/dd00077,Mechanisms
401
+ 399,/m/02bm9n,"Ratchet, pawl"
402
+ 400,/m/01x3z,Clock
403
+ 401,/m/07qjznt,Tick
404
+ 402,/m/07qjznl,Tick-tock
405
+ 403,/m/0l7xg,Gears
406
+ 404,/m/05zc1,Pulleys
407
+ 405,/m/0llzx,Sewing machine
408
+ 406,/m/02x984l,Mechanical fan
409
+ 407,/m/025wky1,Air conditioning
410
+ 408,/m/024dl,Cash register
411
+ 409,/m/01m4t,Printer
412
+ 410,/m/0dv5r,Camera
413
+ 411,/m/07bjf,Single-lens reflex camera
414
+ 412,/m/07k1x,Tools
415
+ 413,/m/03l9g,Hammer
416
+ 414,/m/03p19w,Jackhammer
417
+ 415,/m/01b82r,Sawing
418
+ 416,/m/02p01q,Filing (rasp)
419
+ 417,/m/023vsd,Sanding
420
+ 418,/m/0_ksk,Power tool
421
+ 419,/m/01d380,Drill
422
+ 420,/m/014zdl,Explosion
423
+ 421,/m/032s66,"Gunshot, gunfire"
424
+ 422,/m/04zjc,Machine gun
425
+ 423,/m/02z32qm,Fusillade
426
+ 424,/m/0_1c,Artillery fire
427
+ 425,/m/073cg4,Cap gun
428
+ 426,/m/0g6b5,Fireworks
429
+ 427,/g/122z_qxw,Firecracker
430
+ 428,/m/07qsvvw,"Burst, pop"
431
+ 429,/m/07pxg6y,Eruption
432
+ 430,/m/07qqyl4,Boom
433
+ 431,/m/083vt,Wood
434
+ 432,/m/07pczhz,Chop
435
+ 433,/m/07pl1bw,Splinter
436
+ 434,/m/07qs1cx,Crack
437
+ 435,/m/039jq,Glass
438
+ 436,/m/07q7njn,"Chink, clink"
439
+ 437,/m/07rn7sz,Shatter
440
+ 438,/m/04k94,Liquid
441
+ 439,/m/07rrlb6,"Splash, splatter"
442
+ 440,/m/07p6mqd,Slosh
443
+ 441,/m/07qlwh6,Squish
444
+ 442,/m/07r5v4s,Drip
445
+ 443,/m/07prgkl,Pour
446
+ 444,/m/07pqc89,"Trickle, dribble"
447
+ 445,/t/dd00088,Gush
448
+ 446,/m/07p7b8y,Fill (with liquid)
449
+ 447,/m/07qlf79,Spray
450
+ 448,/m/07ptzwd,Pump (liquid)
451
+ 449,/m/07ptfmf,Stir
452
+ 450,/m/0dv3j,Boiling
453
+ 451,/m/0790c,Sonar
454
+ 452,/m/0dl83,Arrow
455
+ 453,/m/07rqsjt,"Whoosh, swoosh, swish"
456
+ 454,/m/07qnq_y,"Thump, thud"
457
+ 455,/m/07rrh0c,Thunk
458
+ 456,/m/0b_fwt,Electronic tuner
459
+ 457,/m/02rr_,Effects unit
460
+ 458,/m/07m2kt,Chorus effect
461
+ 459,/m/018w8,Basketball bounce
462
+ 460,/m/07pws3f,Bang
463
+ 461,/m/07ryjzk,"Slap, smack"
464
+ 462,/m/07rdhzs,"Whack, thwack"
465
+ 463,/m/07pjjrj,"Smash, crash"
466
+ 464,/m/07pc8lb,Breaking
467
+ 465,/m/07pqn27,Bouncing
468
+ 466,/m/07rbp7_,Whip
469
+ 467,/m/07pyf11,Flap
470
+ 468,/m/07qb_dv,Scratch
471
+ 469,/m/07qv4k0,Scrape
472
+ 470,/m/07pdjhy,Rub
473
+ 471,/m/07s8j8t,Roll
474
+ 472,/m/07plct2,Crushing
475
+ 473,/t/dd00112,"Crumpling, crinkling"
476
+ 474,/m/07qcx4z,Tearing
477
+ 475,/m/02fs_r,"Beep, bleep"
478
+ 476,/m/07qwdck,Ping
479
+ 477,/m/07phxs1,Ding
480
+ 478,/m/07rv4dm,Clang
481
+ 479,/m/07s02z0,Squeal
482
+ 480,/m/07qh7jl,Creak
483
+ 481,/m/07qwyj0,Rustle
484
+ 482,/m/07s34ls,Whir
485
+ 483,/m/07qmpdm,Clatter
486
+ 484,/m/07p9k1k,Sizzle
487
+ 485,/m/07qc9xj,Clicking
488
+ 486,/m/07rwm0c,Clickety-clack
489
+ 487,/m/07phhsh,Rumble
490
+ 488,/m/07qyrcz,Plop
491
+ 489,/m/07qfgpx,"Jingle, tinkle"
492
+ 490,/m/07rcgpl,Hum
493
+ 491,/m/07p78v5,Zing
494
+ 492,/t/dd00121,Boing
495
+ 493,/m/07s12q4,Crunch
496
+ 494,/m/028v0c,Silence
497
+ 495,/m/01v_m0,Sine wave
498
+ 496,/m/0b9m1,Harmonic
499
+ 497,/m/0hdsk,Chirp tone
500
+ 498,/m/0c1dj,Sound effect
501
+ 499,/m/07pt_g0,Pulse
502
+ 500,/t/dd00125,"Inside, small room"
503
+ 501,/t/dd00126,"Inside, large room or hall"
504
+ 502,/t/dd00127,"Inside, public space"
505
+ 503,/t/dd00128,"Outside, urban or manmade"
506
+ 504,/t/dd00129,"Outside, rural or natural"
507
+ 505,/m/01b9nn,Reverberation
508
+ 506,/m/01jnbd,Echo
509
+ 507,/m/096m7z,Noise
510
+ 508,/m/06_y0by,Environmental noise
511
+ 509,/m/07rgkc5,Static
512
+ 510,/m/06xkwv,Mains hum
513
+ 511,/m/0g12c5,Distortion
514
+ 512,/m/08p9q4,Sidetone
515
+ 513,/m/07szfh9,Cacophony
516
+ 514,/m/0chx_,White noise
517
+ 515,/m/0cj0r,Pink noise
518
+ 516,/m/07p_0gm,Throbbing
519
+ 517,/m/01jwx6,Vibration
520
+ 518,/m/07c52,Television
521
+ 519,/m/06bz3,Radio
522
+ 520,/m/07hvw1,Field recording
yamnet_model/saved_model.pb ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:672af6e1e34fe15a42d45d70217fd39f97e10aef9b0effbf9b0bf7826fccd462
3
+ size 3176321
yamnet_model/variables/variables.data-00000-of-00001 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d6753f22f173b2a8b1ce78918eaae79bf0a41ca61f4cfe9a1b948c97ff094ddc
3
+ size 15077564
yamnet_model/variables/variables.index ADDED
Binary file (7.4 kB). View file