YouTube muestra el frame que está en la mitad del video.
En Perl, hay algunos módulos para manejar Flash. Con SWF::Parser, SWF::Element y SWF::BinStream es posible acceder a la información contenida dentro de un Flash y si es un video, la documentación dice que se puede extraer un fotograma. Lo que no dice es qué formato es ese fotograma.
Últimamente, han salido otros módulos para el caso de Flash de Video, como el FLV::Info y el FLV::Body. Con este último parece que es posible sacarlos. El formato de los cuadros puede ser (sacado del fuente de FLV::Util):
Código:
our %VIDEO_CODEC_IDS = (
2 => 'Sorenson H.263',
3 => 'Screen video',
4 => 'On2 VP6',
5 => 'On2 VP6 + alpha',
6 => 'Screen video v2',
);
Ojo... no te olvides de que el cuadro que saques sea del tipo 'keyframe'
Código:
our %VIDEO_FRAME_TYPES = (
1 => 'keyframe',
2 => 'interframe',
3 => 'disposable interframe',
);
Buscando en Google por Perl y Flash salen más enlaces e información, como por ejemplo el módulo AMF::Perl.