web-dev-qa-db-fra.com

Un lecteur vidéo pouvant afficher deux sous-titres à la fois?

J'utilise Ubuntu 13.10.

Existe-t-il un lecteur vidéo pouvant afficher deux sous-titres à la fois tout en regardant?

Je vous remercie.

3
rɑːdʒɑ

Il existe un outil appelé 2srt2ass pouvant prendre deux langues en deux fichiers SRT de sous-titres distincts et les combiner en un fichier SSA/ASS, affichant une langue en haut de l'écran et une en bas.

Quelque chose comme c'est probablement la solution la plus propre en termes de lecture (vous pouvez simplement utiliser le lecteur que vous auriez de toute façon), mais c'est un peu bizarre de commencer si vous avez beaucoup de vidéos pour le faire.

Des alternatives qui font la même chose: SrtMerger

Il y a aussi n script awk sur les forums Ubunt qui pourrait peut-être faire la même chose.

4
Oli

Smplayer est une interface graphique pour le célèbre mplayer , moteur derrière de nombreux joueurs. Il est maintenant facile avec stock Smplayer d'afficher deux sous-titres. Il suffit de sélectionner votre deuxième sous-titre en tant que piste secondaire et le lecteur doit le positionner automatiquement sur le dessus. Selon le blog :

Ceci est disponible depuis SVN r6474 et nécessite mpv.

Pour installer mpv: Sudo apt-get install mpv

Si cela ne fonctionne toujours pas, essayez de réinitialiser le fichier de configuration. Selon Smplayer FAQ :

Le moyen le plus simple de trouver les fichiers de configuration de SMPlayer consiste à sélectionner l'option "Ouvrir le dossier de configuration" dans le menu Aide. Si vous souhaitez supprimer la configuration actuelle et commencer par les paramètres par défaut, supprimez simplement le fichier smplayer.ini (important: assurez-vous que SMPlayer n'est pas en cours d'exécution lorsque vous supprimez le fichier).

1
egy

Vous pouvez également utiliser DualSub pour fusionner des sous-titres. DualSub combine deux sous-titres SRT divisant la largeur disponible de l'écran en deux colonnes. Il est hautement configurable et le SRT fusionné qui en résulte peut être utilisé dans différents lecteurs (par exemple, VLC, Windows Media Player, etc., même sur votre téléviseur).

Prendre plaisir!

0
DualSub

Vous pouvez utiliser le script (bash) suivant, enregistrez-le sous le nom mergeSubtitle.sh. Exécutez-le en tapant "bash mergeSubtitle.sh" dans le terminal.

#!/bin/sh
# mergeSubtitle.sh: Script to merge 2 SRT subtitle into single one
# This is script is freely available under the GNU/GPL license
# Author: Antonymous X
# [email protected]
# 07/19/2015

test "$#" -ne 3  && echo -e "Usage: 2subs \"<LANGUAGE_FILE_1>\" \"<LANGUAGE_FILE_2>\" \"<COMBINED_LANGUAGE_FILE_OUTPUT>\"\nDouble quotes are required in most cases unless the filenames do not contain whitespaces"
test "$#" -ne 3 && exit 1 
lang_file1=$1
lang_file2=$2
lang_file3=$3
# Create an empty output file since we'll be appending
touch "$lang_file3"
cp /dev/null "$lang_file3"
# Load srt files into memory and set IFS to '#' to avoid confusion with whitespaces
file1=$(cat "$lang_file1"|sed -r ':a;N;$!ba;s/(,[[:digit:]]{3,3}\n|([[:digit:]]){1,4})\n|([[:alpha:]])\n/\1|/g'|sed -r 's/\|$/#/g')
file2=$(cat "$lang_file2"|sed -r ':a;N;$!ba;s/(,[[:digit:]]{3,3}\n|([[:digit:]]){1,4})\n/\1|/g'|sed -r 's/(.$)/\1\n/g')
IFS='#'
# Split the content.  Notice double quoting so it prints newlines
for line in `echo "$file1"`
do
     LINE=$(echo $line|awk -F'|' '{print $1}'|sed  ':a;N;$!ba;s/\n/ /g'|sed -r 's/[[:cntrl:]]//g'|sed -r 's/[[:space:]]//g')
     TIME=$(echo $line|awk -F'|' '{print $2}'|sed  ':a;N;$!ba;s/\n/ /g'|sed -r 's/[[:cntrl:]]//g'|sed -r 's/^[[:space:]]+//g')
     DIALOG=$(echo $line|cut -d'|' -f3-|sed ':a;N;$!ba;s/\n/ /g'|sed -r 's/[[:cntrl:]]//g'|sed -r 's/^[[:space:]]+//g'|sed -r 's/^[[:space:]]+//g'|sed -r 's/\|/ /g')
     DIALOG2=`echo "$file2"|grep "^$LINE|"|sed ':a;N;$!ba;s/\n|\t/ /g'|sed -r 's/[[:cntrl:]]//g'|awk -F'|' '{print $3}'|sed -r 's/^[[:space:]]+//g'`
# Display a basic progress bar
     echo -n "#"   
# Write to output file
     echo -e "$LINE\n$TIME\nl1:$DIALOG\nl2:$DIALOG2\n" >> "$lang_file3"
done
echo #
# Write a funny message
echo Thou have been served
exit 0
0
Antonymous X