微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

尝试记录时,纯数据冻结

如何解决尝试记录时,纯数据冻结

使用Pure Data,尝试记录我制作的补丁的音频输出,并且是1)无法在纯数据中创建要写入的文件,以及2)尝试使用writesf〜对象导致程序执行约两到三秒钟后冻结。我怀疑这两件事是相关的-也许程序试图以某种方式将数据写入某个地方,但是它在错误的地方或类似的地方出现并导致程序冻结? 我已经卸载了最新的Pure Data版本(0.51-1),并安装了较早的稳定版本(0.5-2),甚至尝试了一种名为“ purr data(最新版本)”的替代方法,所有这些在Windows 10 acer上都具有完全相同的结果笔记本电脑:未创建文件,并且程序在几秒钟后冻结。

我正在测试此补丁:

Screenshot of Pd patch

我首先单击显示为“ open rec.wav”的消息,然后单击“开始”,然后单击“停止”,如果我花了三秒钟以上的时间单击“停止”,程序将冻结,否则根本没有任何反应。 我已经在系统范围内搜索了音频文件包括补丁所在的文件夹,但都无济于事。 任何难以解决提示都会被仔细尝试。

解决方法

确定要在目标目录上具有写权限吗?

如果您的示例使用rec.wav,它没有显式的目标目录(并且仅使用“当前”目录,因此很难从外部判断该目录是什么)。

@ max-n的答案建议使用/tmp/foo.wav,这是Windows上的非法目录。由于a known bug,使用非法(或其他不可写)路径会锁定Pd。

