Bonjour,
Je suis en train de travailler sur un projet qui gènere des images CD au format ISO Mode 2 Form 1. Après avoir compris leur format, la dernière étape consiste à recalculer les zones ECC P, ECC Q et EDC.
J'ai trouvé un code source écrit en C qui permet de le faire, appellé yazedc. Après l'avoir modifié et re-compilé, j'ai réussi avec succès à générer un secteur complet (dans un fichier) à partir d'un fichier source contenant mes données, de 2048 bytes de longueur. Mais le problème, c'est que les ECC P, ECC Q et EDC calculés par yazedc sont faux (à 10 ou 15 bytes près !!!).
Après quelques recherches, je me suis aperçu que yazedc est en fait un hack de la libedc inclu dans cdrtools. J'ai pris la version cdrtools-2.01.01a03. Après avoir pas mal repris le code pour qu'il compile en stand-alone, j'ai réussi à génerer un fichier représentant un secteur, de la même façon qu'avec yazedc.
Le problème, c'est comme je m'en doutais () les valeurs calculés sont encore fausses, à peu de bytes près comme tout à l'heure !
Autrement dit, je ne sais pas du tout comment faire pour génerer ces codes de correction d'erreurs de manière valide (je base sur l'inspecteur de secteur de Alcohol).
Je me suis dit que c'était pas si grave, et que les graveurs savent recalculer ces codes. Mais le problème c'est que mon ISO ainsi généré est illisible dans l'explorateur :/ Sauf évidemment quand je le grave et qu'ensuite je refais un ISO (là, il devient lisible).
Auriez vous une piste, un tutorial ou quelques bon liens qui puisse m'aider ? Une version plus récente de cdrtools ?![]()
Merci d'avance pour tous les conseils que vous pourriez me donner ainsi que de l'aide éventuelle.![]()
SiZ!
PS : Je peux évidemment poster mon projet si vous voulez jeter un oeil mais je poste pas pour que vous le fassiez entièrement à ma place.
PS Bis : Je ne suis pas développeur en C donc j'ai un peu de mal désolé :/
Partager