Thx8411

Recherche un ou deux fichiers SER

Messages recommandés

Hello !

Dans le cadre du développement de qastrocam-g2, je cherche une âme charitable pouvant m'envoyer un ou deux exemples de fichiers ".ser" (fichiers produits par LUCAM-RECORDER. Pas bien grands, les fichiers, simplement pour voir si mes entêtes sont formatées correctement).

Bon ciel a tous !

Partager ce message


Lien à poster
Partager sur d’autres sites
Je dois avoir ça en stock.
Au pire je peux en faire exprès pour toi et te les envoyer.
Je suis limité à 8bits (PL1M) mais je peux jouer sur la taille X/Y de l'image et le nombre d'images (on va se limiter sur ce point pour le mail).

J'essaie de te préparer ça et te trouver un endroit pour le D/L.


Marc

Partager ce message


Lien à poster
Partager sur d’autres sites
Pas de problème pour le 8 bits. Qastrocam-g2 ne fait aussi que du 8 bits pour l'instant. Merci beaucoup !


[Ce message a été modifié par Thx8411 (Édité le 06-12-2010).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Ok, super ! Merci, j'ai résolu mon problème !

J'avais oublié que le compilateur m'alignait les données sur 32 bits...mon entête faisait 180 octets au lieu de 178 ;-)

Je développe principalement en C++, avec un peu de C de temps en temps.

Merci pour les propositions de sources. Je suis preneur pour les formats de date. Les infos que j'ai ne sont pas super claires. Pour l'instant, je ne rempli qu'un nombre minimum de champs.

Bonne nuit !

Partager ce message


Lien à poster
Partager sur d’autres sites
Oups, bon bin désolé, j'arrive un peu trop tard (gamin malade, tout ca, j'ai pas connecté l'ordinateur).
Si tu est toujours intéressé, les fichiers sont quand même là : http://dl.free.fr/rkE9GomrV

un de 320 x 240 x 8 bits x 76 frames
un de 1100 x 336 x 8 bits x 900 frames


Marc

Partager ce message


Lien à poster
Partager sur d’autres sites
Thx8411

c'est pareil en C# : 180 octet

j'ai donc fait une structure avec FileID de 14 octet (la elle passe a 176)

j'ai donc ecrit 2 octets : 'L' & 'U' puis la structure

pour les heures j'ai mis 10H10 dans les deux champ

IniParser parser = new IniParser(@"AVI_Felopaul.ini");
if (parser != null)
{
SaveDirectory.Text = parser.GetSetting("camera", "save_directory");
SER_Header.FileID = "CAM-RECORDE";
SER_Header.Observeur = parser.GetSetting("camera", "OBSERVER");
SER_Header.Instrument = parser.GetSetting("camera", "INSTRUMENT");
SER_Header.Telescope = parser.GetSetting("camera", "TELESCOPE");
string l = parser.GetSetting("camera", "CAMERA_SERIE");
SER_Header.LuID = Convert.ToInt32(l);
SER_Header.LittleEndian = 0;
SER_Header.STime = "" + M1.Hour + "H" + M1.Minute;
SER_Header.STimeUTC = "" + M1.Hour + "H" + M1.Minute;
}

Laurent
www.felopaul.com

Partager ce message


Lien à poster
Partager sur d’autres sites
@patry

Je prends aussi. Plus j'aurais d'entêtes, plus je serai sûr de mon truc ;-)

Merci beaucoup !

Partager ce message


Lien à poster
Partager sur d’autres sites
@toto

Merci !

Moi j'ai utilisé la directive __attribute((packed)) qui force gcc à ne pas aligner les données.

cela donne ça :

typedef struct {
char FileID[14];
uint32_t LuID;
uint32_t ColorID;
uint32_t LittleEndian;
uint32_t ImageWidth;
uint32_t ImageHeight;
uint32_t PixelDepth;
uint32_t FrameCount;
char Observer[40];
char Instrume[40];
char Telescope[40];
uint64_t DateTime;
uint64_t DateTime_UTC;
} __attribute((packed)) serHeader;

Il y a peut-être un équivalent en C# ?

J'ai habité huit ans dans la vallée de la Loue. Le ciel est plutôt bon. Je vois bien où est ton observatoire. Il est bien placé ;-)

Bonne journée !

Partager ce message


Lien à poster
Partager sur d’autres sites
en c# ca donne cela

struct FSER_Header
{
[MarshalAs (UnmanagedType.ByValTStr, SizeConst=14)]
public string FileID;
public int LuID;
public int ColorID;
public int LittleEndian;
public int Witdh;
public int Height;
public int PixelDepth;
public int Count;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string Observeur;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string Instrument;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string Telescope;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 8)]
public string STime;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 8)]
public string STimeUTC;
}

Partager ce message


Lien à poster
Partager sur d’autres sites
Hello !

J'ai trouvé cette doc là : http://dl.dropbox.com/u/14359150/divers/SER_Doc_V2.pdf

A priori, les dates ne sont pas des chaînes de caractère, elles sont dans un format binaire microsoft : nombre d'intervals de 100ns depuis le 1/1/0001 selon le calendrier Gregorien.

Dans les entêtes de patry, cela à bien une tête de binaire.

Bonne soirée !

Partager ce message


Lien à poster
Partager sur d’autres sites
oui tout a fait, j'avais posté ce fichier la, je pensait que tu l'avais vu !
http://www.astrosurf.com/ubb/Forum2/HTML/034488.html

mais le but est que le fichier soit lu et traité par les softs et le deux softs que j'utilise "avistack" et "Registax" les lisent !
Ces deux soft ne tiennent pas compte de l'heure.

J'ai mis l'heure avec un long (8 octets) avec un temps

struct FSER_Header
{
[MarshalAs (UnmanagedType.ByValTStr, SizeConst=14)]
public string FileID;
public int LuID;
public int ColorID;
public int LittleEndian;
public int Witdh;
public int Height;
public int PixelDepth;
public int Count;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string Observeur;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string Instrument;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string Telescope;
public long STime;
public long STimeUTC;
};

la c'est très simple :

DateTime date_hr_file = DateTime.UtcNow;
SER_Header.STimeUTC = date_hr_file.ToFileTime();
date_hr_file = DateTime.Now;
SER_Header.STime = date_hr_file.ToFileTime();


Laurent
www.felopaul.com

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant