Klassen Microphone har ingen konstruktormetod. I stället använder du den statiska
Microphone.getMicrophone()
-metoden för att hämta en ny Microphone-instans enligt nedan:
var mic:Microphone = Microphone.getMicrophone();
Om du anropar
Microphone.getMicrophone()
-metoden utan en parameter, returneras den första ljudindataenheten som påträffas i användarens system.
Ett system kan ha fler än en ljudindataenhet ansluten. Programmet kan använda egenskapen
Microphone.names
för att få en array med namnen på alla tillgängliga ljudindataenheter. Sedan kan det anropa
Microphone.getMicrophone()
-metoden med en
index
-parameter som matchar indexvärdet för enhetens namn i arrayen.
Ett system kanske inte har någon mikrofon eller andra indataenheter för ljud anslutna. Du kan använda egenskapen
Microphone.names
eller metoden
Microphone.getMicrophone()
för att kontrollera om användaren har någon ljudindataenhet installerad. Om användaren inte har installerat någon ljudindataenhet har
names
-arrayen längden noll och
getMicrophone()
-metoden returnerar värdet
null
.
När programmet anropar
Microphone.getMicrophone()
-metoden, visar Flash Player dialogrutan Flash Player-inställningar som uppmanar användaren att antingen tillåta eller neka Flash Player åtkomst till kameran och mikrofonen i systemet. När användaren har klickat på Tillåt eller Neka i dialogrutan skickas ett StatusEvent-objekt. Egenskapen
code
i StatusEvent-instansen anger om åtkomst till mikrofonen tilläts eller nekades enligt det här exemplet:
import flash.media.Microphone;
var mic:Microphone = Microphone.getMicrophone();
mic.addEventListener(StatusEvent.STATUS, this.onMicStatus);
function onMicStatus(event:StatusEvent):void
{
if (event.code == "Microphone.Unmuted")
{
trace("Microphone access was allowed.");
}
else if (event.code == "Microphone.Muted")
{
trace("Microphone access was denied.");
}
}
StatusEvent.code
-egenskapen innehåller ”Microphone.Unmuted” om åtkomst tilläts eller ”Microphone.Muted” om åtkomst nekades.
Egenskapen
Microphone.muted
anges till
true
respektive
false
när användaren tillåter eller nekar åtkomst till mikrofonen. Men egenskapen
muted
anges inte för Microphone-instansen förrän StatusEvent-händelsen har skickats, och därför bör programmet också vänta tills händelsen
StatusEvent.STATUS
skickas innan
Microphone.muted
-egenskapen kontrolleras.
För att Flash Player ska kunna visa dialogrutan med inställningar måste programfönstret vara tillräckligt stort (minst 215 x 138 pixlar). Annars nekas åtkomst automatiskt.
Innehåll som körs i AIR-programmets sandlåda behöver inte användarens tillåtelse för att komma åt mikrofonen. Därför skickas aldrig några statushändelser för ljud av och ljud på för mikrofonen. Innehåll som körs i AIR utanför programmets sandlåda behöver däremot användarens tillåtelse så dessa statushändelser kan skickas.