Views
No views yet
1from transformers import AutoModelForAudioClassification, AutoFeatureExtractor
2import torch
3import torchaudio
4
5# Load model and processor
6model_checkpoint = "LincolnD/wav2vec2-base-finetuned-ravdess-personalization"
7processor = AutoFeatureExtractor.from_pretrained(model_checkpoint)
8model = AutoModelForAudioClassification.from_pretrained(model_checkpoint)
9
10# Load and process audio
11audio_path = "path/to/your/audio.wav"
12waveform, sample_rate = torchaudio.load(audio_path)
13
14# Resample to 16kHz if needed
15if sample_rate != 16000:
16 resampler = torchaudio.transforms.Resample(sample_rate, 16000)
17 waveform = resampler(waveform)
18
19# Process and predict
20inputs = processor(waveform.squeeze().numpy(), sampling_rate=16000, return_tensors="pt", padding=True)
21with torch.no_grad():
22 outputs = model(**inputs)
23 predictions = torch.argmax(outputs.logits, dim=-1)
24
25emotion_id = predictions.item()
26emotion = model.config.id2label[emotion_id]
27print(f"Predicted emotion: {emotion}")