per salvare il fotogramma uso:
//estrazione fotogramma
RenderTargetBitmap bmp = new RenderTargetBitmap((int)oggetto.Width, (int)oggetto.Height, 96, 96, PixelFormats.Pbgra32);
bmp.Render(oggetto);
//visualizza l'immagine catturata cattura
image1.Source = BitmapFrame.Create(bmp);
//salva immagine in PNG
PngBitmapEncoder png = new PngBitmapEncoder();
png.Frames.Add((BitmapFrame)image1.Source);
Stream stm = File.Create(@"C:\file.png");
png.Save(stm);
//libera le risorse
stm.Dispose();
dove "oggetto" è un "MediaElement".
Ma come faccio a fare un'estrazione magari ogni 0,2 secondi?
E poi ho notato che la dimensione del fotogramma non corrisponde a quella del video, ma solo a quella dell'oggetto e se l'aumento non cattura ugualmente la parte residua, come faccio a catturarla completa?
|