24 lines
		
	
	
		
			627 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			627 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| # usage: $scriptname $files $output_sub_format
 | |
| output_sub_format=${@: -1}
 | |
| for i in "$@"
 | |
| do
 | |
|   if [ ! -e "$i" ];
 | |
|   then
 | |
|   	echo "File does not exist."
 | |
|   	continue
 | |
|   fi
 | |
|   index=$(ffprobe -v 8 -show_streams -select_streams s "$i" | grep index | cut --delimiter="=" -f 2)
 | |
|   if [ -z "$index" ];
 | |
|   then
 | |
|   	echo "No subtitle streams found."
 | |
|   	exit
 | |
|   fi
 | |
|   ffprobe -v 8 -show_streams -select_streams "$i"
 | |
|   filename=${i%.*}
 | |
|   mkvextract "$i" tracks "$index":"${filename}.en.ass"
 | |
|   if [ -n "$1" ];
 | |
|   then
 | |
|   	subtitleedit /convert "${filename}.en.ass" "$output_sub_format" 2>/dev/null | grep --color=none ass
 | |
|   fi
 | |
| done |