Exemple #1
0
 def test_handles(self):
     """File handles"""
     shutil.copy("data/song.mp3", "data/temp.mp3")
     self.mpeg = MPEGAudio('data/temp.mp3')
     duration = self.mpeg.duration
     self.mpeg.close()
     os.unlink("data/temp.mp3")
Exemple #2
0
class MPEGFileHandlingTests(unittest.TestCase):
    def setUp(self):
        if os.path.exists("data/temp.mp3"):
            os.unlink("data/temp.mp3")

    def test_handles(self):
        """File handles"""
        shutil.copy("data/song.mp3", "data/temp.mp3")
        self.mpeg = MPEGAudio('data/temp.mp3')
        duration = self.mpeg.duration
        self.mpeg.close()
        os.unlink("data/temp.mp3")
Exemple #3
0
class MPEGFileHandlingTests(unittest.TestCase):
    def setUp(self):
        if os.path.exists("data/temp.mp3"):
            os.unlink("data/temp.mp3")

    def test_handles(self):
        """File handles"""
        shutil.copy("data/song.mp3", "data/temp.mp3")
        self.mpeg = MPEGAudio('data/temp.mp3')
        duration = self.mpeg.duration
        self.mpeg.close()
        os.unlink("data/temp.mp3")
Exemple #4
0
 def test_handles(self):
     """File handles"""
     shutil.copy("data/song.mp3", "data/temp.mp3")
     self.mpeg = MPEGAudio('data/temp.mp3')
     duration = self.mpeg.duration
     self.mpeg.close()
     os.unlink("data/temp.mp3")
Exemple #5
0
 def initialize_owner(cls, instance, filepath, force=False):
     """Initialize MPEG audio descriptor for object.
     
     :param instance: Owner instance.
     :type instance: object
     
     :param filepath: File path to MP3.
     :type filepath: string
     
     :param force: Force re-initialization, rewriting the values.
     :type force: bool
     
     :raise MP3DetailsException: Raised if the file is not MPEG Audio file.
     
     """
     if not hasattr(instance, "_mpegaudio") or force:
         try:
             instance._mpegaudio = MPEGAudio(open(filepath, 'rb'))
         except MPEGAudioHeaderException:
             raise MP3DetailsException('Not MPEG Audio file.')
Exemple #6
0
 def setUp(self):
     self.mpeg = MPEGAudio(file=open('data/song.mp3', 'rb'))
Exemple #7
0
class MPEGTests(unittest.TestCase):
    """Simple CBR MPEG tests."""
    def setUp(self):
        self.mpeg = MPEGAudio(file=open('data/song.mp3', 'rb'))

    def testPositions(self):
        """CBR frame positions"""
        self.assertEqual(self.mpeg.frames[0].offset, 2283)
        self.assertEqual(self.mpeg.frames[1].offset, 3119)
        self.assertEqual(self.mpeg.frames[2].offset, 3955)
        self.assertEqual(self.mpeg.frames[3].offset, 4791)
        self.assertEqual(self.mpeg.frames[4].offset, 5627)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testBitrate(self):
        """CBR bitrate"""
        self.assertEqual(self.mpeg.bitrate, 256)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testDuration(self):
        """CBR duration"""
        self.assertEqual(self.mpeg.duration, timedelta(seconds=192))
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, True)

    def testSampleRate(self):
        """CBR sample rate"""
        self.assertEqual(self.mpeg.sample_rate, 44100)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testSamplesPerFrame(self):
        """CBR samples per frame"""
        self.assertEqual(self.mpeg.samples_per_frame, 1152)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testFrameSize(self):
        """CBR frame size"""
        self.assertEqual(self.mpeg.frame_size, 836)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testFrameCount(self):
        """CBR frame count"""
        self.assertEqual(self.mpeg.frame_count, 7352)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, True)

    def testIsVBR(self):
        """CBR is VBR?"""
        self.assertEqual(self.mpeg.is_vbr, False)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testParsingAll(self):
        """CBR parse all"""
        self.mpeg.parse_all()
        self.assertEqual(self.mpeg.frames._has_parsed_all, True)
        self.assertEqual(self.mpeg.frame_count, 7352)
        self.assertEqual(self.mpeg.sample_count, 8467823)
        self.assertEqual(self.mpeg.duration.seconds, 192)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)
Exemple #8
0
 def setUp(self):
     self.mpeg = MPEGAudio('data/vbr_empty.mp3')
Exemple #9
0
 def setUp(self):
     self.mpeg = MPEGAudio(file=open('data/vbr_empty.mp3', 'rb'))
Exemple #10
0
 def setUp(self):
     self.mpeg = MPEGAudio(file=open('data/vbr_fraunhofer.mp3', 'rb'))
     self.assertEqual(self.mpeg.frames._has_parsed_all, False)
     self.assertEqual(self.mpeg.frames._has_parsed_ending, False)
Exemple #11
0
 def setUp(self):
     self.mpeg = MPEGAudio(file=open('data/song.mp3', 'rb'))
Exemple #12
0
class MPEGTests(unittest.TestCase):
    """Simple CBR MPEG tests."""
    def setUp(self):
        self.mpeg = MPEGAudio(file=open('data/song.mp3', 'rb'))

    def testPositions(self):
        """CBR frame positions"""
        self.assertEqual(self.mpeg.frames[0].offset, 2283)
        self.assertEqual(self.mpeg.frames[1].offset, 3119)
        self.assertEqual(self.mpeg.frames[2].offset, 3955)
        self.assertEqual(self.mpeg.frames[3].offset, 4791)
        self.assertEqual(self.mpeg.frames[4].offset, 5627)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testBitrate(self):
        """CBR bitrate"""
        self.assertEqual(self.mpeg.bitrate, 256)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testDuration(self):
        """CBR duration"""
        self.assertEqual(self.mpeg.duration, timedelta(seconds=192))
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, True)

    def testSampleRate(self):
        """CBR sample rate"""
        self.assertEqual(self.mpeg.sample_rate, 44100)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testSamplesPerFrame(self):
        """CBR samples per frame"""
        self.assertEqual(self.mpeg.samples_per_frame, 1152)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testFrameSize(self):
        """CBR frame size"""
        self.assertEqual(self.mpeg.frame_size, 836)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testFrameCount(self):
        """CBR frame count"""
        self.assertEqual(self.mpeg.frame_count, 7352)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, True)

    def testIsVBR(self):
        """CBR is VBR?"""
        self.assertEqual(self.mpeg.is_vbr, False)
        self.assertEqual(self.mpeg.frames._has_parsed_all, False)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)

    def testParsingAll(self):
        """CBR parse all"""
        self.mpeg.parse_all()
        self.assertEqual(self.mpeg.frames._has_parsed_all, True)
        self.assertEqual(self.mpeg.frame_count, 7352)
        self.assertEqual(self.mpeg.sample_count, 8467823)
        self.assertEqual(self.mpeg.duration.seconds, 192)
        self.assertEqual(self.mpeg.frames._has_parsed_ending, False)