makemenu


makemenu es un script en bash que genera menús VCD, SVCD, o DVD, 
dados una imagen de fondo opcional, un corte de sonido de fondo opcional,
y una lista de cadenas de texto para usar como títulos.


===Prestaciones y características===
- Puede crear menús VCD, SVCD, o DVD en formato PAL o NTSC 
- Puede incluir una imagen de fondo opcional en casi cualquier formato; 
la imagen se puede cambiar de escala y/o ser recortada para encajar en el tamaño de pantalla requerido
- Puede incluir un corte de audio opcional en casi cualquier formato;
la duración del menú coincidirá con la longitud de la pista de audio.
- Puede superponer sobre el fondo una lista de texto de títulos de vídeo; 
los menús de DVD utilizan resaltado para la navegación por los menús,
mientras que los menús (S)VCD tiene opciones numeradas
para selección usando el control remoto del DVD
- Color de resaltado y alineación del texto a medida ajustables.


===Utilización===
Puedes ejecutar makemenu sin parámetros para ver (en inglés) qué
argumentos se esperan:Usage: makemenu [FORMAT] [OPTIONS] TITLES OUT_PREFIX

Where FORMAT is any of the following:

  -ntsc (default)
    Generate an NTSC-format menu
  -pal
    Generate a PAL-format menu

  -dvd (default)
    Generate a DVD-format menu, with highlighted text included
    as a multiplexed subtitle stream.
  -vcd
  -svcd
    Generate a VCD/SVCD menu; each menu option will have a
    number associated with it. You can have up to nine menu
    options per menu.

OPTIONS may be any of the following:

Menu background/audio options:

  -background IMAGE
    Use IMAGE (in most any graphic format) as a background. If image is not
    the correct aspect ratio (4:3), it will be scaled and/or cropped,
    depending on the -crop and -scale options. If no background is
    supplied, a default background will be created.
  -crop (default)
    If provided background image is not 4:3 aspect ratio, crop edges
    to make it so. Image will be scaled up if it is too small. Cropping
    keeps the center area of image. If you want to do cropping/scaling
    yourself in another program, provide an image of 768x576 pixels.
  -scale
    If provided background image is not 4:3 aspect ratio, scale/stretch
    it to make it fit. May cause visible distortion!
  -audio AUDIOFILE
    Use AUDIOFILE (in most any audio format) for background music. The
    menu will play for long enough to hear the whole audio clip. If
    one is not provided, silence will be used.

Menu text options:

  -font "FONTNAME"
    Use FONTNAME for the menu text. Run 'convert -list type' to see a
    list of the fonts that you can use; choose a font name from the
    leftmost column that is displayed.
  -align [left|center|right]
    Align the text on the left, center, or right side of the screen.
  -textcolor [#RRGGBB|#RGB|COLORNAME]
    Use specified color for menu text. #RRGGBB and #RGB are
    hexadecimal triplets (i.e., #FF8035). COLORNAME may be any of
    several hundred named colors; run 'convert -list color' to see them.
    White (#FFF) is the default color.
  -highlightcolor [#RRGGBB|#RGB|COLORNAME]
    Use specified color for menu highlighting. Yellow (#FF0) is the
    default color.
  -selectcolor [#RRGGBB|#RGB|COLORNAME]
    Use specified color for menu selections (when a menu item is played
    or activated). Red (#F00) is the default color.

Other options:

  -nosafearea
    Do not attempt to put text inside a TV-safe viewing area. Most
    television sets cut off about 10% of the image border, so the script
    automatically leaves a substantial margin. This option turns that
    behavior off, leaving only a tiny margin. Use at your own risk.
  -overwrite
    Overwrite any existing output files.

TITLES is a list of quoted text you want to be printed on the menu, i.e.

  "Episode 1" "Episode 2" "Episode 3" "Back"

If the word "back" is given as an episode title, a "back" button for
returning to a higher-level menu will be added at the end of the list
of episodes.

OUT_PREFIX is the name (file prefix) you want to use for the resulting menu files

El argumento dado a -font ha de ser uno de los tipos de letra
mostrados por el comando convert -list type. Por favor, observa que muchos
de los tipos de letra instalados pueden no estar disponibles; si quieres maximizar el
número de tipos de letra disponibles para [makemenu makemenu.html], descárgate el script
[imagick_type_gen.pl http://www.cit.gu.edu.au/~anthony/software/imagick_type_gen.pl] de
[Anthony Thyssen http://www.cit.gu.edu.au/~anthony/anthony.html]
e invócalo como sigue:imagick_type_gen.pl > ~/.magick/type.xml

Esto también maximiza el número de tipos de letra disponibles en los menús en
tovidgui.py.

===Planes futuros===
Este componente es, necesariamente, considerablemente complejo; la composición de imágenes
no es muy afín al uso de la lína de comandos. Hay muchas más cosas 
que pueden ser ajustadas o automatizadas; el soporte de distintos tios de letra 
es la mayor prioridad. Existe también el potencial de permitir incluir 
imágenes, logos, u otras superposiciones en el menú, y la posibilidad remota de
poder admitir elementos de vídeo en un futuro (usar un breve vídeo como 
fondo, o componiendo otros videos sobre el fondo).


