Файл Python работает по-разному при запуске из Visual Studio и запускается с Anaconda Prompt - PullRequest
0 голосов
/ 25 февраля 2019

Я довольно новичок в python и работаю над простой программой, которая записывает звук, немного его модифицирует и затем воспроизводит.Я написал это в Visual Studio, но это программное обеспечение не будет работать для меня с sounddevice и говорит No module named '_sounddevice_data', но когда я запускаю его с python "path to this file" в Anaconda Prompt, оно работает без каких-либо проблем.Этот пакет находится в среде Python Visual, который я использую - Anaconda 5.2.0.С другой стороны, запуск из Anaconda Prompt не будет работать с tenorflow из-за некоторой ошибки, которая пропускается в Visual Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2.Более того, все прекрасно работает, когда я использую простой файл .bat для запуска этого кода: D

echo off

CALL  D:\Users\blaze\Anaconda3\Scripts\activate.bat D:\Users\blaze\Anaconda3
python C:\Users\blaze\source\repos\recorder\recorder\recorder.py

echo on 

Я был бы благодарен за любую помощь, потому что я просто не могу понять, что происходит.Вот код:

import tensorflow as  tf
import numpy as np
import time
import glob
import os
model=tf.keras.models.load_model("D:\Projekt\ML\save\model.h5py",compile=True)

duration = 100  # seconds
frames = 8192
global a 
a=0

file_list_c = glob.glob(os.path.join(os.getcwd(), "Check", "*.txt"))
for file_path in file_list_c:
    with open(file_path) as f:       
        datax =np.genfromtxt(file_path)     
        datax=np.reshape(datax,(-1,8192))
        print(model.predict(datax))
        print(np.argmax(model.predict(datax)))

import sounddevice as sd
def callback(indata, outdata, frames, time, status):
    if status:
        print(status)
    print(np.argmax(model.predict(np.reshape(indata,(-1,8192)))))
    outdata[:] = indata


with sd.Stream(samplerate=48000,blocksize=8192,channels=1, callback=callback):
    sd.sleep(int(duration*1000))


time.sleep(100)
...