cdrtoolsille käyttöliittymän teen

Teen siis cdrtoolsille (aluksi win-versio, myöhemmin myös linux-versio jahka ensin opin lisää) graafista edusohjelmaa.

Osaan kyllä esim. mkisofsin ja cdrecordin peruskomennot, eli miten selvitetään cdrecordilla cd-r aseman laitetunnus, miten luodaan ISO, ja miten se poltetaan levylle.

Mutta haluaisin myös oppia sen että miten komennan cdrecordia ja mkisofsia niin että ne yhteistyössä polttaa cd:n/dvd:n luomatta lainkaan ISO-tiedostoa, siis kyseessä on-the-fly poltto.

Voisko joku siis jeesiä ja kertoa miten tuo komennus tehdään noille ja mitä rajoituksia tuosta on-the-fly toiminnosta on? Jostain luin että käyttämällä nice-komentoa olis sellainen rajoitus ettei kannattais polttaa yli 2-kertaisella nopeudella, tosin nicea ei saakaan windowsille, cdrtools (eli mm. cdrecord ja mkisofs) pyörii kyllä näppärästi windowsissa cygwinin avulla.

PS. saatan kysellä lisääkin kun mieleen tulee kysymyksiä joten pitäkää tätä ketjua silmällä. ;)

PS2. ja kiitos neuvoista jo etukäteen.
9438
Äänestä

Muut lukivat myös

Vastaukset 9

Vanhimmat

k3b:n lähdekoodit ja alat käännellä.

Äänestä
  • on tehdä ihan puhtaalta pöydältä ja vielä ihan eri kieltäkin käyttäen, mä kun en hanskaa tota C-kieltä kun sen verran että osaan tehdä vaan Hello World-ohjelman?

    Okei, mä siis käytän sellaista kääntäjää/IDE:tä kuin RapidQ, muistuttaa pitkälti basicia. Ei noi C-kieliset K3b:n koodit varmaan oikein uppois tohon käyttämääni kääntäjään vai mitä? :D

    Äänestä

Mikä on motiivi, harjoitteluko? Meinaan kun noita GUI-edustoja cdrtoolsille on jo aika monta.

Äänestä
  • haluan tehdä "tumpelolle" sopivan GUIn, vaikka itse osaankin jopa komentoriviltä jotain noiden ominaisuuksia käytellä niin jos laitan koneen eteen jonkun ihan tumpelon joka ei juuri paljoa osaa niin koittaisin sitä tumpeloa varten tehdä niin helpon GUIn että varmasti onnistuu. Yksi sellainen tumpelo tuttu asuu seinän takanani. :) Hänet jos laittais tavallisella polttosoftalla tekemään jotain ja sanoisin vaan että poltapa nuo kuvat cd:lle niin ei onnistuisi!

    Niin ja kun kerran kysyit, saisin tuossa kyllä sitä ohjelmointiharjoitustakin. Tosin tuossahan noita cdrtoolsin työkaluja käskytetään etupäässä shell-komennon avulla.

    Äänestä

ISO-tiedoston tekemisen voi välttää putkittamalla mkisofs:n tuotokset suoraan cdrecordille. Joudut vain ensin selvittämään, kuinka iso kokoinen putkitettavasta imagesta tulee. Tarkemmat ohjeet täällä:

http://www.math-linux.com/spip.php?article85

(ks. "Fast Burning")

Äänestä
  • "ISO-tiedoston tekemisen voi välttää putkittamalla mkisofs:n tuotokset suoraan cdrecordille"

    Tuo keino toimii sillä edellytyksellä, että mkisofs toimii *täsmälleen* tällä periaatteella: ISO -tiedosto luodaan kirjoittamalla siihen kaikki tarvittava tieto järjestyksessä alusta loppuun, mitään jo kertaalleen kirjoitettua tietoa ei koskaan ylikirjoiteta muuttuneella tiedolla myöhemmin.

    Mikäli mkisofs EI noudata ylläolevaa toimintaperiaatetta, ei putkitus voi toimia halutulla tavalla.

    Jos luotava ISO on esim. 4,7 gigatavun kokoinen DVD-R -levyä varten ja jos ISO -tiedoston alkuosassa on esim. jokin tarkistussumma (CRC32, MD5, SHA1 ?), niin periaatteessahan ISO -tiedoston voisi luoda niinkin, että alkuvaiheessa kun tiedoston alkuun kirjoitetaan otikkotietokenttiä, tuo tarkistussummakenttä täytetään vaikkapa 0 -tavuilla, kirjoitetaan sitten varsinainen sisältö (ja samalla ohjelma laskee sisäisessä muistissaan olevaan muuttujaan oikeaa tarkistussummaa), ja lopuksi kun tuo summa lopultakin on tiedossa (kun kaikki varsinainen tieto on jo kirjoitettu), niin ohjelma käyttää seek -toimintoa (joka siirtää tiedoston kirjoitusosoittimen haluttuun kohtaan tiedostoa, eli tarkistussummakentän alkuun) ja ylikirjoittaa aiemmat 0 -tavut oikealla tarkistusssummalla. JOS mkisofs toimii tällä jälkimmäisellä tavalla, niin putkitus EI voi toimia oikein.

    Kummalla näistä tavoista mkisofs oikeasti toimii, sitä en tiedä. Asia on kuitenkin syytä selvittää, ennen kuin tekee päätöksen putkituksen käytöstä.


    Sama periaate toki pätee muuhunkin kuin tarkistussummaan, mutta otin tämän esimerkiksi, kosk ase on tyypillinen tieto, joka selviää vasta tiedostoon kirjoituksen loputtua.

    Toki 2. vaihtoehto on "kirjoittaa" tiedosto 2 kertaan: 1. kerralla ei oikeasti kirjoiteta mitään, mutta tehdään kaikki muut kirjoituksen vaatimat toiminnot (kuten luetaan lähdetiedostot, lasketaan tarkistussummat, luodaan kaikki sellainen metatieto, jonka tarkka sisältä riippuu varsinaisen tiedon joko määrästä tai sisällöstä), ja näin kerätään muistiin tuo metatieto, sitten 2. kerralla vasta kirjoitetaan, ja kiitos tuon "ylimääräisen" 1. kerran "lumekirjoituksen" kaikki metadata on nyt tiedossa, joten ISO -tiedosto voidaan kirjoittaa alusta loppuun ilman palaamista aiemmaksi ja ylikirjoittamista. Voihan olla että mkisofs on näinkin tehty, hyötynä siis antaa mahdollisuuden putkittaa, haitttana taas suoritusnopeuden puolittuminen, kun lähdetiedostot joudutaan lukemaan 2 kertaan, harvassa koneessa on saatavliia 4,7 gigatavua RAM -muistia puskuriksi, jolloin kertaalleen jo luetut tiedostot voisivat olla siellä.

    Uusilla nykykoneilla sensijaan CD-levyn 700-800 megatavua voisi mahtuakin RAM -muistiin, jolloin saadaan sekä putkituskelpoisuus että nopea suoritusaika luettaessa lähdetiedostot vain 1 kertaan, haittana sitten n. 800 megatavun muistinkulutus suoritusaikana. Nykykoneille ei ongelma, mutta jos ohjelman täytyy toimia vanhemmissakin koneissa, niin ei hyvä.

    Vai onko mkisofs niin fiksusti tehty, että se itse tarkistaa aluksi seuraavat asiat:

    1. käytetäänkö putkitusta (jolloin seek ja ylikirjoitus ei ole mahdollinen) vai kirjoitetaanko tiedostoon jolloin seek ja ylikirjoitus on ok).

    2. Jos putkitetaan, riittääkö vapaan RAM -muistin määrä koko ISO -tiedostolle (CD nykykone) vai ei (DVD tai CD vanhemmalla koneella, jossa niukemmin RAM -muistia).

    ja valitsee sitten toimintatavan tilanteen mukaan?

    Äänestä

  • koodaaja80 kirjoitti:

    "ISO-tiedoston tekemisen voi välttää putkittamalla mkisofs:n tuotokset suoraan cdrecordille"

    Tuo keino toimii sillä edellytyksellä, että mkisofs toimii *täsmälleen* tällä periaatteella: ISO -tiedosto luodaan kirjoittamalla siihen kaikki tarvittava tieto järjestyksessä alusta loppuun, mitään jo kertaalleen kirjoitettua tietoa ei koskaan ylikirjoiteta muuttuneella tiedolla myöhemmin.

    Mikäli mkisofs EI noudata ylläolevaa toimintaperiaatetta, ei putkitus voi toimia halutulla tavalla.

    Jos luotava ISO on esim. 4,7 gigatavun kokoinen DVD-R -levyä varten ja jos ISO -tiedoston alkuosassa on esim. jokin tarkistussumma (CRC32, MD5, SHA1 ?), niin periaatteessahan ISO -tiedoston voisi luoda niinkin, että alkuvaiheessa kun tiedoston alkuun kirjoitetaan otikkotietokenttiä, tuo tarkistussummakenttä täytetään vaikkapa 0 -tavuilla, kirjoitetaan sitten varsinainen sisältö (ja samalla ohjelma laskee sisäisessä muistissaan olevaan muuttujaan oikeaa tarkistussummaa), ja lopuksi kun tuo summa lopultakin on tiedossa (kun kaikki varsinainen tieto on jo kirjoitettu), niin ohjelma käyttää seek -toimintoa (joka siirtää tiedoston kirjoitusosoittimen haluttuun kohtaan tiedostoa, eli tarkistussummakentän alkuun) ja ylikirjoittaa aiemmat 0 -tavut oikealla tarkistusssummalla. JOS mkisofs toimii tällä jälkimmäisellä tavalla, niin putkitus EI voi toimia oikein.

    Kummalla näistä tavoista mkisofs oikeasti toimii, sitä en tiedä. Asia on kuitenkin syytä selvittää, ennen kuin tekee päätöksen putkituksen käytöstä.


    Sama periaate toki pätee muuhunkin kuin tarkistussummaan, mutta otin tämän esimerkiksi, kosk ase on tyypillinen tieto, joka selviää vasta tiedostoon kirjoituksen loputtua.

    Toki 2. vaihtoehto on "kirjoittaa" tiedosto 2 kertaan: 1. kerralla ei oikeasti kirjoiteta mitään, mutta tehdään kaikki muut kirjoituksen vaatimat toiminnot (kuten luetaan lähdetiedostot, lasketaan tarkistussummat, luodaan kaikki sellainen metatieto, jonka tarkka sisältä riippuu varsinaisen tiedon joko määrästä tai sisällöstä), ja näin kerätään muistiin tuo metatieto, sitten 2. kerralla vasta kirjoitetaan, ja kiitos tuon "ylimääräisen" 1. kerran "lumekirjoituksen" kaikki metadata on nyt tiedossa, joten ISO -tiedosto voidaan kirjoittaa alusta loppuun ilman palaamista aiemmaksi ja ylikirjoittamista. Voihan olla että mkisofs on näinkin tehty, hyötynä siis antaa mahdollisuuden putkittaa, haitttana taas suoritusnopeuden puolittuminen, kun lähdetiedostot joudutaan lukemaan 2 kertaan, harvassa koneessa on saatavliia 4,7 gigatavua RAM -muistia puskuriksi, jolloin kertaalleen jo luetut tiedostot voisivat olla siellä.

    Uusilla nykykoneilla sensijaan CD-levyn 700-800 megatavua voisi mahtuakin RAM -muistiin, jolloin saadaan sekä putkituskelpoisuus että nopea suoritusaika luettaessa lähdetiedostot vain 1 kertaan, haittana sitten n. 800 megatavun muistinkulutus suoritusaikana. Nykykoneille ei ongelma, mutta jos ohjelman täytyy toimia vanhemmissakin koneissa, niin ei hyvä.

    Vai onko mkisofs niin fiksusti tehty, että se itse tarkistaa aluksi seuraavat asiat:

    1. käytetäänkö putkitusta (jolloin seek ja ylikirjoitus ei ole mahdollinen) vai kirjoitetaanko tiedostoon jolloin seek ja ylikirjoitus on ok).

    2. Jos putkitetaan, riittääkö vapaan RAM -muistin määrä koko ISO -tiedostolle (CD nykykone) vai ei (DVD tai CD vanhemmalla koneella, jossa niukemmin RAM -muistia).

    ja valitsee sitten toimintatavan tilanteen mukaan?

    mutta sen tiedän että se on toiminut kyllä jopa omassa ikuisuuden vanhassa nuhapumpussa jossa ei takuulla ole riittävästi RAMia ISON luomiseen RAM-muistiin, ei se tosin luo sitä levyllekään joten en tiedä miten se sitten toimii.

    Kumminkin kun oon siinä koneessa käyttänyt edustaohjelmana mm. cdrtfe:tä eli cdr tools front endiä jossa on on-the-fly toiminto ruksittuna niin ei ole ongelmia tullut vastaan.

    En vaan viitsi tuolle naapurille ja muillekaan tietokoneiden kanssa vähän sormi suussa oleville laittaa cdrtfe:tä koska A. se on enkunkielinen ja B. siinä on niin paljon sellaisia säätöjä joiden kanssa ihan nyypistä nyypin menee varmaan hämmennyksiin ja kun ei ole sellasia kädestäpitäen opettavia toimintojakaan. Ajattelinkin siksi että jos koodaisi ihan oman GUIn joka kertoo mitä seuraavaksi pitää tehdä ja tarvittaessa näyttää jopa kuvin miten homma tehdään.

    Äänestä

  • koodaaja80 kirjoitti:

    "ISO-tiedoston tekemisen voi välttää putkittamalla mkisofs:n tuotokset suoraan cdrecordille"

    Tuo keino toimii sillä edellytyksellä, että mkisofs toimii *täsmälleen* tällä periaatteella: ISO -tiedosto luodaan kirjoittamalla siihen kaikki tarvittava tieto järjestyksessä alusta loppuun, mitään jo kertaalleen kirjoitettua tietoa ei koskaan ylikirjoiteta muuttuneella tiedolla myöhemmin.

    Mikäli mkisofs EI noudata ylläolevaa toimintaperiaatetta, ei putkitus voi toimia halutulla tavalla.

    Jos luotava ISO on esim. 4,7 gigatavun kokoinen DVD-R -levyä varten ja jos ISO -tiedoston alkuosassa on esim. jokin tarkistussumma (CRC32, MD5, SHA1 ?), niin periaatteessahan ISO -tiedoston voisi luoda niinkin, että alkuvaiheessa kun tiedoston alkuun kirjoitetaan otikkotietokenttiä, tuo tarkistussummakenttä täytetään vaikkapa 0 -tavuilla, kirjoitetaan sitten varsinainen sisältö (ja samalla ohjelma laskee sisäisessä muistissaan olevaan muuttujaan oikeaa tarkistussummaa), ja lopuksi kun tuo summa lopultakin on tiedossa (kun kaikki varsinainen tieto on jo kirjoitettu), niin ohjelma käyttää seek -toimintoa (joka siirtää tiedoston kirjoitusosoittimen haluttuun kohtaan tiedostoa, eli tarkistussummakentän alkuun) ja ylikirjoittaa aiemmat 0 -tavut oikealla tarkistusssummalla. JOS mkisofs toimii tällä jälkimmäisellä tavalla, niin putkitus EI voi toimia oikein.

    Kummalla näistä tavoista mkisofs oikeasti toimii, sitä en tiedä. Asia on kuitenkin syytä selvittää, ennen kuin tekee päätöksen putkituksen käytöstä.


    Sama periaate toki pätee muuhunkin kuin tarkistussummaan, mutta otin tämän esimerkiksi, kosk ase on tyypillinen tieto, joka selviää vasta tiedostoon kirjoituksen loputtua.

    Toki 2. vaihtoehto on "kirjoittaa" tiedosto 2 kertaan: 1. kerralla ei oikeasti kirjoiteta mitään, mutta tehdään kaikki muut kirjoituksen vaatimat toiminnot (kuten luetaan lähdetiedostot, lasketaan tarkistussummat, luodaan kaikki sellainen metatieto, jonka tarkka sisältä riippuu varsinaisen tiedon joko määrästä tai sisällöstä), ja näin kerätään muistiin tuo metatieto, sitten 2. kerralla vasta kirjoitetaan, ja kiitos tuon "ylimääräisen" 1. kerran "lumekirjoituksen" kaikki metadata on nyt tiedossa, joten ISO -tiedosto voidaan kirjoittaa alusta loppuun ilman palaamista aiemmaksi ja ylikirjoittamista. Voihan olla että mkisofs on näinkin tehty, hyötynä siis antaa mahdollisuuden putkittaa, haitttana taas suoritusnopeuden puolittuminen, kun lähdetiedostot joudutaan lukemaan 2 kertaan, harvassa koneessa on saatavliia 4,7 gigatavua RAM -muistia puskuriksi, jolloin kertaalleen jo luetut tiedostot voisivat olla siellä.

    Uusilla nykykoneilla sensijaan CD-levyn 700-800 megatavua voisi mahtuakin RAM -muistiin, jolloin saadaan sekä putkituskelpoisuus että nopea suoritusaika luettaessa lähdetiedostot vain 1 kertaan, haittana sitten n. 800 megatavun muistinkulutus suoritusaikana. Nykykoneille ei ongelma, mutta jos ohjelman täytyy toimia vanhemmissakin koneissa, niin ei hyvä.

    Vai onko mkisofs niin fiksusti tehty, että se itse tarkistaa aluksi seuraavat asiat:

    1. käytetäänkö putkitusta (jolloin seek ja ylikirjoitus ei ole mahdollinen) vai kirjoitetaanko tiedostoon jolloin seek ja ylikirjoitus on ok).

    2. Jos putkitetaan, riittääkö vapaan RAM -muistin määrä koko ISO -tiedostolle (CD nykykone) vai ei (DVD tai CD vanhemmalla koneella, jossa niukemmin RAM -muistia).

    ja valitsee sitten toimintatavan tilanteen mukaan?

    toimimaan mitenkään vaikka kokeilin erilaisia käskyrivejä, kokeilin mm. laittaa eräässäkin nettineuvossa olleen mukaan mkisofsin parametriksi -o ja jättää itse tiedoston nimen kohdan tyhjäksi, kokeilin myös ilman tuota,,,en edes muista mitä kaikkea kokeilin mutta ei vaan lähtenyt pelittämään. :(

    Äänestä

  • ap. kirjoitti:

    toimimaan mitenkään vaikka kokeilin erilaisia käskyrivejä, kokeilin mm. laittaa eräässäkin nettineuvossa olleen mukaan mkisofsin parametriksi -o ja jättää itse tiedoston nimen kohdan tyhjäksi, kokeilin myös ilman tuota,,,en edes muista mitä kaikkea kokeilin mutta ei vaan lähtenyt pelittämään. :(

    Jos et kerro mitä teit millä käyttiksellä ja mitä virheilmoja tuli tulokseksi niin ei voi kun voivotella.

    Äänestä

Kommentoi aloitusta


apuja tarviin. kirjoitti:

Teen siis cdrtoolsille (aluksi win-versio, myöhemmin myös linux-versio jahka ensin opin lisää) graafista edusohjelmaa.

Osaan kyllä esim. mkisofsin ja cdrecordin peruskomennot, eli miten selvitetään cdrecordilla cd-r aseman laitetunnus, miten luodaan ISO, ja miten se poltetaan levylle.

Mutta haluaisin myös oppia sen että miten komennan cdrecordia ja mkisofsia niin että ne yhteistyössä polttaa cd:n/dvd:n luomatta lainkaan ISO-tiedostoa, siis kyseessä on-the-fly poltto.

Voisko joku siis jeesiä ja kertoa miten tuo komennus tehdään noille ja mitä rajoituksia tuosta on-the-fly toiminnosta on? Jostain luin että käyttämällä nice-komentoa olis sellainen rajoitus ettei kannattais polttaa yli 2-kertaisella nopeudella, tosin nicea ei saakaan windowsille, cdrtools (eli mm. cdrecord ja mkisofs) pyörii kyllä näppärästi windowsissa cygwinin avulla.

PS. saatan kysellä lisääkin kun mieleen tulee kysymyksiä joten pitäkää tätä ketjua silmällä. ;)

PS2. ja kiitos neuvoista jo etukäteen.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu