Question

J'ai écrit assez de code pour prévisualiser la vidéo Webcam en Flash.

Maintenant, je veux capturer des images à des intervalles de 10 secondes.

Voici mon code:

import flash.display.BitmapData
import flash.geom.Matrix
import com.adobe.images.JPGEncoder;
import flash.net.FileReference;

//get the default camera
//change your Default camera using the Flash Player Settings.
cam=Camera.get()
//this event is called whenever permission to access the local camera, is accepted or denied by the user
cam.onStatus=function(e)
{
    //if we are given permission
    if(e.code == "Camera.Unmuted")
    {
        //start the application
        initialize()
    }
    else
    {
        System.showSettings(3)
    }
}

var snapshot:BitmapData=new BitmapData(cam._width,cam._height);

function takeSnapshot()
{
    snapshot.draw(cam,new Matrix());
}


//if there are no Cameras
if(cam == null)
{
    System.showSettings(3)
}
else
{
    cam.setMode(1024, 768, 30);
    cam.setQuality(10000,0);
    output.attachVideo(cam);
    setInterval(this,"takeSnapshot",1000);
}

Toute aide s'il vous plaît?

Je suis un nouveau débutant flash.

merci, Rishi.

Était-ce utile?

La solution

Si vous souhaitez l'enregistrer sur le disque de l'utilisateur, gardez-le à l'esprit que vous ne pouvez pas le faire automatiquement car, pour des raisons de sécurité, la méthode Save () de la classe FileEference ne peut être utilisée qu'après des actions spécifiques de l'utilisateur (clic,Mousedown et je suppose que les touches de la clé).Après avoir eu votre bitmapdata, vous aurez besoin du codeur JPEG de http://code.google.com/p / as3corelib / pour encoder votre img et le sauvegarder sur le disque.Quelque chose comme ça:

    var fileBrowser:FileReference = new FileReference();

    var bd:BitmapData = new BitmapData(imageContainer.width, imageContainer.height, false, 0xFFFFFF);

    bd.draw(imageContainer);

    var encoder:JPGEncoder = new JPGEncoder(35);

    var bytes:ByteArray = encoder.encode(bd);

    fileBrowser.save(bytes);

Jetez un coup d'œil à la FileRefrence Doc ici HTTP: //help.adobe.com/fr_us/as3lcr/flash_10.0/flash/net/filereence.html Vous voyez donc ce que vous pouvez faire d'autre avec cela.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top