Ejemplo n.º 1
0
    def _converter(self, stopEvent):
        """
            Converts the MP4 to MP3 that arrives in _beatToConvert.
        """
        while (not stopEvent.is_set()):
            try:
                beat = self._beatToConvert.get()
                self.kivyView.setStatusLabelText("Converting")

                mp4 = beat.getTitle() + ".mp4"
                mp3 = beat.getTitle() + ".mp3"
                
                if utils.fileExists(self.__ofolder+mp4) is False:
                    self.kivyView.showPopup(Errors.CONVERSION_FAILED[0])
                    return
                elif utils.fileExists(self.__ofolder+mp3):
                    #@TODO offer choice to the user.
                    utils.deleteFile(self.__ofolder+mp3)
                
                secs = utils.getFFmpegFileDurationInSeconds(self.__ofolder + mp4)
                efsize = utils.estimateFFmpegMp4toMp3NewFileSizeInBytes(secs, 320000)
                utils.convertMp4ToMp3(mp4, mp3, self.__ofolder, 320000, efsize, beat,
                                      self.updateProgress, self.notifyConversionCompleted)
            except Queue.Empty:
                pass
Ejemplo n.º 2
0
    def notifyConversionCompleted(self, fullpath, beat):
        self.kivyView.setStatusLabelText("Saving Beat Information")
        utils.writeMP3Metadata(fullpath, beat)

        utils.deleteFile(self.__ofolder + beat.getTitle()+".mp4")

        self.kivyView.setStatusLabelText("Completed!")
        self.kivyView.enableDownloadButton()