Kivy的录音

时间:2014-04-18 11:01:41

标签: python audio kivy

是否有可能在Kivy录制音频?

我从文档中了解到有一种播放音频的方法,但我们可以录制语音然后播放吗?并在所有平台上工作?我的意思是我们可以在Windows或Ubuntu上开发并在Android上运行应用程序吗?

如果没有可能有任何解决方法吗?

2 个答案:

答案 0 :(得分:1)

你可以尝试这个食谱为kivy

https://github.com/kivy/audiostream

这是Kivy的官方配方,可以解决您的问题。

答案 1 :(得分:1)

我无法找到除平台特定方式之外的任何其他方式。我最终在Android上使用了这种变体:

from jnius import autoclass
from time import sleep

if platform() == 'android':
    # get the needed Java classes
    MediaRecorder = autoclass('android.media.MediaRecorder')
    AudioSource = autoclass('android.media.MediaRecorder$AudioSource')
    OutputFormat = autoclass('android.media.MediaRecorder$OutputFormat')
    AudioEncoder = autoclass('android.media.MediaRecorder$AudioEncoder')

    # create out recorder
    mRecorder = MediaRecorder()
    mRecorder.setAudioSource(AudioSource.MIC)
    mRecorder.setOutputFormat(OutputFormat.MPEG_4)
    mRecorder.setOutputFile('/sdcard/test_recording.mp4')
    mRecorder.setAudioEncoder(AudioEncoder.AMR_NB)
    mRecorder.prepare()

    # record 5 seconds
    mRecorder.start()
    sleep(5)
    mRecorder.stop()
    mRecorder.release()