понеже скоро ми се наложи да поразръчкам малко *.nrg image-та
а не исках да боотвам в уин (не че там имам пиратски софтуер де
'>
реших да се справям сам, както намеря за добре...
1-во след малко търсене се натъкнах на nrg2iso от Grgory Kokanosky
името говори достатъчно (nrg2iso), естествено това нещо пак не проработи при мене (едно поради факта, че явно напоследък неро прави бинарни образи, едно поради факта че в конкретния случай образа е на audio, което дефакто пак е бинарен... както и да е)
След разглеждане на кода на nrg2iso, се разбира че ако файла не е iso, то при копиране от 307200-я байт до края, става iso...
естествено това пак не проработи при мене, но даде няколко важни насоки...
1-во, тези 307200 (150*2048) байта евентуално са служебни неровски
2-ро, това са точно 150 сектора, ако сектора е 2048 байта...
веднага проверих, ако махна на .nrg image-то първите 150 сектора (всеки по 2352 байта, все пак е аудио image), какво ще се получи...
получи се прекрасно (бяха 0-ли всичките, в този конкретен пример)
2-ро, След като имаме един бинарен image, как да го..... разбира нерото откъде докъде са му траковете?!
----2.1 първия ми опит (също успешен), беше доста заобиколен, но работеше.... сложих wav header, нагласих cue-file, според броя и дължината на парчетата и воаля, опече се като слънце, т.е. и във freedb.org се изнамираше...
----2.2 Ами след малко тест, се оказа че важната информация си почва директно още в началото на файл-а....
ок, погледнах накрая и воаля, открои се интересен "таг" CUEX
след него има информация от вида (във big endian format):
....01 .....XXXXXX ...... 01... XXXXXX+96
....02------------------02--------
...
...YZ--------------------YZ---------
01 до YZ е номер на трака, а XXXXXX се оказа offset от началото (на вече стрипнатия файл) във сектори...(hex)
последва
begin= i_offset;
length= i+1_offset;
dd if=audio.nrg of=track_i skip=begin count=length bs=2352
и имах траковете поотделно...
тествах ги, точно те бяха (първо погледнах какво има на съответните offset-и)
остана въпроса със записването на cd...
единия вариант, е като 2.1 wav header и оттам нататък да му мисли програмата за записване....
но вече задълбал из толкова байтове и сектори реших, че може и по друг начин
'>
cdrecord -audio track.....
понеже track не ми завършваха на .wav cdrecord ги прие като бинарен образ на audio сектори...
и понеже големината им е кратна на 2352, не ме "наплю" като в предни случаи
'>
ами това...
Очертава се скоро пак да направя упражнението
'> та ако има интерес, бих могъл да документирам по-подробно процеса, и да дам и примери
'> , да се получи нещо като step by step...
п.с. преди доста време бях мернал коментар в един тракер, че .nrg не ставало за под линукс... та и това има принос да се реша да го направя the right way