편집 기록

편집 기록
  • 프로필 ᅟᅟᅟᅟ님의 편집
    날짜2022.05.20

    오류 해결 관련 질문입니다..


    녹음파일과 음원을 합성하는 코딩 중입니다..

    line 24, in <module>
        v_data = np.array(v_data[0:len(v_data):diffRate])
    TypeError: slice indices must be integers or None or have an __index__ method
    

    이러한 오류가 뜨면서 자꾸 실행이 되지 않습니다.. 뭐가 문제인걸까요..?

    <전체 코드>

    import numpy as np                                        
    import matplotlib.pyplot as plt                          
    import scipy.io as sio            
    from scipy.io.wavfile import write                      
    import os
    
    v_samplerate, v_data = sio.wavfile.read('voice.wav')
    b_samplerate, b_data = sio.wavfile.read("Invisible_Beauty.wav")
    
    v_times = np.arange(len(v_data))/float(v_samplerate)
    b_times = np.arange(len(b_data))/float(b_samplerate)
    
    if (len(v_data.shape) > 1) : 
       v_data = np.array(v_data[:,0])
    if (len(b_data.shape) > 1) : 
       b_data = np.array(b_data[:,0])
    
    if (v_samplerate > b_samplerate) :
       diffRate = v_samplerate / b_samplerate
       v_data = np.array(v_data[0:len(v_data):diffRate])
       sr = b_samplerate
    elif (v_samplerate < b_samplerate) : 
       diffRate = int(b_samplerate / v_samplerate)
       b_data = np.array(b_data[0:len(b_data):diffRate])
       sr = v_samplerate
    else :
       sr = b_samplerate
    
    mix_data = v_data + b_data[sr*10:len(v_data)+sr*10]
    
    b_data[sr*10:len(v_data)+sr*10] = mix_data
    
    scaled = np.int16(b_data/np.max(np.abs(b_data)) * 32767)
    write('voice2.wav', sr, scaled)
    os.system("start voice2.wav")
    
  • 프로필 김도현님의 편집
    날짜2022.05.20

    오류 해결 관련 질문입니다..


    녹음파일과 음원을 합성하는 코딩 중입니다.. line 24, in v_data = np.array(v_data[0:len(v_data):diffRate]) TypeError: slice indices must be integers or None or have an index method 이러한 오류가 뜨면서 자꾸 실행이 되지 않습니다.. 뭐가 문제인걸까요..?

    <전체 코드>

    import numpy as np
    import matplotlib.pyplot as plt
    import scipy.io as sio
    from scipy.io.wavfile import write
    import os

    v_samplerate, v_data = sio.wavfile.read('voice.wav') b_samplerate, b_data = sio.wavfile.read("Invisible_Beauty.wav")

    v_times = np.arange(len(v_data))/float(v_samplerate) b_times = np.arange(len(b_data))/float(b_samplerate)

    if (len(v_data.shape) > 1) : v_data = np.array(v_data[:,0]) if (len(b_data.shape) > 1) : b_data = np.array(b_data[:,0])

    if (v_samplerate > b_samplerate) : diffRate = v_samplerate / b_samplerate v_data = np.array(v_data[0:len(v_data):diffRate]) sr = b_samplerate elif (v_samplerate < b_samplerate) : diffRate = int(b_samplerate / v_samplerate) b_data = np.array(b_data[0:len(b_data):diffRate]) sr = v_samplerate else : sr = b_samplerate

    mix_data = v_data + b_data[sr*10:len(v_data)+sr*10]

    b_data[sr*10:len(v_data)+sr*10] = mix_data

    scaled = np.int16(b_data/np.max(np.abs(b_data)) * 32767) write('voice2.wav', sr, scaled) os.system("start voice2.wav")