Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Unix / Linux (http://www.forosdelweb.com/f41/)
-   -   Cerrar CDs (http://www.forosdelweb.com/f41/cerrar-cds-114368/)

lical 01/02/2003 12:04

Cerrar CDs
 
Hola.

Estoy usando cdrecord para grabar pistas mp3 con un pipe, usando la opción -nofix al final de cada pista. Termino de grabar todas las pistas, y entonces le pido que me cierre el CD (fix):

cdrecord -fix -dev=0,1,0

Y me dice "no tracks found"... pero si las acabo de grabar :-P , qué me está contando?? xDD

Sin embargo, si le digo

cdrecord -toc -dev=0,1,0

Me saca información sobre las pistas que he grabado...

Bien, os pregunto compañeros, ¿qué otros métodos conocéis para cerrar ("finalizar") un CD a ver si me funcionan? Esto me pasa de vez en cuando.


Un saludo,

lical 07/02/2003 10:07

Ya dí con una solución :-)

Hago una comprobación de si es la última pista que va a grabar, y en caso de serlo, no le pongo el -nofix y así lo cierra al terminar de grabar la última pista automáticamente, por si a alguien le sirve, la comprobación la he hecho de esta forma:

Código:

        SPEED=$1
        k=0
        for i in *.mp3; do
                k=$[$k+1]
        done
        COUNT=$k
        j=0
        for i in *.mp3 ; do
                j=$[$j+1]
                if [ $j -eq $COUNT ]; then
                        mpg123 --cdr - $i | cdrecord -audio -pad \
                speed="$SPEED" dev=0,1,0 -eject -
                else
                        mpg123 --cdr - $i | cdrecord -audio -pad \
                speed="$SPEED" dev=0,1,0 -nofix -
                fi
        done


Un saludo,

Ferdy 07/02/2003 10:18

Coño........pues la verdad siempre tuve ese problema y nunca di con la solucion, te adjunto algo que a lo mejor acelera el script:
Código:

        SPEED=$1
        COUNT=`ls *.mp3 | grep --count mp3`
        j=0
        for i in *.mp3 ; do
                j=$[$j+1]
                if [ $j -eq $COUNT ]; then
                        mpg123 --cdr - $i | cdrecord -audio -pad \
                speed="$SPEED" dev=0,1,0 -eject -
                else
                        mpg123 --cdr - $i | cdrecord -audio -pad \
                speed="$SPEED" dev=0,1,0 -nofix -
                fi
        done

Así nos evitamos ese bucle tan feo ;)

Salu2.Ferdy

lical 07/02/2003 15:22

Hola.

Reconozco que no nací para escribir code eficiente ;-)

¿Sabes lo que nos falta para dejarlo perfesto? Quitar la pausa de 10 segundos (eso de Starting real write in 10..9..8..7...), pero he estado mirando en el manual de cdrecord y no lo he encontrado... ¿Alguien sabe cómo se hace?


Un saludo,


La zona horaria es GMT -6. Ahora son las 01:16.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.