简体   繁体   English

在python中导入VLC模块时出现属性错误

[英]Attribute error when importing VLC module in python

When i try to run this code : 当我尝试运行此代码时:

import cv2
import vlc
cam = cv2.VideoCapture(0)
m = vlc.MediaPlayer('D:\faith-42201.mp3')
fd = cv2.CascadeClassifier(r'C:\Users\Shivani Khare\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\cv2\data\haarcascade_frontalface_alt.xml')
m.play()
flag=1
m.audio_set_volume(100)
while(True):
    r,i = cam.read()
    #i[0:10,:,:]=255
    #for adding rows
    j = cv2.cvtColor(i,cv2.COLOR_BGR2GRAY)
    face = fd.detectMultiScale(j,1.3,7)
    for (x,y,w,h) in face:
        cv2.rectangle(i,(x,y),(x+w,y+h),(0,0,0),-1)
        t = w*h
        m.audio_set_volume(100-int(t/500))
        l = len(face)
        if(l>0):
            m.play()
            flag = 0
        elif(flag==0):
            m.pause()
            flag = 1
    print("no of faces are : ",len(face),face)
    cv2.imshow('image1',i)

    k = cv2.waitKey(5)
    print(k)
    if(k==27):
        cv2.destroyAllWindows()
        break

I keep getting this error : 我不断收到此错误:

Traceback (most recent call last): 追溯(最近一次通话):

File "C:\\Users\\Shivani Khare\\AppData\\Local\\Programs\\Python\\Python36\\hi.py", line 5, in m = vlc.MediaPlayer('D:\\faith-42201.mp3') File "C:\\Users\\Shivani Khare\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages\\vlc.py", line 3184, in new o.set_media(instance.media_new(*args)) File "C:\\Users\\Shivani Khare\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages\\vlc.py", line 1788, in media_new m._instance = self AttributeError: 'NoneType' object has no attribute '_instance' 文件“ C:\\ Users \\ Shivani Khare \\ AppData \\ Local \\ Programs \\ Python \\ Python36 \\ hi.py”,第5行,m = vlc.MediaPlayer('D:\\ faith-42201.mp3')文件“ C: \\ Users \\ Shivani Khare \\ AppData \\ Local \\ Programs \\ Python \\ Python36 \\ lib \\ site-packages \\ vlc.py“,第3184行,位于 o.set_media(instance.media_new(* args))文件“ C:\\ Users \\ Shivani Khare \\ AppData \\ Local \\ Programs \\ Python \\ Python36 \\ lib \\ site-packages \\ vlc.py“,行1788,位于media_new m._instance = self AttributeError: 'NoneType'对象没有属性'_instance'

Please help 请帮忙

You're passing a list in MediaPlayer constructor in line#5, but it expects a string(ref: https://linuxconfig.org/how-to-play-audio-with-vlc-in-python ). 您在第5行的MediaPlayer构造函数中传递了一个列表,但是它需要一个字符串(参考: https : //linuxconfig.org/how-to-play-audio-with-vlc-in-python )。

Try making this change: 尝试进行以下更改:

m = vlc.MediaPlayer('D:\faith-42201.mp3')

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM