Autopsy
4.17.0
Graphical digital forensics platform for The Sleuth Kit and other tools.
|
Inherits org.sleuthkit.autopsy.modules.pictureanalyzer.spi.PictureProcessor.
Public Member Functions | |
HEICProcessor () | |
Set< String > | mimeTypes () |
void | process (IngestJobContext context, AbstractFile file) |
Private Member Functions | |
void | convertToJPEG (IngestJobContext context, Path localDiskCopy, AbstractFile heicFile) throws IOException, TskCoreException, NoCurrentCaseException |
void | createModuleOutputFolder (AbstractFile file) throws IOException, NoCurrentCaseException |
Path | extractToDisk (AbstractFile heicFile) throws IOException, NoCurrentCaseException |
Path | findImageMagick () |
Path | getModuleOutputFolder (AbstractFile file) throws NoCurrentCaseException |
Private Attributes | |
final Path | IMAGE_MAGICK_PATH |
Static Private Attributes | |
static final int | EXIT_SUCCESS = 0 |
static final String | HEIC_MODULE_FOLDER = "HEIC" |
static final String | IMAGE_MAGICK_ERROR_FILE = "magick_error.txt" |
static final String | IMAGE_MAGICK_EXE = "magick.exe" |
static final String | IMAGE_MAGICK_FOLDER = "ImageMagick-7.0.10-27-portable-Q16-x64" |
static final Logger | logger = Logger.getLogger(HEICProcessor.class.getName()) |
static final long | TIMEOUT_IN_SEC = TimeUnit.SECONDS.convert(2, TimeUnit.MINUTES) |
Processes HEIC containers by extracting and converting all internal photos to JPEGs, which are then added as derived files of the container.
All of this work is serviced by ImageMagick, a third party executable.
Definition at line 69 of file HEICProcessor.java.
org.sleuthkit.autopsy.modules.pictureanalyzer.impls.HEICProcessor.HEICProcessor | ( | ) |
Definition at line 85 of file HEICProcessor.java.
|
private |
Definition at line 176 of file HEICProcessor.java.
References org.sleuthkit.autopsy.coreutils.FileUtil.escapeFileName(), org.sleuthkit.autopsy.coreutils.ExecUtil.execute(), org.sleuthkit.autopsy.ingest.IngestServices.fireModuleContentEvent(), org.sleuthkit.autopsy.casemodule.Case.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows(), org.sleuthkit.autopsy.ingest.IngestServices.getInstance(), and org.sleuthkit.autopsy.casemodule.Case.getSleuthkitCase().
|
private |
Create any sub directories within the module output folder.
Definition at line 129 of file HEICProcessor.java.
|
private |
Copies the HEIC container to disk in order to run ImageMagick.
Definition at line 164 of file HEICProcessor.java.
References org.sleuthkit.autopsy.coreutils.FileUtil.escapeFileName(), org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows(), and org.sleuthkit.autopsy.casemodule.Case.getTempDirectory().
|
private |
Definition at line 94 of file HEICProcessor.java.
References org.sleuthkit.autopsy.coreutils.PlatformUtil.getOSName(), org.sleuthkit.autopsy.coreutils.PlatformUtil.is64BitJVM(), and org.sleuthkit.autopsy.coreutils.PlatformUtil.isWindowsOS().
|
private |
Give each file its own folder in module output. This makes scanning for ImageMagick output fast.
Definition at line 118 of file HEICProcessor.java.
References org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows(), and org.sleuthkit.autopsy.casemodule.Case.getModuleDirectory().
Set<String> org.sleuthkit.autopsy.modules.pictureanalyzer.impls.HEICProcessor.mimeTypes | ( | ) |
Indicates the MIME types this processor supports.
Implements org.sleuthkit.autopsy.modules.pictureanalyzer.spi.PictureProcessor.
Definition at line 243 of file HEICProcessor.java.
void org.sleuthkit.autopsy.modules.pictureanalyzer.impls.HEICProcessor.process | ( | IngestJobContext | context, |
AbstractFile | file | ||
) |
Perform work on the image file.
context | Job context to check for cancellation or add files to the pipeline |
file | The image file to process |
Implements org.sleuthkit.autopsy.modules.pictureanalyzer.spi.PictureProcessor.
Definition at line 138 of file HEICProcessor.java.
References org.sleuthkit.autopsy.ingest.IngestJobContext.fileIngestIsCancelled().
|
staticprivate |
Definition at line 73 of file HEICProcessor.java.
|
staticprivate |
Definition at line 74 of file HEICProcessor.java.
|
staticprivate |
Definition at line 80 of file HEICProcessor.java.
|
staticprivate |
Definition at line 79 of file HEICProcessor.java.
|
staticprivate |
Definition at line 78 of file HEICProcessor.java.
|
private |
Definition at line 83 of file HEICProcessor.java.
|
staticprivate |
Definition at line 71 of file HEICProcessor.java.
|
staticprivate |
Definition at line 75 of file HEICProcessor.java.
Copyright © 2012-2021 Basis Technology. Generated on: Tue Jan 19 2021
This work is licensed under a
Creative Commons Attribution-Share Alike 3.0 United States License.