Video 暂停后未正确播放心理变态视频

Video 暂停后未正确播放心理变态视频,video,psychopy,Video,Psychopy,我正在附上我的密码。基本上,一切正常,除了视频不能正常恢复播放。音频将继续,但视频无法正常恢复。请帮忙。我基本上已经把所有内容都注释掉了,但是为了给大家一个概述(因为我不能在没有上下文的情况下发布),我的代码显示了一个对话框并暂停了视频。如果密码不匹配,将重新提示用户,直到他们输入正确的密码。密码输入正确后,视频应恢复正常。另外,我知道Python使用列表,所以请原谅我在代码中将它们称为数组。我刚从C来,所以我已经习惯了。我将继续纠正这一点 #!/usr/bin/env python2 # -*

我正在附上我的密码。基本上,一切正常,除了视频不能正常恢复播放。音频将继续,但视频无法正常恢复。请帮忙。我基本上已经把所有内容都注释掉了,但是为了给大家一个概述(因为我不能在没有上下文的情况下发布),我的代码显示了一个对话框并暂停了视频。如果密码不匹配,将重新提示用户,直到他们输入正确的密码。密码输入正确后,视频应恢复正常。另外,我知道Python使用列表,所以请原谅我在代码中将它们称为数组。我刚从C来,所以我已经习惯了。我将继续纠正这一点

#!/usr/bin/env python2
# -*- coding: utf-8 -*-

############################################################
#      This program is designed to play a video            #
#      where the user has to enter different passwords     #
#      to resume playing of the video file                 #
############################################################

from __future__ import division

from psychopy import visual, core, event, gui
import time, os
from timeit import default_timer

videopath = r'./Devin.mp4'
videopath = os.path.join(os.getcwd(), videopath)
if not os.path.exists(videopath):
    raise RuntimeError("Video File could not be found:" + videopath)

win = visual.Window([2500, 1600])

# Create your movie stim.
mov = visual.MovieStim2(win, videopath,
    size = 1280,
    pos=[0,420], 
    flipVert=False, flipHoriz=False,
    loop=False)

globalClock = core.Clock() # May use this to end the video 

#Passwords that are required to resume playing the video
progPassword = ['doggy', 'garbage', 'actively', 'caring']

# The intervals in time[] indicate when the video pause occurs in seconds 
# The times indicate the seconds after each previous interval passes
# The first interval is 0 + 90, so the pause occurs at 90 seconds
# The times[2] represents 90 + 135, or 225 seconds.
# So, the second pause occurs after a 3:45 progression into the movie
#times = [90, 135, 210, 285] 
times = [5, 5, 5, 5]
j = (len(progPassword) - 1) # Number of entries in the array 'password' -- count the commas in progPassword, that's the value of j
print(j)
# n = progPassword[-1] <-- refers to the last entry in an array in python

"""Program Start"""

i = 0 # Starts i = 0 because arrays are indexed at 0. times[0] corresponds to 90 seconds
while i <= j:
    start = time.time() # Starting a timer to run in tandem with the video
    future = start + times[i] 
    print(future)
    mov.play() 
    while time.time() < future: # Plays the video for the corresponding interval in time[i]
        mov.draw()
        win.flip()

    mov.pause()    
    while time.time() > future:  # Pauses the video and displays my dialogue box prompting
        myDlg = gui.Dlg(title = 'The password is: ' + progPassword[i])
        myDlg.addField('Please enter the password')
        myDlg.show()
        if myDlg.OK:
            userPassword = myDlg.data[0]
            if userPassword == progPassword[i]:
               i += 1
               print(i)
               break
            if userPassword != progPassword[i] or myDlg != myDlg.OK: 
               continue # If user doesn't enter the correct password, then the loop repeats until the correct password is entered

"""Playing movie until EOF"""

mov.play()
while i > j:
    mov.draw()
    win.flip()

win.close()
core.quit()
#/usr/bin/env蟒蛇2
#-*-编码:utf-8-*-
############################################################
#此程序旨在播放视频#
#其中用户必须输入不同的密码#
#恢复视频文件的播放#
############################################################
来自未来进口部
从psychopy导入视觉、核心、事件、gui
导入时间,os
从timeit导入默认\u计时器
videopath=r'/Devin.mp4'
videopath=os.path.join(os.getcwd(),videopath)
如果不存在操作系统路径(videopath):
raise RUNTIMERROR(“找不到视频文件:“+videopath”)
win=可视窗口([25001600])
#创建您的电影刺激。
mov=visual.MovieStim2(win,videopath,
尺寸=1280,
位置=[0420],
flipVert=False,flipHoriz=False,
循环=假)
globalClock=core.Clock()#可以用它来结束视频
#恢复播放视频所需的密码
progPassword=['doggy'、'garbage'、'active'、'caring']
#时间[]中的间隔表示视频暂停发生的时间(以秒为单位)
#时间表示前一个间隔结束后的秒数
#第一个间隔为0+90,因此暂停时间为90秒
#时间[2]表示90+135或225秒。
#因此,第二次暂停发生在电影进行到3:45之后
#时间=[90135210285]
时间=[5,5,5,5]
j=(len(progPassword)-1)#数组“password”中的条目数——计算progPassword中的逗号,这是j的值
印刷品(j)

#n=progPassword[-1]这一点正在心理变态论坛上讨论。不需要穿过柱子