Webcam & Mikrofon in Flash

Thema:
Webcam & Mikrofon in Flash
Description:
Einbindung von Webcambildern und Mikrofon mit der MX Technologie
Keywords:
Flash, Camera, Microphone
Author:
Sebastian Weyrauch
Date:
09.07.2002
Doc-ID:
54-001
URL:
http://www.flashworker.de/tutorial/54/001.html
Version:
1.0
Änderungen:
-
Anforderungen:

Flash MX
Webcam
Mikrofon

Vorkenntnisse:
Flash Grundkenntnisse
Download:
PC: "cammic.zip", 24 kB
Beispiel: "beispiel..zip", 10kB

Vorwort
  Der Sinn des Tutorials


Webcam
  Vorbereitende Schritte
  Das Scripting
  Weitere Funktionen


Mikrofon
 Das Scripting

Beispiel





Was bringt dieses Tutorial?

Die MX Technologie ist schon was Schönes.
Wie viele schon wissen, ist es ab sofort möglich, die Webcam und das Mikrofon in Flash zu verwenden.
Dieses Tutorial soll eine kleine Einleitung in dieses Gebiet sein und soll zeigen, wie so etwas realisiert wird.




Webcam

Abb.1: Popup-Fenster einfach: Button Action
Abb.1: Neues Video erzeugen

Um ein Bild auf die Bühne zu bringen, sind folgende vorbereitende Schritte notwendig:
In der Bibliothek muss ein neues leeres Video erzeugt werden. Wie das geht ist am besten auf Abb. 1 nachzuvollziehen


Nachdem das Video erzeugt wurde, muss es einfach aus der Biblithek auf die Bühne verschoben werden.
Darüberhinauß muss, wie bei einem Movieclip, dem Video ein Instanzname zugeordnet werden, im Beispiel habe ich den Instanznamen 'meinVideo' verwendet.
(Auch, wenn Calle's Konventionen wohl was dagegen hätten ;)

Kommen wir zum ActionScript Teil...
Dazu benötigen wir das 'Camera' Objekt.
Um das Webcam Bild zu nutzen, muss Camera.get() verwendet werden.
Als erstes erzeugen wir ein neues Objekt, zum Beispiel mit dem Namen 'Webcam'.

Und als nächster und letzter Schritt muss nur noch das Webcam Bild der betreffenden Videoinstanz zugeordnet werden,
in unserem Fall dem Video 'meinVideo'.

Das komplette Script sieht dann wie folgt aus:

Webcam=Camera.get();
meinVideo.attachVideo(Webcam);

 


Darüberhinauß, gibt es noch so Sachen wie

Camera.activityLevel

Dieser Wert beinhaltet die Aktivität hinter der Webcam, d.h. wenn viel Bewegung vorhanden ist, ein hoher Wert; bei geringer Bewegung, ein niedriger Wert. Aber um diesen Wert zu erzeugen, muss das Videosignal komprimiert werden. Dies geht per

Camera.setLoopback(true);

 

Außerdem kann man auch noch die Kameranamen auslesen, was z.B. sinnvoll ist, wenn man mehrere verwendet:

Camera.name

Hinweis: Um auf die Webcam zugreifen zu können, muss der Benutzer diese zuerst freigeben!





 

Mikrofon

Beim Mikrofon spielt sich das ganze ähnlich wie bei der Webcam ab. Nur diesmal wird anstatt des Camera Objekts das Microphone Objekt verwendet.

meinMikrofon=Microphone.get();
this.attachAudio(meinMikrofon);

Die Erklärung dürfte ich mir eigentlich sparen können. Es wird wiederum eine Verbindung zum Mikrofon hergestellt und dieses Audiosignal wird dann per 'attachAudio' auf die aktuelle Zeitleiste übertragen.

Auch hier ist es wieder möglich, die Aktivität - im konkreten Fall die Lautstärke - abzufragen:

Microphone.activityLevel

Hinweis: Auch hier muss der Zugriff auf das Mikrofon vom Anwender zugelassen werden!




Beispiel