如果您的“当前”目录恰好是系统根目录(又名C:\),则您可能缺少在此处写入的权限。 您可以通过从cmdline启动Pd进行检查,看看终端机是否吐出任何奇怪的错误:

  1. ⊞Win + R
  • 键入cmd并按 Enter
  1. 在打开的终端中,键入您的Pd可执行文件的完整路径,例如:
  • C:\Program Files\Pd\bin\pd + 输入
  • (最好省略扩展名(即:使用.../pd而不是.../pd.exe

如果该问题确实是权限问题,则可以通过指定输出文件的完整路径(并确保该文件位于可写目录中)来解决该问题。

最简单的方法是使用文件选择器选择输出文件:

[bang(
|
[savepanel]
|
[open $1(
|
[writesf~]
,

帮助文件使用import pandas as pd import matplotlib.pyplot as plt import matplotlib.dates as mdates import numpy as np test = ['Monday - 00','Monday - 01','Monday - 02','Monday - 03','Monday - 04','Monday - 05','Monday - 06','Monday - 07','Monday - 08','Monday - 09','Monday - 10','Monday - 11','Monday - 12','Monday - 13','Monday - 14','Monday - 15','Monday - 16','Monday - 17','Monday - 18','Monday - 19','Monday - 20','Monday - 21','Monday - 22','Monday - 23','Tuesday - 00','Tuesday - 01','Tuesday - 02','Tuesday - 03','Tuesday - 04','Tuesday - 05','Tuesday - 06','Tuesday - 07','Tuesday - 08','Tuesday - 09','Tuesday - 10','Tuesday - 11','Tuesday - 12','Tuesday - 13','Tuesday - 14','Tuesday - 15','Tuesday - 16','Tuesday - 17','Tuesday - 18','Tuesday - 19','Tuesday - 20','Tuesday - 21','Tuesday - 22','Tuesday - 23','Wednesday - 00','Wednesday - 01','Wednesday - 02','Wednesday - 03','Wednesday - 04','Wednesday - 05','Wednesday - 06','Wednesday - 07','Wednesday - 08','Wednesday - 09','Wednesday - 10','Wednesday - 11','Wednesday - 12','Wednesday - 13','Wednesday - 14','Wednesday - 15','Wednesday - 16','Wednesday - 17','Wednesday - 18','Wednesday - 19','Wednesday - 20','Wednesday - 21','Wednesday - 22','Wednesday - 23','Thursday - 00','Thursday - 01','Thursday - 02','Thursday - 03','Thursday - 04','Thursday - 05','Thursday - 06','Thursday - 07','Thursday - 08','Thursday - 09','Thursday - 10','Thursday - 11','Thursday - 12','Thursday - 13','Thursday - 14','Thursday - 15','Thursday - 16','Thursday - 17','Thursday - 18','Thursday - 19','Thursday - 20','Thursday - 21','Thursday - 22','Thursday - 23','Friday - 00','Friday - 01','Friday - 02','Friday - 03','Friday - 04','Friday - 05','Friday - 06','Friday - 07','Friday - 08','Friday - 09','Friday - 10','Friday - 11','Friday - 12','Friday - 13','Friday - 14','Friday - 15','Friday - 16','Friday - 17','Friday - 18','Friday - 19','Friday - 20','Friday - 21','Friday - 22','Friday - 23','Saturday - 00','Saturday - 01','Saturday - 02','Saturday - 03','Saturday - 04','Saturday - 05','Saturday - 06','Saturday - 07','Saturday - 08','Saturday - 09','Saturday - 10','Saturday - 11','Saturday - 12','Saturday - 13','Saturday - 14','Saturday - 15','Saturday - 16','Saturday - 17','Saturday - 18','Saturday - 19','Saturday - 20','Saturday - 21','Saturday - 22','Saturday - 23','Sunday - 00','Sunday - 01','Sunday - 02','Sunday - 03','Sunday - 04','Sunday - 05','Sunday - 06','Sunday - 07','Sunday - 08','Sunday - 09','Sunday - 10','Sunday - 11','Sunday - 12','Sunday - 13','Sunday - 14','Sunday - 15','Sunday - 16','Sunday - 17','Sunday - 18','Sunday - 19','Sunday - 20','Sunday - 21','Sunday - 22','Sunday - 23',]; df = pd.read_excel('file.xlsx',sheet_name="x") blue = df.loc[df['DT-Index'].map(lambda date: date.month == 12 or date.month == 1 or date.month == 2)] red = df.loc[df['DT-Index'].map(lambda date: date.month == 3 or date.month == 4 or date.month == 10 or date.month == 11)] purple = df.loc[df['DT-Index'].map(lambda date: date.month == 5 or date.month == 9)] green = df.loc[df['DT-Index'].map(lambda date: date.month == 6 or date.month == 7 or date.month == 8)] xB = list(blue['DT-Index']) yB = list(blue['values']) xR = list(red['DT-Index']) yR = list(red['values']) xP = list(purple['DT-Index']) yP = list(purple['values']) xG = list(green['DT-Index']) yG = list(green['values']) def mittelwerte(dic): for val in dic.keys(): dic[val] = int(sum(dic[val]) / len(dic[val])) return dic; def appendToDict(x,y): data = dict() xAF = list(map(lambda date: date.to_pydatetime(),x)) for i in range(len(x)): day = xAF[i].strftime("%A - %H") if day in data.keys(): data[day].append(y[i]) else : data[day] = [y[i]] return sortDict(mittelwerte(data),test) def sortDict(dic,keys): data = dict.fromkeys(keys); for data1 in data.keys(): for data2 in dic.keys(): if(data1 == data2): data[data1] = dic[data2] return data; dataB = appendToDict(xB,yB) dataR = appendToDict(xR,yR) dataP = appendToDict(xP,yP) dataG = appendToDict(xG,yG) # my_xticks = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'] # plt.xticks(list(dataB.keys()),my_xticks) plt.plot(list(dataB.keys()),list(dataB.values()),color='#3074bb') plt.plot(list(dataR.keys()),list(dataR.values()),color='#bb3530') plt.plot(list(dataP.keys()),list(dataP.values()),color='#a630bb') plt.plot(list(dataG.keys()),list(dataG.values()),color='#30bb40') plt.ylabel('Y Values') plt.legend() plt.show() 在预定时间内安排停止消息可能是有原因的。

matplotlib

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。