@ -1,4 +1,5 @@
@@ -1,4 +1,5 @@
using Bugsnag ;
using System.Collections.Immutable ;
using Bugsnag ;
using CliWrap ;
using ErsatzTV.Core.Domain ;
using ErsatzTV.Core.Extensions ;
@ -13,37 +14,37 @@ namespace ErsatzTV.Core.Metadata;
@@ -13,37 +14,37 @@ namespace ErsatzTV.Core.Metadata;
public abstract class LocalFolderScanner
{
public static readonly Lis t< string > VideoFileExtensions = new ( )
public static readonly ImmutableHashSe t< string > VideoFileExtensions = new [ ]
{
".mpg" , ".mp2" , ".mpeg" , ".mpe" , ".mpv" , ".ogg" , ".mp4" ,
".m4p" , ".m4v" , ".avi" , ".wmv" , ".mov" , ".mkv" , ".ts" , ".webm"
} ;
} . ToImmutableHashSet ( ) ;
public static readonly Lis t< string > AudioFileExtensions = new ( )
public static readonly ImmutableHashSe t< string > AudioFileExtensions = new [ ]
{
".aac" , ".alac" , ".dff" , ".dsf" , ".flac" , ".mp3" , ".m4a" , ".ogg" , ".opus" , ".oga" , ".ogx" , ".spx" , ".wav" ,
".wma"
} ;
} . ToImmutableHashSet ( ) ;
public static readonly Lis t< string > ImageFileExtensions = new ( )
public static readonly ImmutableHashSe t< string > ImageFileExtensions = new [ ]
{
"jpg" , "jpeg" , "png" , "gif" , "tbn"
} ;
} . ToImmutableHashSet ( ) ;
public static readonly Lis t< string > ExtraFiles = new ( )
public static readonly ImmutableHashSe t< string > ExtraFiles = new [ ]
{
"behindthescenes" , "deleted" , "featurette" ,
"interview" , "scene" , "short" , "trailer" , "other"
} ;
} . ToImmutableHashSet ( ) ;
public static readonly Lis t< string > ExtraDirectories = new List < string >
public static readonly ImmutableHashSe t< string > ExtraDirectories = new List < string >
{
"behind the scenes" , "deleted scenes" , "featurettes" ,
"interviews" , "scenes" , "shorts" , "trailers" , "other" ,
"extras" , "specials"
}
. Map ( s = > $"{Path.DirectorySeparatorChar}{s}{Path.DirectorySeparatorChar}" )
. ToLis t ( ) ;
. ToImmutableHashSe t ( ) ;
private readonly IClient _ client ;
private readonly IFFmpegProcessService _f fmpegProcessService ;