fichier DDS calcule taille
fichier DDS calcule taille
salut a tous voila j'aurais besoin de calculer la taille d'un fichier dds grace au info qui sont dans l'entete du fichier j'arrive a recuperer la largeur et hauteur le probleme c'est que suivant le dxt la taille pris et differente et j'arrive pas a trouver plus d'explication sur le format
j'en ai besoin car je connait le debut du fichier mais pas la fin dans un fichier archive merci pour votre aide
j'en ai besoin car je connait le debut du fichier mais pas la fin dans un fichier archive merci pour votre aide
Re: fichier DDS calcule taille
Aurais-tu un petit fichier DDS à nous soumettre pour faire d'éventuels tests ?
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: fichier DDS calcule taille
oui bien sur
http://bebou007.free.fr/image269-806131712-524416-.dds
http://bebou007.free.fr/image517-815919104-8320-.dds
http://bebou007.free.fr/image7-909312-11064-.dds
donc voila 3 images dds
le dernier chiffre entre -524416- correspond a la taille du ficheir en decimale le probleme c'est que la je la connais la taille j'aimerai pouvoir trouver met fichier dds sans connaitre la taille merci
en position 12 et 16 il y a la largeur et la hauteur en pixel
http://bebou007.free.fr/image269-806131712-524416-.dds
http://bebou007.free.fr/image517-815919104-8320-.dds
http://bebou007.free.fr/image7-909312-11064-.dds
donc voila 3 images dds
le dernier chiffre entre -524416- correspond a la taille du ficheir en decimale le probleme c'est que la je la connais la taille j'aimerai pouvoir trouver met fichier dds sans connaitre la taille merci
en position 12 et 16 il y a la largeur et la hauteur en pixel
Dernière modification par bebou007 le mar. 16/mars/2010 13:16, modifié 1 fois.
Re: fichier DDS calcule taille
lol il faut lire mon post je cherche a trouver un fichier dans un autre fichier donc sa marche pas je vais avoir la taille de tous le fichier qui contient les autre fichier
Re: fichier DDS calcule taille
En gros tu as une archive genre Zip avec des fichiers dds dedans et tu veux connaitre la taille d'un fichier spécifique ?
--edit--
Si c'est le cas je vois pas trop comment faire excepter d'extraire le fichier de l'archive..
j'ai essayé de l'ouvrir avec winHex, je ne vois pas d'info concernant la taille.
En réalité je suis pas sûr d'avoir compris ton problème.
--edit--
Si c'est le cas je vois pas trop comment faire excepter d'extraire le fichier de l'archive..
j'ai essayé de l'ouvrir avec winHex, je ne vois pas d'info concernant la taille.
En réalité je suis pas sûr d'avoir compris ton problème.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: fichier DDS calcule taille
ben en fait c'est comme un zip si on veut mais pas compresser dedans il y a des tas de fichier et je peut trouver le debut du fichier dds car il commence pas DDS mais pour toruver la fin c'est une autre histoire
en fait selon le dxt utilier dans le dds la taille pris seras plus ou moins compresser
en fait j'arrive par fois a arriver a un calcule qui correspond bien a la taille du fichier mais c'est pas le cas pour tous les fichier certain dds il suffit de faire largeur*hauteur+128 octet de l'entête
certain c'est largeur*hauteur*3 voir fois 4 et certain si on fait juste largeur*hauteur sa dépasse de loin la taille du fichier qui et plu léger
en fait selon le dxt utilier dans le dds la taille pris seras plus ou moins compresser
en fait j'arrive par fois a arriver a un calcule qui correspond bien a la taille du fichier mais c'est pas le cas pour tous les fichier certain dds il suffit de faire largeur*hauteur+128 octet de l'entête
certain c'est largeur*hauteur*3 voir fois 4 et certain si on fait juste largeur*hauteur sa dépasse de loin la taille du fichier qui et plu léger
Re: fichier DDS calcule taille
J'ai trouve cette page qui devrait peut être te faire avancer.
http://fr.imageconverterplus.com/help-c ... rmats/dds/
Tu as le descriptif des dxt et autres
http://fr.imageconverterplus.com/help-c ... rmats/dds/
Tu as le descriptif des dxt et autres
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: fichier DDS calcule taille
merci j'avais deja vue je vais voir du coter de la lib nvidia pour le dds peut etre qu'il me renvera la taille
Re: fichier DDS calcule taille
C'est plutôt là qu'il faut regarder : http://doc.51windows.net/Directx9_SDK/? ... format.htm
Re: fichier DDS calcule taille
merci sa vas m'aider beaucoup
Re: fichier DDS calcule taille
Tant mieux parce que là moi je cale, trop compliqué pour mon petit cerveau de piaf.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: fichier DDS calcule taille
ha ok , j'avais pas fait gaffe a ce detailbebou007 a écrit :lol il faut lire mon post je cherche a trouver un fichier dans un autre fichier donc sa marche pas je vais avoir la taille de tous le fichier qui contient les autre fichier

