Python 板


LINE

各位好! (我没有学过 python,所以下面的问题如果很蠢,请直接纠正我!) 我想要写一段 C++ 程式码, 读入 .wav 档案,把声音讯号储存在阵列里面,然後进行一些讯号处理的工作。 因为 C++ 没有内建这样的函式库,而 python 的函式库相当丰富, 所以我就想到可以在 C++ 程式码里面,使用 python 来读档。 先用功能强大的 python 处理输出入,後用效率较高的 C++ 进行运算,应该是个好方法! 可是我应该怎麽做呢?我连要安装什麽软体都弄不清楚... orz 我该阅读哪些东西,才能学到所有必要的知识? 麻烦大家指点! --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 36.225.136.213
1F:→ uranusjr:C++ 使用 Python 函式库是很困难的事情(甚至不可能), 12/20 23:49
2F:→ uranusjr:一般都是反过来用 C++(或比较常见是用 C)扩充 Python 12/20 23:50
3F:→ uranusjr:至於需要什麽...你需要完整的 Python 环境(官网安装包装 12/20 23:50
4F:推 chchwy:反过来python用C函式库则不难 关键字ctypes 12/20 23:51
5F:→ uranusjr:下去就差不多了), 以及一个把 C++ 包起来送给 Python 的 12/20 23:51
6F:→ uranusjr:工具 -- Boost.Python 是个常见的选择 12/20 23:52
http://docs.python.org/2/extending/embedding.html 这个网页应该是 C++ 使用 Python 吧? 所以这是很困难的事情罗... orz 困难的地方在於哪里呢?例如环境设定之类的?
7F:→ legnaleurc:... 为什麽不直接找 C++ 的工具就好了 12/21 00:09
因为 C++ 没有内建相关函式库,没有统一标准, 而 python audio api 似乎是官方统一标准的?(不太确定) 因为我想写教学文件,可能会有满多人阅读、动手做,所以有个统一标准可循会比较好! 另外也听说 python 比较容易上手,适合非本科系学生, 国外一些计算机概论课程也是教 python,所以就想试看看 python!
8F:→ uranusjr:Python.h 是 C API(当然 C++ 本来就可以用 C 是没错..) 12/21 10:57
9F:→ uranusjr:除非你之前有写过 C 的物件导向, 不然整个用起来就是很卡 12/21 10:58
我没有写过 C 的物件导向耶,老实说我对 C/C++ 都不是很熟... 如果这种方式,各位专家认为它会卡卡的, 那麽我应该会改用 python call c++ 而不是 c++ call python ~
10F:推 rodion:应该就是看你自己贴的官方文件吧 我晚点也要试试C++连py 12/21 14:44
如果有试出来麻烦也教我一下怎麽做 >"<
11F:推 retard:google 一下就有了 12/21 16:40
12F:→ retard:http://goo.gl/xlyec 12/21 16:41
13F:→ retard:hmm 12/21 16:42
14F:→ retard:我会错意了 12/21 16:42
15F:→ retard:我猜你要的是 cython 之类的 12/21 16:43
这个好像是另一种神奇的语言???
16F:推 plover:可能要先确定你的需求 12/21 21:15
我的需求:就如正文所述,可以读/播放声音档案就好了。有官方标准API就更好! 程式码主要是用来教学/推广用的。 我想了解看看,如果用 python 的话,会有哪些比较好的做法, 看看哪一种比较方便、比较容易操作,再决定用哪一种方式。 最後也可能决定直接整支程式都用 python 写 XD
17F:→ legnaleurc:要给非本科系教学那就别用 C++ 吧,吓走一堆人 12/22 03:00
真的吗?我一直以为一般民众对 C/C++ 的接受程度应该是最高的了。 程式语言补习班也都有 C/C++ 的课程,python 相对之下比较小众。 http://www.csie.ntu.edu.tw/train/course_program.php http://www.pcschool.com.tw/learnservice/courselist.aspx?id=31 正因为听说 python 很强大却不流行,才想说也许可以试试 python。
18F:推 flarehunter:要做讯号处理的话 matlab也是一个不错的选择 12/22 10:37
我一开始学声音讯号处理就是看 matlab 的程式码!!! 推荐下面这网页: http://mirlab.org/jang/books/audioSignalProcessing/ 最大缺憾就是 matlab 要钱 XD 还有一个缺憾就是 matlab 很多东西都已经包好好,没办法呈现太多细节。 至於好处是画图表很方便! 另外想偷偷问一下 openAL 好不好用 (这个问题好像不适合在这个板问 XD) ※ 编辑: DJWS 来自: 36.225.136.125 (12/22 10:54)
19F:→ legnaleurc:知名度和上手度是两回事 12/22 18:23
20F:→ DJWS:有道理! 12/23 16:59
21F:→ Reylod:matlab要钱就用octave,几乎compatible 12/24 00:01
22F:→ kdjf:不过速度真的有差... XD 12/24 09:47
23F:→ uranusjr:除非有向後相容需求, 不然与其用 Octave 不如乾脆就用 12/24 10:00
24F:→ uranusjr:Python 就好啦... 12/24 10:00
我也觉得直接用 python 比较单纯一点~
25F:推 marksmanz:swig应该可以满足你的需求 12/25 00:33
26F:→ marksmanz:但是最快的方式应该还是用python import openal ... 12/25 00:37
27F:→ marksmanz:要画图的话可以用 matplotlib 12/25 00:39
感谢!长了很多知识! swig 看起来超猛,什麽语言通通都可以黏在一起,竟然有这麽神奇的工具... 另外一方面,既然要 python import openal,那我其实也可以 c++ import openal !? 我想我得研究一下 openal 到底好不好用,再来做决定。 ※ 编辑: DJWS 来自: 36.225.134.173 (12/25 23:48)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP