QApplication::setOverrideCursor(Qt::WaitCursor); // cursor a reloj
ret = translationJob(orgLang, targetLang,strFrom,&strReturned);
QApplication::restoreOverrideCursor(); // cursor a normal
QApplication::setOverrideCursor(Qt::WaitCursor); // cursor a reloj
ret = translationJob(orgLang, targetLang,strFrom,&strReturned);
QApplication::restoreOverrideCursor(); // cursor a normal
El tema de la extracción de subtitulos de contenedores matroska se está convirtiendo en un tema recurrente. Se ha tratado en 2011, revisado en 2018 y aquí está la versión de 2023.
Herramientas para utilizar con Debian 11.
Obtención de información en linea de comandos:
mkvinfo ma.mkv
Obtención de información con gui:
Extracción de la pista de subtítulos
Hay que tener en cuenta que mkvinfo numera las pistas de forma distinta que mkvextract. mkvinfo cuenta las pistas empezando por 1 y en mkvextract, la primera pista es la 0. La salida de mkvinfo muestra:
+ Número de pista: 3 (ID de pista para mkvmerge y mkvextract: 2)| + Pista UID: 10888806681018786732
| + Tipo de pista: Subtítulos
| + Marcador de atadura: 0
| + ID del códec: S_TEXT/ASS
Los subtítulos están en formato ASS. Aparece como pista 3, por tanto en mkvextract hay solicitar la pista 2.
mkvextract tracks ma.mkv 2:subti.srt
mkvextract ignora la extensión del archivo de salida, por tanto, si contendor matroska contine subtitulos en formato ass, mkvextract gerera un archivo en formato ass. Por tanto hay que convertir el archivo de subtítulos formato srt. Hay que señalar que si no se necesita específicamente el formato srt, el formato ass tiene más características.
Conversión de formato de los subtítulos de ass a srt.
ffmpeg -i subti.ass -codec:s srt subti2.srt
mas cosas
1.1. Enviar notificaciones al escritorio gráfico: notify-send
Instalar lib-notify-bin. Tutorial
Uso:
notify-send -a "Dell control" "Este script no funciona sin un parámetro."
Encender:
xrandr --output $SALIDA --auto --right-of HDMI-A-0
Apagar:
xrandr --output $SALIDA --off
if [ -z "$1" ]; then
notify-send -a "Dell control" "Este script no funciona sin un parámetro."
echo "no hay parámetro. abortar"
exit 1
fi
INFO=`xrandr |grep $SALIDA`
echo "info: $INFO"
PRIMERO=`echo "$INFO" | awk '{print $1}'`
echo "PRI: $PRIMERO"
if [ "$PRIMERO" != "$SALIDA" ] ; then
echo "No se encuentra patalla $SALIDA."
notify-send -a "Dell control" "No se encuentra la pantalla $SALIDA."
exit 1
fi
La parte más oscura es comprobar el estado del monitor. El comando randr muestra una sutil diferencia entre el estado del monitor encendido y o apagado. Cuando está encendido muestra las medidas físicas del monitor; apagado, no.
Encendido:
DVI-D-0 connected 1680x1050+1920+0 (normal left inverted right x axis y axis) 473mm x 296mm
Apagado:
DVI-D-0 connected (normal left inverted right x axis y axis)
ULTIMA_PALABRA=`echo "$INFO" | awk '{print $NF}'`
if [[ $ULTIMA_PALABRA == *"mm" ]]; then
# Si la última parabra es una medida, el monitor está activo. apagarlo
echo "Esta activo. Apagar"
xrandr --output $SALIDA --off
notify-send -a "Dell control" "monitor auxiliar $SALIDA apagado."
else
# el monitor no está activo. encenderlo
echo "No esta activo. Encender"
xrandr --output $SALIDA --auto --right-of HDMI-A-0
notify-send -a "Dell control" "Monitor auxiliar $SALIDA encendido."
fi
firefox: conguración en about:config
Versión 102:
Versión 103+:
javascript
document.getElementById('boton13').onclick = function (){
navigator.clipboard.readText()
.then((text) => {
if (text=="")
{
alert ("El portapapeles está vació o el contenido no es texto.")
return;
}
insertText(text);
})
.catch((err) => {
alert("Error al leer el portapapeles");
console.error('Error al leer del portapapeles: ', err);
});
}
Válido para Debian 12
/etc/modules-load.d/modules.conf
El archivo /etc/modules-load.d/modules.conf es un archivo de configuración que el sistema operativo Debian lee durante el proceso de arranque. Este archivo contiene una lista de los nombres de los módulos del kernel que deben cargarse al inicio. Cada módulo se especifica en una línea separada.
Ejemplo:
...
coretemp
it87
...
El módulo 'coretemp' proporciona la capacidad de monitorear la temperatura de los núcleos del CPU, mientras que 'it87' es un controlador de hardware comúnmente utilizado para monitorear voltajes, temperaturas y velocidades de los ventiladores.
"inline" y "static const" son palabras clave en C++ utilizadas para mejorar la eficiencia y la seguridad del código. "inline" sugiere al compilador reemplazar la llamada a la función en línea con el cuerpo de la función, reduciendo así el costo de llamada a la función. "static const", por otro lado, declara una variable que mantiene su valor entre las invocaciones y no puede ser modificada.
Para compilar código en C++17 en g++, se requiere la opción "-std=c++17". El comando de compilación proporcionado incluye esta opción, junto con otras opciones para la generación de informes de errores y debug, opciones de bibliotecas para Qt, y la especificación de la ubicación de los archivos de cabecera.
A menudo, estas configuraciones de compilación se incluyen en un archivo .pro en proyectos de Qt. Sin embargo, la opción de compilación de C++17 puede no estar habilitada por defecto en algunos sistemas. Para solucionar esto, se pueden agregar las líneas "CONFIG += c++17 console" y "QMAKE_CXXFLAGS += -std=c++17" al archivo .pro. Esto le indica a qmake, el sistema de compilación de Qt, que compile el código usando el estándar C++17, lo que es necesario para el uso de "inline" y "static const" como se prevé en C++17.
No me molesto ha editar ¿a quien vamos a engañar?