Найти - Пользователи
Полная версия: Error: "Неверный URI «/home/zulus/Code/am.wav»."
Начало » Центр помощи » Error: "Неверный URI «/home/zulus/Code/am.wav»."
1
zulis
 def openFile(self):
        file_= QtWidgets.QFileDialog.getOpenFileName(parent=self,
           
            caption= str("Выберите аудиофайл"),
            filter=str("audio (*.wav)"),
            
            )
        
        r = (wave.open(str(file_[0]), "rb"))
        qurl = QtCore.QUrl(file_[0]) # создаю QUrl
        self.mplPlayer.setMedia(QtMultimedia.QMediaContent(qurl))# QMediaContent принимает объект Qurl, а не просто строку
        
            #  Включить аудио WAV
            #  Читать информацию о формате
            #  (Количество каналов, биты квантования, частота дискретизации, точки выборки, тип сжатия, описание типа сжатия)
            # (nchannels, sampwidth, framerate, nframes, comptype, compname)
        self.params = r.getparams()
        nchannels, sampwidth, framerate, nframes = self.params[:4]
            #  nchannelsNumber каналов = 2
            #  цифры квантования ширины выборки = 2
            #  частота дискретизации кадров = 22050
            #  nframes sample points = 53395
            #  Чтение данных nframes, возврат формата строки
        str_data = r.readframes(nframes)
            #Преобразовать строку в массив, чтобы получить одномерный массив коротких типов
        wave_data = np.fromstring(str_data, dtype=np.short)
            #  Нормализация назначения
        wave_data = wave_data*1.0/(max(abs(wave_data)))
            #  Интегрировать данные левого и правого канала
        wave_data = np.reshape(wave_data,[nframes,nchannels])
            #  wave_data.shape = (-1, 2) # -1 означает, что он не указан и делится в соответствии с номером другого измерения
            #  Наконец, время каждой выборки рассчитывается по количеству точек выборки и частоте выборки.
        time = np.arange(0, nframes) * (1.0 / framerate)
        plt.figure()
            #  Форма левого канала
        plt.subplot(3,1,1)
        plt.plot(time, wave_data[:,0])
        plt.xlabel("Время (секунды)")
        plt.ylabel("Аплитуда")
        plt.title("Левый канал")
        plt.grid()  #  Правитель
        plt.subplot(3,1,3)
            #  Форма волны правого канала
        plt.plot(time, wave_data[:,0], c="g")
        plt.xlabel("Время (секунды)")
        plt.ylabel("Амплитуда")
        plt.title("Левый канал")
        plt.title("Правый канал")
        plt.grid()
            
        now = datetime.datetime.now()
        from datetime import date
        i= str(date.today())
        n=str(now.hour)
        o=str(now.minute)
        p=str(now.second)
        plt.savefig(i+" "+ n +';'+ o +';'+ p  +  ".jpg")
        
        
        # транскрибация аудио и запись в док
        r = sr.Recognizer ()
        r.recognize_sphinx
        original_stdout = sys.stdout
        harvard = sr.AudioFile(file_[0])
        def callback(recognizer, audio):
            voice = recognizer.recognize_sphinx(audio, language = "en-US").lower()
            
        with harvard as source:
            audio = r.record(source)\
            r.recognize_sphinx(audio, language='en-US')
            print(type(audio))
            print(r.recognize_sphinx(audio))
            now = datetime.datetime.now()
            from datetime import date
            i= str(date.today())
            n=str(now.hour)
            o=str(now.minute)
            p=str(now.second)
            with open(i+" "+ n +';'+ o +';'+ p  + "файл" + ".docx",'w') as f:
                sys.stdout=f
                print(r.recognize_sphinx(audio))
                print(type(audio))
                sys.stdout= original_stdout
zulis
Программа представляет собой аудио плеер с распознанием текста при загрузке туда аудио дорожки. все функции распознавания выполняются, однако сам плеер с воспроизведение не работает выдавая эту ошибку
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB