11.11.2009

Modelando un ajedréz en Blender (parte 1: el tablero)

Para las personas que no conocen todavía a Blender, basta decir que es el programa insignia del software libre en lo que respecta a todo lo que sea 3D tanto estático como animado; además en los últimos lanzamientos se a avanzado bastante en el tema de video y el motor de juegos. Si le sintersa más a fondo el tema, les recomiendo que empiecen por su pagina oficial ya que ahí se dispone de una extensa documentación y en constante actualización.

La siguiente serie de publicaciones más que una guía sobre el uso de blender, pretenden ser ejemplos prácticos que nos pueden ayudar en el uso diario de este fenomenal programa, pero agrupados en un ejemplo común que en este caso sería un tablero de ajedrez. También se dá por hecho que ya se tiene un mímino de conocimiento del programa por lo que se usa directamente su terminología. Poniendo énfasis en una dinámica sencilla, el procedimiento tiene como uno de sus puntos centrales algo que aprendí directo de la guía oficial de Blender: una mano en el teclado, otra en el ratón; es por esto que constantemente se usarán los atajos del teclado (hotkeys) para llevar a cabo los diferentes pasos.

En esta primera parte, para no complicarnos desde el inicio :P realizaremos el tablero de nuestro futuro ajedrez. Así que manos a la obra!!

Al iniciar el programa tendremos una pantalla como la siguiente, con click derecho (RMB por sus siglas en ingles) seleccionamos el cubo que viene por defecto y luego le damos a SUPR (suprimir) e intro para aceptar.



Ahora nos posicionamos en la vista superior mediante NUMPAD 7 para crear un plano presionando: Spacebar (barra espaciodora) --> Add (añadir) --> Mesh (malla) --> Plane (plano)



Con la rueda del ratón podemos acercarnos o alejarnos según nos resulte más cómodo para trabajar. Ahora bien, un tablero de ajedrez tiene una división de 8x8. Para realizar esto debemos entonces dividir el plano en 7 partes. Si no presionamos nada el plano debería estar selecionado, sino es así lo hacemos con RMB.

Ahora con la tecla TAB (tabulador) cambiamos a modo de edición y presionamos la tecla w la cual nos muestra diferente opciones de edición, la que nos interesa por ahora es la de subdivide multi, la selecionamos y nos aparece un diálogo donde indicamos la cantidad de subdiviciones que queremos realizar, ya sea con las flechas y directamente introduciendo el valor, ponemos 7 y le damos intro.


Ya tenemos el plano con las divisiones nescesarias. Lo que toca hacer ahora es darle los colores o las texturas alternadas que caracterizan al tablero. Por esta vez solo vamos a cambiar de color y así no desviarnos del tema con el texturizado :)

Cambiamos a modo de selección de caras mediante CTRL+TAB+3 o selecionándolo desde el botón que muestra la imagen:



Presionamos la tecla a para deseleccionar todo, luego con RMB y manteniendo presionado SHIFT vamos seleccionando alternadamente las caras como se aprecia en la imagen:



Por comodidad y buena práctica es conveniente separar las partes a las que vayamos a dar texturas o colores individuales, sobre todo para cuando tengamos varios objetos, no tener dificultad para elegirlos a cada uno y sus partes, por ahora no se ve tanta diferencia pero más adelante me darán la razón :P

Una vez seleccionadas las caras, mediante la tecla p elegimos separate para separar las caras elegudas de las otras, con esto tendremos las dos partes del objeto tablero:



Podemos conprobarlo saliendo del modo edición (TAB) y seleccionando uno cuadrado y luego el otro para ver como cambia la selección. Aprovechando que estamos en modo objeto, vamos a dar el color deseado a la cuadrícula. Presionamos F5 para ir a los paneles de tono (shading) o Material como comunmente se los conoce y veremos que solo tenemos un panel Links and Pipeline donde presionamos Add New. Esto hará que aparescan varios nuevos paneles para configurar nuestro material. Lo que nos intereza ahora son los valores RGB del objeto, es decir su color :)

En la imagen siguiente se señala las barras de valores RGB que debemos cambiar. Poniendo los tres valores a cero obtendremos el color negro, luego selecionamos la otra parte del tablero, añadimos un nuevo material y colocamos los valores RGB a 1 para obtener blanco:



Por último vamos a darle grosor al plano para que luzca más real. Seleccionamos (RMB) la una parte y cambiamos a modo de edición (TAB), luego mediante NUMPAD 1 cambiamos a la vista frontal, seguramente veremos únicamente una línea indicando el objeto seleccionado ya que este no tiene grosor más que de un pixel ;) Nos aseguramos de tener todo el objeto seleccionado presionando a una vez para deseleccionar todo y luego nuevamente a para selccionar todo. Con la tecla e ejecutamos la función extrude y elegimos region como se muestra en la imagen, desplazamos el ratón hasta obtener el grosor que desemos o directamente introducimos el valor númerico.


Salimos del modo de edición (TAB), cambiamos a la vista superior (NUMPAD 7) y seleccionamos la otra parte del tablero; nuevamente nos dirigimos a la vista frontal (NUMPAD 1) volvemos a modo edición y realizamos la misma acción de selccionar todo (dos veces a) y la extrucción, con lo que tendríamos casi listo nuestro tablero:



El paso final sería acomodar la cámara y la lámpara para poder renderizar la imagen. Explicar eso queda fuera de este ejercicio pero a modo de ayuda les comneto que con NUMPAD 0 se obtiene la vista de cámara y con F12 realizamos un render de lo que vé la cámara. Luego de un poco de juego acomodando la luz y la cámara, esto fue lo que obtuve:



Sin duda nada del otro mundo, pero poco a poco iremos mejorando nuestro ajedrez, así que paciencia y perseverancia jeje.

Todo comentario es bienvenido y mejor aún si comparten con la comunidad sus experiencias.

Saludos!

10.16.2009

Compilando un kernel a lo debian en 10 pasos.

Muchas veces nos encontramos en la situación que el kernel de nuestra distribución GNU/Linux no es el que deseamos, ya sea por funciones nuevas (como el soporte para USB 3.0 en el último kernel) o porque simplemente queremos tener un kernel más a medida de nuestra máquina sin tener que cargar un sin número de módulos y drivers de dispositivos que no tenemos.

En Debian tenemos la posibilidad de compilar el kernel y generar las cabeceras y la imagen como paquetes DEB, lo cual nos ahorra cierto trabajo manual además de ser más seguro :) Así que manos al teclado:

0) Instalamos los paquetes nescesarios para la tarea:

apt-get install build-essential libncurses-dev libncurses5 kernel-package fakeroot
1) Creamos una carpeta donde trabajar:

mkdir /tmp/mikernel
cd /tmp/mikernel
2) Descargando las fuentes nescesarias:

wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-source-2.6.30.tar.bz2
wget http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.30.9.bz2
3) Descomprimimos las fuentes, el parche, e ingresamos a la ubicación de las fuentes:

tar xjf linux-source-2.6.30.tar.bz2
bunzip2 -d -k patch-2.6.30.9.bz2
cd linux-source-2.6.30
4) Aplicamos el parche:
patch -Np1 -i ../patch-2.6.30.9
5) Copiamos el archivo de configuraci{on del kernel actual para partir de una base que sabemos funciona bien:
cp /boot/config-'uname -r' ./.config

  • donde 'uname -r' es la versión del kernel actual, si el comando no funciona debemos escribir el nombre de archivo completo, por ejemplo config-2.6.26.6
6) Ejecutamos el programa de configuración del kernel:
make menuconfig
Al tener menuconfig cargado, seleccionamos la penúltima opción para cargar el archivo config que copiamos anteriormente.
Luego realizamos todos los cambios que queramos y por último guardamos la configuración en el mismo archivo .config

7) Compilamos el kernel:
make-kpkg --initrd --append-to-version=.10 --revision=host.custom kernel_image kernel_headers
  • donde --append-to-version y --revision son opcionales, la primera añade al número de versión del kernel el número que elijamos si mantenemos diferentes versiones; y el segundo añade el nombre que elijamos también para motivos de administración.
Al terminar luego de un buen rato, dependiendo de la cantidad de cosas que deban compilarse y de las características de la máquina, obtendremos dos paquetes .deb en el directorio superior.

8) Subimos un nivel y procedemos a instalar el nuevo kernel:
cd ..
dpkg -i *.deb

  • ojo! el * significa que instalará TODOS los archivos .deb que se encunentren en la ubicación, así que debemos estar seguros que solo están los dos pertenecientes al kernel: linux-image-2.6.30.10_host.custom_i386.deb y linux-headers-2.6.30.10_host.custom_i386.deb
9) Una vez completada la instalación, tendremos una nueva entrada en nuestro GRUB perteneciente a nuestro nuevo kernel, para confirmar que todo haya ido de maravilla, reiniciamos con este kernel:

init 6
10) Si todo ha salido bien, debemos estar en nuestro escritorio de siempre, pero con el nuevo kernel. Para comprobar que estemos usándolo:


uname -r
lo que nos debe dar como resultado la versión que hemos compilado, como 2.6.30.9.10


Y eso es todo :D El verdadero trabajo de todo esto es la dedicación que le pongamos al decidir que va y que no en el kernel, la ayuda dentro de menuconfig suele ser bastante concisa, sobretodo al momento de si se trata de algo nescesario o algo realmente opcional.

Conforme vaya aprendiendo más detalles hacerca de este largo pero fructífero proceso, seguiré publicando sobre esto :)

Espero que les sea de ayuda.

Saludos!

8.20.2009

Borrando disco RW

Más líneas útiles para tener en cuenta ;)

Borrar disco CD/DVD RW con wodim/cdrecord

wodim -v -blankfast dev=/dev/scd0

Donde scd0 es nuestro dispositivo grabador, -v es para aumentar la información de salida a 1 y creo que blankfast se sobreentiende jeje borrado rápido.

Sino estamos seguros de cual es nuestro cd/dvd podemos ejecutar el siguiente comando desde un terminal:
dmesg | grep hd
Saludos!



7.11.2009

Gravando imagen ISO por terminal

Post que inagura la etiqueta "terminal".

Líneas útiles para tener en cuenta ;)

Grabando imagen ISO con wodim/cdrecord

wodim -v dev=/dev/scd0 speed=4 /ubicación/imagen.iso

Donde scd0 es nuestro grabador, puede ser también cdrom o cdrw, etc; -v es para aumentar la información de salida a 1.

Podemos hacer man wodim para más información.

6.27.2009

Miniguía en Imágenes: Instalación modo texto de Debian Lenny 5.0.1

El siguiente trabajo sobre una instalación en modo texto de un Lenny con escritorio LXDE mediante el DVD 1, pretende únicamente servir de guía para aquellas personas que nunca han instalado GNU/Linux en modo texto, por lo que se centra más en mostrar con lo que el usuario se va a encontrar (de una manera un tanto "ideal") que en explicar los diferentes puntos del proceso de instalación. Si bien se ha optado por un entorno de escritorios aparentemente un tanto limitado en contra parte a otros como Gnome, esto obedece en este caso simplemente a los motivos arriba dados. El proceso es practicamente el mismo (sino completamente) para cualquier entorno de escritorio disponible en los menus. Además de servir para mostrar las diferentes configuraciones que se tiene a disposición y la ventaja de haber descargado tanto x)

Pantalla inicial

Al iniciar el DVD en la pc tendremos esta imagen, La instalación por defecto lleva escritorio Gnome, si deseamos otros seleccionamos Opciones Avanzadas.

Opciones adicionales


Aquí nos encontramos con unas cuantas opciones más, la que viene a nuestro caso es la de entornos de escritorio alternativos (alternative desktop environments).

Selecionando el entorno de escritorio

Ahora podemos seleccionar nuestro entorno favorito: KDE ; LXDE ; Xfce. Lástima que no lleve Fluxbox también :(

Iniciando instalación

Y estamos listos para iniciar la instalación, de texto en esta ocación para hacerla más sencilla ;)

Elegir idioma

Bajamos hasta nuestro idioma y le damos enter(intro).

Ubicación

De aquí en adelante ya está más entendible :P

Teclado

Español en la mayoría de los casos, de lo contrario Latinoamérica (¿en la mayoría de los casos?)

Red

Luego de un pequeño proceso intentará configurar la red por dhcp. Si, como en mi caso no se dispone de internet, o se la debe configurar de manera manualmente, saldrá primero una pantalla indicándolo y luego esta. De momento he elegido no configurar ya que primero debo poner soporte para los últimos chipsets de dispositivos inalámbricos.

Nombre del Equipo

Escribimos el nombre que le queramos dar a la máquina (hostname).

Reloj

Según el país que hayamos elegido, seleccionamos la región en la que vivamos para configurar la zona horaria.

Particionado de discos

Este es un paso que merece un post completo, sobre todo la opción Manual. Pero como estamos en una situación ideal, en la que disponemos de todo el disco y/o lo queremos de una forma automática seleccionamos el procedimiento guiado.

Particiones

Nuevamente elegimos la opción para newbies novatos. Aunque en este sencillo paso se puede elegir tranquilamente la segunda opción si se dispone de un disco de tamaño medio (creo que de unos 20gb para arriba estaría bien). Pongámoslo así: Se crean dos particiones donde van, una en donde va el sistema raíz (/) Linux y otra donde van los Usuarios (/home) Al terminar la instalación se tendrá el usuario inicial (/home/usuario) que se creó y posteriormente los demás que creemos (/home/pedro, /home/ana) Así, esta ubicación /home es una partición completa. La ventaja de hacerlo así es que si se requiere poner un sistema desde cero, sabemos que podemos hacerlo tranquilamente en la primera partición mientrás los archivos personales permanecen en la segunda, pero ya intentaré explicar mejor esto, por ahora la primera opción :)

Creando usuarios

Nos preguntará la clave para superusuario y su confirmación, el es el que controla TODO el sistema ¡¡no olvidarla!!

Luego creamos el usuario normal y su contraseña.

CD/DVDs adicionales

Si disponemos de cd o dvds adicionales para que sean añadidos a las fuentes de repositorios del administrador de paquetes (apt).

Paquetes a instalar

Aquí disponemos de coleciones de paquetes, por defecto tenemos Sistema estandar y Entorno de escritorio que es lo que nos interesa por ahora.

Cargador de arranque GRUB

Al terminar la instalación de los paquetes, por último nos pregunta si queremos crear el gestor de arranque GRUB, debemos saber muy bien lo que estamos haciendo si elegimos que no, así que elegimos sí y terminamos la instalación :D

Inicio del pc con GRUB

¡Listo! veremos una pantalla como esta donde se nos muestra los sistema operativos instalados.

Escritorio LXDE

LXDE cargará por primera vez y se verá así (página oficial). Bastante sencillo e intuitivo ¿cierto? :)

Eso sería todo para tener un sistema estable, liviano, veloz y sobre todo libre. Si piensan que hay algo que mejorar (siempre lo hay) o mencionar, o quieren compartir alguna experiencia, comenten con confianza :D

Aprovecho también para agradecer a todos los que hacen posible el proyecto Debian y en general a todos los que participan directa o indirectamente en el Software Libre y hacen posible que cada día sea más gran grande y con más vida.



6.23.2009

Estrella Roja - GNU/Linux

Me habí­a olvidado de este proyecto, lo comparto con ustedes para dar a conocer esta excelente iniciativa.
Para no empezar a hablar sobre el alcance de la idea en sí xD, pongo a disposición directamente el link de la página:
Estrella Roja - GNU/Linux

Editando un poco mejor esto:
Estrella Roja es una distribución GNU/Linux basada en Debian Lenny y Slax, mis escasos conocimientos en este aspecto me limitan el entender bien como logró esto :D Por un lado tenemos la estabilidad y gran cantidad de software disponible de Debian; y por otro la velocidad y portabilidad (si es que es le puede llamar así ;) de Slax.. claro que Slackware no creo que le tenga nada que pedir a Debian en cuanto a estabilidad jeje..

Es un proyecto en desarrollo y mantenido por el compañero Troyano.
Se puede conocer más acerca del mismo en este hilo dentro de Resistencia Digital.

Espero sea de su interés y meor aún, que lo prueben!!.

Saludos.

Compartido via AddThis



Powered by ScribeFire.

6.18.2009

Kernel 2.6.30 en Debian Lenny 5.0.1 (soporte para chipset RTL8187b) y Wicd

Hay ocasiones en que el kernel de nuestro linux no incluye soporte para cierto hardware, pero que una versión más actual si. Esto me pasó este último tiempo al comprar un adaptador wifi usb Encore ENUWI-G2 que funciona con el chipset Realtek RTL8187b. El linux que usaba (Mint 5) llevaba un kernel 2.6.24 y en el proceso de intentar hacerlo funcionar (ndiswrapper, wireless-compat) me enteré de que a partir de la versión 2.6.27-5 empezó a tomar buena forma el soporte wireless. Y como justamente por este proceso mi pobre Elyssa quedó duramente afectada :S decidí probar con la tan esperada última versión de Debian: Lenny y así tener wifi en mi querido Tux.

