Zurück   Flashforum > Aktuelles > Tutorials > Flash Tutorials

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-03-2002, 10:02   #1 (permalink)
wolter.biz
 
Benutzerbild von wolter
 
Registriert seit: Jun 2001
Ort: Düsseldorf
Beiträge: 3.395
Exclamation Mikrofon und Webcam in Flash MX

Hier findet Ihr den Quellcode (Flash MX) für ein kleines Monster, dass über Bewegung und Lautstärke gesteuert wird, sofern Ihr eine Webcam und ein Mikrofon an eurem Computer angeschlossen habt.

Viel Spass,

Sascha.
Angehängte Dateien
Dateityp: zip monster move and shout.zip (48,4 KB, 2228x aufgerufen)
wolter ist offline   Mit Zitat antworten
Alt 24-03-2002, 22:06   #2 (permalink)
wolter.biz
 
Benutzerbild von wolter
 
Registriert seit: Jun 2001
Ort: Düsseldorf
Beiträge: 3.395
Kurzanleitung zum Thema

Mikrofon

Flash bietet in der Version MX eine Schnittstelle zu Audio-Eingabegeräten wie Mikrofonen. Wenn diese Klangquellen vom Betriebsystem als solche erkannt werden, dann bindet sie Flash auch direkt ein. Mit Hilfe der EINSTELLUNGEN im Flash Player (RECHTE MAUSTASTE unter Windows oder CTRL + MAUSTASTE auf Macintoshcomputern) läßt sich das leicht im Register Mikrofon überprüfen.
Bei unseren Tests ist es uns unter Windows gelungen mehrer Audioquellen gleichzeitig zu verwenden! Auf Macintoshcomputern konnten wir leider nicht mehr als ein Mikrofon einsetzen. Da die Ansteuerung der Audioeingabegeräte vom Betriebssystem übernommen wird, kann sich das je nach Konfigurationd und Betriebssystem unterschiedlich verhalten.

Mikrofon in Flash einbinden

Um eine externe Audioquelle in Flash anzusteuern, benötigen Sie eine Instanz der Soundeingabe – also z. B. eine Verbindung zu eine Mikrofon. Diese Verbin-dung stellen Sie mit Hilfe des globalen Microphone-Objektes her:
PHP-Code:
// Erstelle Instanz des angeschlossenes Mikrofons
meinMikrofon=Microphone.get();
_root.attachAudio(meinMikrofon); 
Das attachAudio in dem vorhergehende Skript bewirkt, dass die Audioquelle innerhalb von Flash verwendet und abgespielt wird. In diesem Fall wurde der Ton mit der Hauptzeitleiste verknüpft – besser ist es in den meisten Fällen, dafür einen eigenen Movieclip zu verwenden, da sich so Lautstärke besser beeinflussen läßt:
PHP-Code:
// Deaktiviere den Ton (Lautstärke 0), damit es zu keiner Rückkopplung kommt
meinSound=new Sound(_root);
meinSound.setVolume(0); 
Eine interessante Einsatzmöglichkeit für die nun eingebundene Mikrofon-Instanz in Flash ist, dass Sie z. B. die Lautstärke ermitteln könne:
PHP-Code:
// Gib die Stärke des eingehenden Tons aus
_root.onEnterFrame=function () {
   
trace(meinMikrofon.activityLevel);

Kamera

Flash bietet in der Version MX eine Schnittstelle zu Video-Eingabegeräten wie Webcams. Wenn diese Kameras vom Betriebsystem als solche erkannt werden, dann bindet sie Flash auch direkt ein. Mit Hilfe der EINSTELLUNGEN im Flash Player (RECHTE MAUSTASTE unter Windows oder CTRL + MAUSTASTE auf Ma-cintoshcomputern) läßt sich das leicht im Register Kamera überprüfen.
Grundsätzlich verhält sich eine Kamera in Flash sehr ähnlich zu Mikrofonen. Meist werden auch beide Eingabequellen zusammen verwendet!

Kamera in Flash einbinden

Um eine externe Videoquelle in Flash anzusteuern, benötigen Sie eine Instanz der Bildeingabe – also z. B. eine Verbindung zu einer Webcam. Diese Verbin-dung stellen Sie mit Hilfe des globalen Camera-Objektes her:
PHP-Code:
// Erstelle Instanz der angeschlossenen Kamera
meineKamera=Camera.get(); 
Im Gegensatz zum Microphone-Objekt reicht es hier aber nicht aus, die Video-quelle mit einer Movieclip-Instanz zu verbinden! An dieser Stelle wird eine Vi-deo-Instanz benötigt. Das zugehörige Symbol erzeugen Sie in der Bibliothek über OPTIONEN | NEUES VIDEO. Indem Sie das leere Video in den Film ziehen und der nun erzeugten Instanz im Eigenschafteninspektor einen Instanznamen zuweisen (z. B. „meinVideo“), machen Sie es zu einem Kontainer für das Vi-deobild von einer Kamera:
PHP-Code:
// Erstelle Instanz der angeschlossenen Kamera
meineKamera=Camera.get();
// Zeige Bild von der Webcam an
meinVideo.attachVideo(meineKamera); 
Ähnlich zum Mikrofon kann beim Video die Intensität der eingehenden Bewegung ermittelt werden. Da es sich hierbei um die Unterschiede zwischen den einzelnen Videobildern handelt, muss Flash zu deren berechnung „gezwungen“ werden, indem die Komprimierung des Videosignals eingeschaltet wird:
PHP-Code:
// Komprimiere Video
meineKamera.setLoopback(true);
// Gib die Stärke der eingehenden Bewegung aus
_root.onEnterFrame=function () {
    
trace(meineKamera.activityLevel);

Undokumentierte Befehle

Die in den Einstellungen des Flash Players angebotenen Funktionen für Webcams und Mikrofone haben uns beim Test nicht ruhen lassen. Da wir in unserer Betaversion keine Informationen dazu finden konnten, haben wir uns selber auf die Suche gemacht.
Ist es noch naheliegend, dass für entsprechende Objekte in der Flash-Programmiersprache ActionScript die Bezeichnungen „Camera“ und „Microphone“ verwendet werden, gestaltet sich die Suche nach deren Funktionsweise schon schwieriger. Die Bestandteile der Objekte lasen sich mit Hilfe von for-in-Schleifen leicht ermitteln, aber für die genaue Funktionsweise muss viel experimentiert werden.
PHP-Code:
// Überprüfe, ob Camera eine Funktion (evtl. ein Konstruktor) ist
if (typeof Camera == "function") {
    for (
i in Camera) {
        
// Ermittle alle Bestandteile von Camera
        
trace(i+" ist vom Typ "+typeof Camera[i]);
    }

Viel Spass,

Sascha.
wolter ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

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



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:07 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele