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燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP