WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Schallpegel bei untersch. Zeitgewichtung fast, slow, impuls

 

fyllistra
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 23.04.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.04.2021, 12:16     Titel: Schallpegel bei untersch. Zeitgewichtung fast, slow, impuls
  Antworten mit Zitat      
Hallo zusammen,

ich habe zuvor noch nie programmiert und möchte jetzt mittels Matlab versuchen ein Sprachsignal auszuwerten. Das Sprachsignal liegt als .mat Datei vor.
Ziel ist es den gemittelten dB Wert des Signals bei unterschiedlichen Zeitwichtungen (fast, slow, impuls) zu erhalten, um den den dB-Unterschied je nach Zeitwichtungs-Wahl vergleichen zu können.

Anbei ein Link zu der Zeitbewertung, die ich zur Auswertung anwenden möchte:
https://www.nti-audio.com/de/servic.....ow-impulse-zeitgewichtung

Ich habe schon rum probiert, aber noch nichts vernünftiges geschafft.

Kann mir evtl. jemand einen Tipp geben, wie ich an die Programmierung heran gehen kann?

Ich habe bereits folgendes versucht, allerdings ging das nur so semi gut mit einer .mp4 Datei. Bei der Original .mat Datei kommt es zu Fehlermeldungen, dass der Filter nicht anwendbar ist. Da ich komplett neu im Programmieren bin, kann es auch total falsch sein..

Code:
%% fast vs slow
tau_f = 0.125; % fast in s
tau_s = 1; % slow in s

fc_f = 1/tau_f; % cut-off frequency fast
fc_s = 1/tau_s; % cut-off frequency slow
fs = 48000; %Abtastrate

[b_f, a_f] = butter(1, fc_f/(fs/2)); % Tiefpassfilter fast
[b_s, a_s] = butter(1, fc_s/(fs/2)); % Tiefpassfilter slow

signalOut_f = filter(b_f, a_f, signal); % Anwendung Filter auf Signal fast
signalOut_s = filter(b_s, a_s, signal); % Anwendung Filter auf Signal slow

plot(signal); hold on;
plot(signalOut_f); hold on;
plot(signalOut_s); hold on;
legend('signal', 'filteredFast', 'filteredSlow');

dB_f = 20 * log10(rms(signalOut_f));
dB_s = 20 * log10(rms(signalOut_s));


Vielen Dank!! Smile
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 26.04.2021, 12:31     Titel: Re: Schallpegel bei untersch. Zeitgewichtung fast, slow, imp
  Antworten mit Zitat      
Hallo fyllistra,

Zitat:
Ziel ist es den gemittelten dB Wert des Signals bei unterschiedlichen Zeitwichtungen (fast, slow, impuls) zu erhalten, um den den dB-Unterschied je nach Zeitwichtungs-Wahl vergleichen zu können.

Für jemanden, der nicht genau mit deinem Problem vertraut ist, ist das unverständlich. Denke daran, dass das für Matlab alles nur Zahlen sind. Dementsprechend musst du für eine Lösung auch im Allgemeinen nur erklären, wie du mit den Zahlen verfahren möchtest, aber nicht, was sie genau bedeuten. Die Lösungsmethode ist dann auch auf den Bananenpreis anwendbar.

Zitat:
Ich habe bereits folgendes versucht, allerdings ging das nur so semi gut mit einer .mp4 Datei.

Was bedeutet "semi gut"? Klappt es oder klappt es nicht? In letzterem Fall: Was ist der Unterschied zwischen dem Ergebnis und deinen Wünschen?

Zitat:
Bei der Original .mat Datei kommt es zu Fehlermeldungen, dass der Filter nicht anwendbar ist.

Bitte poste den Code und eine vollständige Kopie der Fehlermeldung. Bei einer ungefähren Nacherzählung der Bedeutung der Meldung gehen oft wichtige Details verloren, z.B. in welcher Zeile der Fehler auftritt.
Wie hast du das MAT-File denn importiert?

Gruß Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.