簡體   English   中英

python 從 blob 獲取音頻持續時間

[英]python get audio duration from blob

我的問題類似於Get.wav 文件長度或持續時間

  1. 在 js 前端使用MediaRecorder錄制音頻
  2. 將 blob 發送到后端

我想應用30 seconds 的長度限制,但我只有一個 blob,應該存儲在 django BinaryField中。


因為在后端我不想在每個請求中創建一個文件,我只想訪問音頻的長度,我很感激你的建議。

您想使用io package 為您的內存數據提供與其他庫(如wave )類似的文件接口。

下面的一個例子:

from io import BytesIO

with open("sample.wav", "rb") as f:
  blob = f.read()

data = BytesIO(blob)

然后可以將data視為任何 wav 文件:

import wave
import contextlib

with contextlib.closing(wave.open(data,'r')) as f:
    frames = f.getnframes()
    rate = f.getframerate()
    duration = frames / float(rate)
    print(duration)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM