19 package org.sleuthkit.autopsy.contentviewers;
21 import java.awt.Dimension;
22 import java.util.Arrays;
23 import java.util.List;
25 import java.util.SortedSet;
26 import java.util.TreeSet;
27 import java.util.logging.Level;
28 import javax.swing.JPanel;
40 private static final Set<String>
AUDIO_EXTENSIONS =
new TreeSet<>(Arrays.asList(
".mp3",
".wav",
".wma"));
45 private static final String[]
ARCH64 =
new String[]{
"amd64",
"x86_64"};
48 private static final String[]
ARCH32 =
new String[]{
"x86"};
59 logger.log(Level.INFO,
"64 bit JVM detected. Creating JavaFX Video Player.");
62 logger.log(Level.INFO,
"32 bit JVM detected. Creating GStreamer Video Player.");
73 String arch = System.getProperty(
"os.arch");
74 return Arrays.asList(ARCH64).contains(arch);
105 abstract void reset();
113 abstract void setupVideo(
final AbstractFile file,
final Dimension dims);
135 String extension = file.getNameExtension();
152 if (AUDIO_EXTENSIONS.contains(
"." + extension) ||
getExtensionsList().contains(
"." + extension)) {
153 SortedSet<String> mimeTypes =
new TreeSet<>(
getMimeTypes());
156 return mimeTypes.contains(mimeType);
158 logger.log(Level.WARNING,
"Failed to look up mimetype for " + file.getName() +
" using FileTypeDetector. Fallingback on AbstractFile.isMimeType", ex);
159 if (!mimeTypes.isEmpty() && file.isMimeType(mimeTypes) == AbstractFile.MimeMatchEnum.TRUE) {
static boolean is64BitJVM()
static final Set< String > AUDIO_EXTENSIONS
boolean isSupported(AbstractFile file)
static final Logger logger
static final String[] ARCH32
String getMIMEType(AbstractFile file)
List< String > getExtensionsList()
static final String[] ARCH64
abstract boolean isInited()
abstract List< String > getMimeTypes()
static MediaViewVideoPanel getGstImpl()
synchronized static Logger getLogger(String name)
static MediaViewVideoPanel getFXImpl()
abstract String[] getExtensions()
static MediaViewVideoPanel createVideoPanel()