AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Aufnahmequelle wählen?
Thema durchsuchen
Ansicht
Themen-Optionen

Aufnahmequelle wählen?

Ein Thema von Nuclear-Ping · begonnen am 8. Mär 2007 · letzter Beitrag vom 10. Mär 2007
Antwort Antwort
Nuclear-Ping
(Gast)

n/a Beiträge
 
#1

Aufnahmequelle wählen?

  Alt 8. Mär 2007, 14:14
Hallo, liebe Community,

ich möchte in meiner Anwendung, dass sie beim Start die "Standard Aufnahmequelle" von Windows auf eine bestimmte Soundkarte schaltet ("USB Audio" heisst das Teil), von dieser dann LineIn als Eingang wählt und diesen auf volle Lautstärke setzt.

Es geht um eine Hardware, die zu unserer Software mitgebaut und -geliefert wird, die eine eingebaute USB-Soundkarte hat, die (idealerweise -.-) "USB Audio" heisst. Das Gerät wird auch über USB angeschlossen. Wenn die Software gestartet wird - bzw. spätestens wenn eine Analyse läuft - MUSS sicher gestellt sein, dass der LineIn dieses Audiogeräts als Aufnahmequelle gewählt ist, da halt hierüber die Daten kommen.

Wenn man z.B. die USB-Verbindung trennt, stellt Windows die Aufnahmequelle wieder auf den Standardsoundtreiber und auf "Mikrofon". Steckt man das Gerät wieder dran und wählt manuell das Gerät, so steht die Aufnahme standardmäßig auf Mikrofon und die Lautstärke ist ziemlich runtergeregelt.

Ich bemühe schon seit gut zwei Tagen Google, bin auch auf diverse Sachen gestoßen (MSDN, SwissDelphiCenter, delphi.about.com, etc.) und hab hier im Forum gesucht (http://www.delphipraxis.net/internal...ect.php?t=6599 - leider 0 Antworten) aber irgendwie wurde ich daraus nicht schlau oder es wurde nicht dieses Thema behandelt.

Weiß hier jemand Rat?

Danke und Grüße,

Mario
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#2

Re: Aufnahmequelle wählen?

  Alt 10. Mär 2007, 10:13
Hallo,

hab eine Lösung gefunden. Ist zwar nicht unbedingt das, was ich mir vorgestellt hab, aber unterm Strich auf jeden Fall sauberer.

Hab keine Antworten und Lösungen gefunden, wie ich die globale Windows-Einstellung umstelle. Deswegen habe ich die entsprechenden Teile in der Anwendung von "TAudioIO" mit "BASS" ersetzt, welche gewünschte Funktionen unterstützt.

Delphi-Quellcode:
function BASS_Initialize_Recording_Device: Boolean;
var
  i: Integer;
  ChannelName,
  DeviceName: PChar;
  FoundDevice: Boolean;
begin
  Result := FALSE;
  
  // **** Aufnahmegerät auf "USB Audio" setzen
  FoundDevice := FALSE;

  BASS_RecordFree;
  i := 0;
  DeviceName := BASS_RecordGetDeviceDescription (i);
  while DeviceName <> nil do
    begin
      if (StrPas(DeviceName) = SOURCE_AUDIO_NAME) then
        begin
          BASS_RecordInit (i);
          FoundDevice := TRUE;
          break;
        end;
      inc (i);
      DeviceName := BASS_RecordGetDeviceDescription (i);
    end; // while

  if not FoundDevice then
    raise Exception.Create ('Fehler: Das Audiogerät "' + SOURCE_AUDIO_NAME + '" konnte nicht gefunden werden.');

  // **** Aufnahmequelle auf "LineIn" und max. Lautstärke setzen
  FoundDevice := FALSE;
  i := 0;
  ChannelName := BASS_RecordGetInputName(i);
  while ChannelName <> nil do
    begin
      if (StrPas(ChannelName) = SOURCE_AUDIO_INPUT) then
        begin
          FoundDevice := TRUE;
          BASS_RecordSetInput (i, BASS_INPUT_ON or BASS_INPUT_LEVEL or 100);
          break;
        end;
      inc(i);
      ChannelName := BASS_RecordGetInputName(i);
    end; // while

  if not FoundDevice then
    raise Exception.Create ('Fehler: Für das Audiogerät "' +
            SOURCE_AUDIO_NAME + '" konnte die Quelle "' +
            SOURCE_AUDIO_INPUT + '" nicht gewählt werden.');

  // ****

  Result := TRUE;
end;
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz