|
|
Soundkartensignal aufnehmen |
|
Ziggeldy |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.05.2015, 16:20
Titel: Soundkartensignal aufnehmen
|
|
|
|
|
Hallo zusammen,
ich möchte mir mit Matlab ein Programm schreiben, mit welchem ich das Outputsignal der Soundkarte in ein Array schreibe und danach weiterverwenden kann.
Ich möchte also das Signal aufnehmen, welches von der Soundkarte an die Lautsprecher gesendet wird.
Ich habe es bereits hinbekommen, dass ich das Signal des Input-Kanals (Mikrofon) der Soundkarte aufnehmen kann und in einer Variablen speichern kann.
Mit diesen Befehlen wird eine fünf Sekunden lange aufnahme gestartet und die Signale des Inputs in die Variable y geschrieben:
recObj = audiorecorder(44100,8,2,0);
recordblocking(recObj, 5);
y = getaudiodata(recObj);
Um den Output Kanal aufzuzeichnen müsste ich meiner Meinung nach lediglich die "0" in dem Befehl "audiorecorder" an die ID des Output-Kanals anpassen.
Nun habe ich probiert mir über folgenden Befehl die ID des Output-Kanals zu besorgen um diese in dem Befehl audiorecorder zu verwenden:
info = audiodevinfo.output.ID;
Hierbei erhalte ich folgende Warnung:
"Warning: Direct access of structure fields returned by a function call (e.g.,
call to audiodevinfo) is not allowed. See MATLAB 7.10 Release Notes, "Subscripting Into Function Return Values" for details."
An dieser Stelle komme ich leider nicht weiter. Habt ihr vielleicht eine Idee, wie ich mein Vorhaben umsetzen kann? Evtl. auch mit einem ganz anderen Befehl als "Audiorecorder" ?
Viele Grüße
Ziggeldy
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 30.05.2015, 17:05
Titel: Re: Soundkartensignal aufnehmen
|
|
Hallo Ziggeldy,
audiodevinfo ist ein Befehl, das Anhängen von Feld-Namen per Punkt funktioniert aber für Strukts. Also muss man zuerst die Rückgabe des Befehls speichern und kann dann per Punkt auf die Felder zugreifen:
Gruß, Jan
|
|
|
Ziggeldy |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.06.2015, 16:22
Titel: Benötige weitere Tipps
|
|
Hi Jan, vielen Dank für den Tipp.
Leider bin ich damit noch nicht viel weiter gekommen.
Ich glaube ein Problem bei meinem Vorhaben liegt darin, dass die DeviceID des Inputs und des Outputs identisch sind. Bei den Befehlen "audiodevinfo.input" und "audiodevinfo.output" kommen beide mal folgende Antwort:
Name: [1x31 char]
DriverVersion: '6.1'
ID: 0
An dieser Stelle ist es vielleicht relevant zu erwähnen, dass ich das mit einem Laptop probiere und keine Hightech Soundcarde installiert habe.
Ich habe auch probiert die beiden Buchsen mit einem Aux-Kabel zu verbinden. Das funktioniert soweit, allerdings ist die Qualität miserabel.
Ich freue mich auf eure Ratschläge
Viele Grüße
Ziggeldy
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|