2009-12-08 14 views
6

Sto lavorando su un motore di ricerca video. Simile al video di google. Ho notato che il video google ha una schermata da tutti i video che indicizzano. Ho provato molti modi per raggiungere questo obiettivo senza successo. Un modo che mi è stato suggerito è di creare un swf che caricherà il swf richiesto e farà una schermata. tuttavia questa non è una buona soluzione poiché ho bisogno che il mio video venga indicizzato automaticamente.Cattura uno screenshot di un video incorporato utilizzando C#

Ho già creato il motore di ricerca per indicizzare tutti i video. ma sono bloccato a scattare una schermata.

Una cosa che ho notato è che le schermate su google video non hanno i comandi di riproduzione di giocatori provenienti da vari siti web. Questo mi porta a pensare che catturino una schermata dalle informazioni di streaming e non dal video flash.

Qualcuno ha un indizio o un metodo per catturare una schermata di uno streaming video utilizzando C# Asp.net?

Modifica

non sto cercando di ottenere un film e convertirlo a lampeggiare e catturare una schermata. Sono interessato a scattare una schermata di filmati Flash su siti come youtube e vimeo. Quindi quello che faccio è indicizzare internet alla ricerca di tag degli oggetti che sono riuscito a fare. Ma non riesco a trovare un modo per fare uno screenshot. Tuttavia, Google è riuscito a farlo con google video.

+0

+1 per la domanda interessante –

risposta

2

ecco un buon post sul blog per riprodurre video in asp.net e creare una miniatura. Potrebbe aiutarti come suggerimento. Lo scrittore ha fornito anche il codice sorgente.

http://ramcrishna.blogspot.com/2008/09/playing-videos-like-youtube-and.html

+0

Grazie per la risposta. Ma voglio fare una schermata di un oggetto SWF flash che riproduce il film. Questo articolo spiega come fare una schermata di un film. – Marwan

0

Questo semplice metodo cattura l'immagine della schermata corrente in un oggetto NET bitmap.

private Image CaptureScreen() 
{ 
    Rectangle screenSize = Screen.PrimaryScreen.Bounds; 
    Bitmap target = new Bitmap(screenSize.Width,screenSize.Height); 
    using(Graphics g = Graphics.FromImage(target)) 
    { 
     g.CopyFromScreen(0,0,0,0,new Size(screenSize.Width,screenSize.Height)); 
    } 
    return target; 
} 
Problemi correlati