def imageConverter(item):
    if not exists(item.get_file_path()+'.presform.tif'):
        imageConvertArgs=['ffmpeg','-n','-i',item.get_file_path(),item.get_file_path()+'.presform.tif']
        imageConvertCommand=BashCommand(imageConvertArgs)
        imageConvertCommand.run_command()
        imageConvertCommand.read_data()
        logger.debug(imageConvertCommand.get_data())
        return imageConvertCommand.get_data()
    else:
        logger.info("Image (tif) preservaiton format for file exists. Not Clobbering.")
def videoConverter(item):
    if not exists(item.get_file_path()+'.presform.avi'):
        videoConvertArgs=['ffmpeg','-n','-i',item.get_file_path(),'-vcodec','rawvideo','-acodec','pcm_u24le','-pix_fmt','uyvy422','-vtag','2vuy',item.get_file_path()+".presform.avi"]
        videoConvertCommand=BashCommand(videoConvertArgs)
        videoConvertCommand.run_command()
        videoConvertCommand.read_data()
        logger.debug(videoConvertCommand.get_data())
        return videoConvertCommand.get_data()
    else:
        logger.info("Video (avi) preservation format for file exists. Not Clobbering.")
        return (None,None)
def audioConverter(item):
    if not exists(item.get_file_path()+'.presform.wav'):
        audioConvertArgs=['ffmpeg','-n','-i',item.get_file_path(),item.get_file_path()+'.presform.wav']
        audioConvertCommand=BashCommand(audioConvertArgs)
        audioConvertCommand.run_command()
        audioConvertCommand.read_data()
        logger.debug(audioConvertCommand.get_data())
        return audioConvertCommand.get_data()
    else:
        logger.info("Audio (wav) preservation format for file exists. Not Clobbering.")
        return (None,None)
def zipConverter(item):
    if not exists(item.get_file_path()+'.presform.extracted'):
        unzipCommandArgs=['7z','x','-o'+item.get_file_path()+'.presform.extracted',item.get_file_path()]
        unzipCommand=BashCommand(unzipCommandArgs)
        unzipCommand.run_command()
        unzipCommand.read_data()
        print(unzipCommand.read_data())
        b=Batch(root,item.get_file_path()+'.presform.extracted')
        for item in b.find_items(from_directory=True):
            itemStack.append(item)
        return unzipCommand.get_data()
    else:
        logger.info("Already extracted.")
def gifConverter(item):
    if not exists(item.get_file_path()+'.presform'):
        mkdirArgs=['mkdir',item.get_file_path()+".presform"]
        mkdirCommand=BashCommand(mkdirArgs)
        mkdirCommand.run_command()
        gifConvertArgs=['ffmpeg','-n','-i',item.get_file_path(),item.get_file_path()+'.presform/output%04d.presform.tif']
        gifConvertCommand=BashCommand(gifConvertArgs)
        gifConvertCommand.run_command()
        gifConvertCommand.read_data()
        logger.debug(gifConvertCommand.get_data())
        return gifConvertCommand.get_data()
    else:
        logger.info("Image (tif) preservation format for file exists. Not Clobbering.")
def officeConverter(item):
    if not exists(item.get_file_path()+'.presform.pdf'):
        fileName,fileExtension=splitext(item.get_file_path())
        mkdirArgs=['mkdir','-p','/tmp/officeConv']
        mkdirCommand=BashCommand(mkdirArgs)
        mkdirCommand.run_command()
        officeConvertArgs=['/Applications/LibreOffice.app/Contents/MacOS/soffice','--headless','--convert-to','pdf','--outdir','/tmp/officeConv',item.get_file_path()]
        officeConvertCommand=BashCommand(officeConvertArgs)
        officeConvertCommand.run_command()
        officeConvertCommand.read_data()
        cpCommandArgs=['cp','/tmp/officeConv/'+basename(fileName)+'.pdf',item.get_file_path()+'.presform.pdf']
        cpCommand=BashCommand(cpCommandArgs)
        cpCommand.run_command()
        rmCommandArgs=['rm','-r','/tmp/officeConv']
        rmCommand=BashCommand(rmCommandArgs)
        rmCommand.run_command()
        logger.debug(officeConvertCommand.get_data())
        return officeConvertCommand.get_data()
    else:
        logger.info("Office (PDF) preservation format for file exists. Not Clobbering.")