Pythonista3(iPad)でmp3再生をしたいです。
pygameなども使えるということが分かり試したのですが、インストール出来なかったと上手く行きません。どなたかiPad版Pythonでも動かす方法、ご回答お願いします????????
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
Pythonista の開発者の方の Gist に、sound モジュールをごく簡単な UI と共に使用したコード例がありました。
https://gist.github.com/omz/10023837
画面タッチでポーズのはずが pause() ではなく stop() になっていたのを修正して、ついでにファイルパスをコードにベタ書きではなく、ファイルピッカーからファイルを選択して取得できるようにコードを追加したのが、以下になります(ベタ書きする場合のコードもコメントアウトして残してあります)。
ただしファイルピッカーから直接 Pythonista の内部のファイルにはアクセスできないので、音楽ファイルを Pythonista の内部に置こうと思ったら、SCRIPT LIBRARY カテゴリの下の iCloud の中に置く必要があります(iCloud 内の Pythonista3 フォルダにはアクセスできる)。
python
1 2# https://gist.github.com/omz/10023837 3 4# Simple demo of playing a looping sound using the (currently undocumented) sound.Player class 5 6import os 7import dialogs 8import sound 9from scene import * 10 11 12class MyScene (Scene): 13 def __init__(self, file_path): 14 super().__init__() 15 self.file_path = file_path 16 17 def setup(self): 18 #self.player = sound.Player(os.path.expanduser('~/Documents/audio_files/anohini_kaeritai.mp3')) 19 self.player = sound.Player(self.file_path) 20 self.player.number_of_loops = -1 #repeat forever 21 self.playing = False 22 23 def draw(self): 24 background(0, 0, 0) 25 x, y = self.size.w * 0.5, self.size.h * 0.5 26 text('Touch to play/pause', 'Helvetica', 30, x, y) 27 28 def touch_began(self, touch): 29 if self.playing: 30 #self.player.stop() 31 self.player.pause() 32 else: 33 self.player.play() 34 self.playing = not self.playing 35 36file_path = dialogs.pick_document(types=['public.audio']) 37if file_path: 38 run(MyScene(file_path)) 39
投稿2021/03/17 09:50
総合スコア1195
0
Pythonista には標準ライブラリの他に、サードパーティ製のモジュールがいくつも同梱されているので、どんなものがあるか一度眺めてみるといいです。特に、iOS で使われることを前提にした独自モジュールが同梱されているので、把握しておいた方がいいです。
Pythonista Modules — Python 3.6.1 documentation
この iOS 用の独自モジュールを眺めていると、「sound — Sound effects and music playback」というものがあります。これが使えそうな気がします。ドキュメントを確認してみます。
sound — Sound effects and music playback — Python 3.6.1 documentation
使えそうなので、手元にあった適当な mp3 ファイルを iCloud 経由で Pythonista にインポートして、Pythonista のコンソールから試してみます。
python
1>>> from sound import Player 2>>> p = Player('anohini_kaeritai.mp3') 3>>> p.duration 4606.14525 5>>> p.current_time 60.0 7>>> p.play() 8>>> p.pause() 9>>> p.current_time 1052.30761904761905 11>>> p.play() 12>>> p.stop() 13>>> p.current_time 140.0
Pythonista から mp3 の音楽ファイルを再生することができました。
投稿2021/03/17 03:10
総合スコア1195
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/17 07:16 編集
退会済みユーザー
2021/03/17 07:24
2021/03/17 08:02 編集
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。