Dernière modification par case le mer. 17/mars/2010 0:02, modifié 1 fois.
Re: fichier DDS calcule taille
j'ai l'impression que c'est pas encore ca ,) bon courage pour la suite :p
Code : Tout sélectionner
file$="image269-806131712-524416-.dds"
InitSprite()
Structure header
stru_size.l ;taille de la structure (124)
flags.l ;Flags to indicate valid fields. Always include DDSD_CAPS, DDSD_PIXELFORMAT, DDSD_WIDTH, DDSD_HEIGHT.
height.l ;hauteur de l'image en pixel
width.l ;largeur de l'image en pixels
size.l ;longueur d'une ligne de pixel en octet si le fichier n'est pas compresse, du total de l'image si il est compresse
depth.l ;For volume textures, this is the depth of the volume. dwFlags should include DDSD_DEPTH in this case.
mipmapcount.l ;For items with mipmap levels, this is the total number of levels in the mipmap chain of the main image. dwFlags should include DDSD_MIPMAPCOUNT in this case.
reserved.l[11];reserved
pixelformat.l ;pixelformat
ddscaps.w ;16-byte value that specifies the capabilities structure.
reserved2.l[2];reserve
endstructure
blah.header
*mem=AllocateMemory(FileSize(file$))
rd=ReadFile(#PB_Any,file$)
ReadData(rd,*mem,MemorySize(*mem))
CloseFile(rd)
CopyMemory(*mem+4,@blah,SizeOf(blah))
nb=Len(Str(blah\size))
off=128
Global main=OpenWindow(#PB_Any,0,80,1024,1024,"test")
Global screen=OpenWindowedScreen(WindowID(main),0,0,1024,1024,0,0,0)
x=0
y=0
ClearScreen($202020)
StartDrawing(ScreenOutput())
Repeat
;
color1=PeekW(*mem+off):off+2
color2=PeekW(*mem+off):off+2
r1=((color1 & %1111100000000000) >>11)
g1=((color1 & %0000011111100000) >>5)
b1=(color1 & %0000000000011111)
;
r2=((color2 & %1111100000000000) >>11)
g2=((color2 & %0000011111100000) >>5)
b2=(color2 & %0000000000011111)
pix_enc=PeekL(*mem+off):off+4
mask_x=30
For yy=0 To 3
For xx=0 To 3
mask=%11<<mask_x
Select (pix_enc & mask)>>mask_x
Case 00
rc=r1
gc=g1
bc=b1
Case 01
rc=r2
gc=g2
bc=b2
Case 10
rc=((2*r1)+r2)/3
gc=((2*g1)+g2)/3
bc=((2*b1)+b2)/3
Case 11
rc=((2*r2)+r1)/3
gc=((2*g2)+g1)/3
bc=((2*b2)+b1)/3
EndSelect
If x+xx<blah\width And y+yy<blah\height
Plot(x+xx,y+yy,RGB(rc,gc,bc))
EndIf
Next
Next
x+4
If x=blah\width
x=0
y+4
EndIf
Until off=blah\size
StopDrawing()
FlipBuffers()
Repeat
ev=WaitWindowEvent()
Until ev=#PB_Event_CloseWindow
Dernière modification par case le mer. 17/mars/2010 2:13, modifié 1 fois.
Re: fichier DDS calcule taille
merci case pour ton aide sur le site il dise que les format compresser sont dxt1 dxt2 dxt3 dxt4 dxt5 je dds que j'ai choisi c'est un fichier dds dxt1 donc size devrais me donner la taille de l'image en fait je vien de voir que size me donner 8192 hauteur 128 largeur 128 par contre si j'ouvre avec photoshop le dds et bien j'ai 6 image en largeur et pas une de 128*128
si je fait 6*8192 +128 de l'entête j'obtient bien la taille du fichier mais comment sa se fait qu'il me met que 128 en largeur alors qu'il fait 768 en tous cas merci pour ton aide
si je fait 6*8192 +128 de l'entête j'obtient bien la taille du fichier mais comment sa se fait qu'il me met que 128 en largeur alors qu'il fait 768 en tous cas merci pour ton aide