Descargé el DVD 1 por BitTorrent (pesa 4.3Gb) desde XP y lo instalé. Pero hay un inconveniente, esta versión estable tiene un kernel 2.6.26. Por lo que primero sería instalar un kernel del 2.6.27-5 en adelante, esto se puede lograr de dos maneras: compilando manual o a la manera debian. Por ahora sin entrar en detalles, lo que debemos destacar de la manera debian es que el proceso de compilación nos entrega paquetes .deb de nuestro nuevo kernel, por lo que la instalación del mismo es más confiable y sencilla.

Buscando información sobre el proceso de compilado y detalles que se deban saber para el kernel 2.6.30 me encontré con los paquetes .deb ya preparados para equipos generales (genéricos). Y como la prioridad era ver si este nuevo kernel soportaba correctamente mi adaptador wifi, opté por ahorrarme el tiempo y elegí el camino facil :)

Lo primero es descargar los paquetes linux-image y linux-headers que correspondan a nuestra arquitectura de kernel.ubuntu.com.
Luego en la ubicación donde los hallamos guardado ejecutamos lo siguiente como root:

#dpkg -i *
IMPORTANTE! El comando anterior lo usamos solamente si en la ubicación se encuentran únicamente los dos paquetes del kernel, de lo contrario instalamos primero linux-image y LUEGO linux-headers.

Si como en mi caso, la instalación es nueva y no disponemos de conexión alguna, debemos instalar primero el paquete wireless-crda para cumplir la dependencia, es un paquete de Ubuntu pero 100% compatible para Debian.
Cuando termine el proceso, reiniciamos y listo. Debemos ver una nueva entrada en el GRUB perteneciente al nuevo kernel. Iniciamos con este y vemos si todo marcha a la perfección. Si no, reiniciamos y seleccionamos el kernel anterior.

Si todo ha salido bien, como en mi caso :) probablemente veremos que el Enuwi-g2 anda mejor que en windows!!
La recepción es excelente y sin drivers de winsuks emulados.

Para darle un toque final al asunto, en mi caso el gnome-network-manager y el nm-applet no me gustan mucho, siento que se demoran mucho en levantar la interfaz y establecer la conexión. Programas que realicen la misma función y más hay unos cuantos, realmente no se mucho de ellos ya que es la segunda vez que uso wifi en linux y la primera en donde el equipo es mio xD. Pero googleando por ahí me encontré con Wicd que por lo que he leido en foros y otros sitios, le dan buenos comentarios y al ver que tiene instalación por repositorios, pues es cuestión de una línea ;)

Como dice en la página oficial, podemos acceder a Wicd a travez de los repositorios de Debian Squeeze (testing) y Sid (unstable), pero para los que preferimos mantenernos en la línea Lenny (stable) tenemos la opción de usar los backports. Así que editamos el archivo sources.list y añadimos el repositorio (como root).
#gedit /etc/apt/sources.list
añadimos, guardamos y salimos:
deb http://www.backports.org/debian lenny-backports main contrib non-free
actualizamos los repositorios:
#apt-get update
y finalmente instalamos wpa_supplicant para tener soporte de seguridad inalámbrica (WEP, WAP, etc) y finalmente wicd:
#apt-get install wpa_supplicant
#apt-get -t lenny-backports install wicd

Reiniciamos para que se vuelvan a cargar los servicios (no se hacerlo por init :S ) y listo. Ahora puedo nuevamente postear desde mi querido Tux y en kernel nuevo.

Saludos!!
Powered by ScribeFire.


3.02.2009

Archivos Matroska o MKV en Linux - Parte II

En la parte I vimos cómo introducir subtítulos. Ahora, partiendo de un contenedor mkv que ya contiene una pista de subtítulos en otro idioma, vamos a ver como extraerla, iniciar su traducción y luego introducir esta nueva pista de subtítulos en nuestro archivo MKV.

Para realizar esta tarea debemos tener instalado un reprodutor como MPlayer y las herramientas mkvtoolnix. Esto se puede lograr con:

