cs_benus
Messages postés20Date d'inscriptionlundi 14 mars 2005StatutMembreDernière intervention29 juillet 2009
-
19 avril 2008 à 13:28
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 2021
-
30 avril 2008 à 17:08
bonjour,
connaissez-vous une librairie ou une astuce qui permet de tester si l'en-tete d'un fichier est bien au format flv (le format video de flash)?
Cirec
Messages postés3833Date d'inscriptionvendredi 23 juillet 2004StatutModérateurDernière intervention18 septembre 202250 20 avril 2008 à 00:43
Voici un petit exemple :
Const FLVSignature = $1564C46;
Procedure
TForm1.Button1Click(Sender: TObject);
Var
MS : TMemoryStream;
Sign : Longint;
Begin
With TMemoryStream.Create Do
Try
LoadFromFile('test.flv');
ReadBuffer(Sign, SizeOf(Sign));
If Sign = FLVSignature Then ShowMessage('Fichier
Flash');
Finally
Free;
End;
End;
Cirec
Messages postés3833Date d'inscriptionvendredi 23 juillet 2004StatutModérateurDernière intervention18 septembre 202250 20 avril 2008 à 17:44
ben c'est ce que je fais ... le fichier est ouvert et je lis les premier caractères et pas plus, puis le fichier est refermé ... on ne peut pas faire moins
ps : dans l'exemple donné je lis les 4 premiers et non les 3 premiers
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202235 20 avril 2008 à 19:25
function IsFlashVideoFile(const FileName: string): boolean;
var Sign : LongWord;
const FLVSignature = $01564C46;
begin
Result := false;
if not FileExists(FileName) then
Exit;
with TFileStream.Create(FileName, fmOpenRead) Do
try
ReadBuffer(Sign, 4); Result :Sign FLVSignature;
finally
Free;
end;
end;
if (FilePath<>'') AND (Extention<>'htm') AND (Extention<>'html')
AND (Extention<>'css') AND (Extention<>'js') AND (Extention<>'gif')
AND (Extention<>'jpg') AND (Extention<>'png') AND (Extention<>'txt') then
begin
With TMemoryStream.Create Do
Try
LoadFromFile(FilePath);