コード例 #1
0
 def create_instance(self):
     audio = Audio(name="Un audio",
                   description="This is an audio",
                   audio=SimpleUploadedFile("the audio.mp3", "content"),
                   user=self.user)
     audio.save()
     return audio
コード例 #2
0
 def create_instance(self):
     with open(os.path.join(TEST_DATA_PATH, 'tone.mp3'), 'rb') as audio_file:
         audiofile = SimpleUploadedFile("the audio.mp3", audio_file.read(),
                                        content_type="audio/mpeg")
     audio = Audio(name="Un audio", description="This is an audio",
                   audio=audiofile, user=self.user)
     audio.save()
     return audio
コード例 #3
0
 def create_instance(self):
     with open(os.path.join(TEST_DATA_PATH, u'tone.mp3'),
               'rb') as audio_file:
         audiofile = SimpleUploadedFile(u"the audio.mp3",
                                        audio_file.read(),
                                        content_type="audio/mpeg")
     audio = Audio(name="Un audio",
                   description="This is an audio",
                   audio=audiofile,
                   user=self.user)
     audio.save()
     return audio
コード例 #4
0
    def run(self):
        try:
            self.loaded.emit(False)
            data = []
            count_calls = 1
            count_audios = self.api.call("audio.get", {
                "count": 0,
            })['response']['count']
            
            self.count_tracks.emit(count_audios)
            
            if count_audios > self.COUNT_LOADING_AUDIO:
                
                count_calls = round(count_audios / self.COUNT_LOADING_AUDIO)

                for i in range(count_calls):
                    try:
                        self.audios = self.api.call('audio.get', {
                                "offset": self.COUNT_LOADING_AUDIO * i
                            }
                        )
                        _data = [Audio(item) for item in self.audios['response']['items']]
                        data = [*data, *_data]
                        self.music.emit(data)

                    except VKLightError as e:
                        self.error.emit(str(e))
                        break

                    if i != 0 and i % 10 == 0:
                        sleep(9)

            else:
                self.audios = self.api.call('audio.get')
                data = [Audio(item) for item in self.audios['response']['items']]

            
            if not NoSaveToFile:
                save_json('response.json', self.audios)

            self.music.emit(data)
            self.loaded.emit(True)

            stat.set_userid(user_id=self.user_id)
            stat.send()

        except (VKLightError, Exception) as e:
            self.loaded.emit(True)
            self.error.emit(str(e))
            self.music.emit([])
            self.count_tracks.emit(0)
コード例 #5
0
def add_in_db(audio, sentences, session):
    """Add audio and coresponding sentences to DB."""
    a = Audio(audio)
    session.add(a)
    session.flush()
    for s in sentences:
        sen = Sentences(a.id_, s)
        session.add(sen)
    session.commit()
コード例 #6
0
ファイル: main.py プロジェクト: MrChoclate/tts
def save_audio(words, speaker_id, audio_file):
    for word, start, end in words:

        # Get or create word
        word_obj = Session.query(Word).filter_by(word=word).first()
        if not word_obj:
            word_obj = Word(word=word)
            Session.add(word_obj)

        # Add audio
        Session.add(Audio(
            word=word_obj.word,
            audio_file=audio_file,
            start=start,
            end=end,
            speaker_id=speaker_id
        ))
    Session.commit()
    print("Saved {} audios ".format(len(words)), end="")
コード例 #7
0
ファイル: factory.py プロジェクト: olarid7852/filed-audio
 def build(self):
     audioFileMetadata: Union[AudioBookMetadata, PodcastMetadata,
                              SongMetadata]
     base_metadata_dict = BaseMetadata(
         name=self.name,
         duration=self.duration,
         uploaded_time=self.uploaded_time).dict()
     if self.audioFileType == AudioTypes.audio_book:
         audioFileMetadata = AudioBookMetadata(author=self.author,
                                               narrator=self.narrator,
                                               **base_metadata_dict)
     elif self.audioFileType == AudioTypes.podcast:
         audioFileMetadata = PodcastMetadata(host=self.host,
                                             participants=self.participants,
                                             **base_metadata_dict)
     else:
         audioFileMetadata = SongMetadata(**base_metadata_dict)
     audio = Audio(audioFileType=self.audioFileType,
                   audioFileMetadata=audioFileMetadata)
     return audio