$sudo aptitude install mplayer mkvtoolnix mkvtoolnix-gui

Lo primero que necesitamos hacer es extraer los subtítulos del contenedor, pero antes siempre es útil darle una mirada a su contenido ;)

/ubicacion/del/contenedor$ mkvinfo proyecto.mkv

Con esto obtenemos los detalles del contenedor. Por ahora lo que nos interesa son los subs:

| + A track
|  + Track number: 4
|  + Track UID: 588088495
|  + Track type: subtitles
|  + Enabled: 1
|  + Default flag: 1
|  + Forced flag: 0
|  + Lacing flag: 0
|  + MinCache: 0
|  + Timecode scale: 1.000000
|  + Max BlockAddition ID: 0
|  + Codec ID: S_TEXT/UTF8
|  + Codec decode all: 1
|  + Language: eng
|+ EbmlVoid (size: 1024)
|+ Cluster

Esto nos indica que los subs están la pista 4, también nos es util saber la codificación de texto que en este caso es UTF8 y que es el que el programa maneja por defecto. Ahora bien, sabiendo el número de la pista, ejecutamos lo siguiente para extraerlos.

/ubicacion/del/contenedor/$ mkvextract tracks "proyecto.mkv" 4:en_subs.ass

Actualmente el proyecto mkvtoolnix cuenta con soporte para SRT, SSA/ASS y Kate desde Ogg.

En este caso se ha usado el Advanced Substation Alpha con lo que hemos obtenido el archivo en_subs.ass

Si lo que queremos es traducir estos subtítulos, disponemos de un muy buen programa de código abierto (por supuesto :D) llamado Subtitle Editor.

Como probablemente lo estemos imaginando, basta el siguiente comando para tenerlo a nuestra disposición:

$ sudo aptitude install subtitleeditor

Subtitle Editor es un programa bastante completo y en constante actividad. De momento mostraré en pocos pasos cómo tener listo el programa para empezar a traducir, el resto se lo dejo a ustedes xD

Abrimos el subtitle editor y tendremos una pantalla como la de más abajo, nos vamos al menu Video y abrimos el video mkv.




Ahora en el menu Archivo seleccionamos abrir y le damos a nuestro archivo de subtítulo recién extraído:



El siguiente paso es seleccionar la vista que más se acomode a nuestra tarea que por ahora es la de traducir ;) para ello en el menu Ver elegimos Traducción.

Una vez que tengamos nuestra traducción lista, mediante el menu Archivo y Guardar Traducción, la guardamos como un nuevo archivo .ass.




Cabe señalar que es importante que la codificación de caracteres sea UFT-8, con el salto de línea para Unix no he tenido problemas hasta ahora entre Subtitle Editor y Subtitle Workshop no se con los demás programas :(
 
Lo que nos queda por hacer ahora es meter la traducción en el contenedor como una nueva pista, para ello vamos a hacer uso de otra de las herramientas que vienen con mkvtoolnix llamada mkvmerge.

La línea de comando para realizar la tarea es:

/ubicacion/del/contenedor/$ mkvmerge -o con_es_subs.mkv es_subs.ass proyecto.mkv

Ahora tendríamos un nuevo contenedor llamado con_es_subs.mkv el cual tiene, además de todas las pistas que tenga el contenedor fuente, nuestro flamante archivo de ass.

Lo siguiente que recomendaría, ya que no es obligatorio, es especificar el idioma de la pista que introdujimos y si lo deseamos, ponerla como predeterminada y de paso decirle la codificación de caracteres. Para ello ejecutamos la siguiente línea, donde el número 3 significa el ID de la pista que queremos configurar (un mkvmerge -i archivo.mkv nos indica esto muy claramente):

/ubicacion/del/contenedor/$ mkvmerge -o langcode_charset.mkv --language 3:spa --sub-charset 3:UTF-8 --default-track 3 con_es_subs.mkv
Listo, nuestro contenedor final (por ahora :P) está listo.

A manera de resumen y para tener todo en una sola línea de comandos:

/ubicacion/del/contenedor/$ mkvmerge -o proyecto_final.mkv --language 0:spa --sub-charset 0:UTF-8 --default-track 0 subs.ass archivo.mkv

Espero que les sea de utilidad.

Saludos!


Powered by ScribeFire.