Zach Isbach %!s(int64=2) %!d(string=hai) anos
pai
achega
1098109f9c
Modificáronse 1 ficheiros con 5 adicións e 2 borrados
  1. 5 2
      encode.pl

+ 5 - 2
encode.pl

@@ -426,11 +426,13 @@ sub subOptions($) {
 	my %tracks = ();
 	foreach my $track (@{ $scan->{'subtitle'} }) {
 		my ($language, $iso, $text, $type);
+    # Sample: N/A
 		($language, $iso, $text, $type) = $track->{'description'} =~
 		  /^([^\(]+)(?:\s+\([^\)]+\))?\s+\(iso\d+\-\d+\:\s+(\w\w\w)\)\s+\((Text|Bitmap)\)\((CC|VOBSUB|PGS|SSA|TX3G|UTF\-\d+)\)/i;
+    # Sample: English (UTF-8)
 		if (!defined($iso)) {
 			($language, $type) = $track->{'description'} =~
-			  /(\w.*)\ +\[?(CC|VOBSUB|PGS|SSA|TX3G|UTF\-\d+)\]?/i;
+			  /(\w.*)\ +(?:\[|\()?(CC|VOBSUB|PGS|SSA|TX3G|UTF\-\d+)(?:\[|\()?/i;
 			$iso = 'UND';
 		}
 		if (!defined($iso) || !defined($type)) {
@@ -504,9 +506,10 @@ sub audioOptions($) {
   # Type the audio tracks
   my %tracks = ();
   foreach my $track (@{ $scan->{'audio'} }) {
+    # Sample: Unknown (AAC LC, 2.0 ch) (iso639-2: und)
     # Sample: English (AAC LC, 2.0 ch, 128 kbps) (iso639-2: eng)
     my ($language, $codec, $channels, $specs, $iso, $note) = $track->{'description'} =~
-      /^\s*(\S.*)\s+\(([^,]+),\s+([^,]+),\s+([^,]+)\s+\(iso\d+-\d\:\s+(\w\w\w)\)/;
+      /^\s*(\S.*)\s+\(([^,]+),\s+([^,]+)(,\s+([^,]+))?\)\s+\(iso\d+-\d\:\s+(\w\w\w)\)/;
     # Old Sample: English (E-AC3) (5.1 ch) (768 kbps) (iso639-2: eng)
     if (!defined($channels)) {
       ($language, $codec, $note, $channels, $iso, $specs) = $track->{'description'} =~