コード例 #8
0
    def load_all_music(self, user_id, count=None) -> list:
        try:
            response = []
            if count > APIConstants.count_audios:
                for i in range(ceil(count / APIConstants.count_audios)):
                    response.extend(
                        self.api_handler.get_audio(
                            user_id=user_id,
                            offset=APIConstants.count_audios *
                            i)['response']['items'])

                    if i != 0 and i % 10 == 0:
                        time.sleep(5)
            else:
                response = self.api_handler.get_audio(
                    user_id=user_id)['response']['items']

            return [Audio(audio) for audio in response]

        except Exception as e:
            raise e
コード例 #9
0
ファイル: tests.py プロジェクト: Alitux/redpanal
 def create_instance(self):
     audio = Audio(name="Un audio", description="This is an audio",
                       audio=SimpleUploadedFile("the audio.mp3", "content"),
                       user=self.user)
     audio.save()
     return audio
コード例 #10
0
def populate_film():
    print 'Archivio Film'

    with io.open(APP_ROOT + 'db_csv/films.csv', 'r',
                 encoding='utf-16') as films_file:
        films = films_file.read().split('\n')[1:]

        for film in films:

            film_spl = film.split('\t')
            if len(film_spl) > 1:

                print film_spl
                print film_spl[1]

                date = film_spl[1].split('-')
                data_a = None
                data_b = None

                if len(date) == 2:
                    date_a = int(date[0])
                    date_b = int(date[1])
                elif len(date) == 1:
                    data_a = int(date[0])

                new_el = Film(
                    titolo=film_spl[0],
                    anno_a=data_a,
                    anno_b=data_b,
                    durata=int(film_spl[3]),
                )

                #REGIA
                registi = film_spl[2].split(', ') if film_spl[2] != '' else []
                for regista in registi:
                    regista = regista.strip()
                    new_regista = Regista.query.filter_by(nome=regista).first()
                    if not new_regista:
                        new_regista = Regista(nome=regista)
                        db.session.add(new_regista)
                        #db.session.commit()

                    new_el.regia.append(new_regista)

                #AUDIO
                audii = film_spl[5].split('/') if film_spl[5] != '' else []
                for audio in audii:
                    audio = audio.strip()
                    new_audio = Audio.query.filter_by(nome=audio).first()
                    if not new_audio:
                        new_audio = Audio(nome=audio)
                        db.session.add(new_audio)
                        #db.session.commit()

                    new_el.audio.append(new_audio)

                #SUB
                subs = film_spl[4].split('/') if film_spl[4] != '' else []
                for sub in subs:
                    sub = sub.strip()
                    new_sub = Audio.query.filter_by(nome=sub).first()
                    if not new_sub:
                        new_sub = Audio(nome=sub)
                        db.session.add(new_sub)
                        #db.session.commit()

                    new_el.sub.append(new_sub)

                db.session.add(new_el)

    db.session.commit()

    print User.query.all()
コード例 #11
0
ファイル: test_model.py プロジェクト: olarid7852/filed-audio
def test_reject_audio_type_support():
    with pytest.raises(ValueError):
        audio = AudioFactory().build()
        audio = Audio(audioFileType='a',
                      audioFileMetadata=audio.audioFileMetadata)
コード例 #12
0
ファイル: test_model.py プロジェクト: olarid7852/filed-audio
def test_correct_audio():
    audio = None
    audio = AudioFactory().build().dict()
    assert Audio(**audio)
コード例 #13
0
ファイル: test_model.py プロジェクト: olarid7852/filed-audio
def test_reject_empty_data():
    with pytest.raises(ValueError):
        audio = Audio(**{})