oss對象雲存儲

import qiniu 
import uuid
import config

函數


def qn_upload_voice(fileData):
'''上傳語音到七牛雲
@arg: fileData - 編碼的MP3文件DATA
'''
q = qiniu.Auth(config.qiniu_access_key, config.qiniu_secret_key)
token = q.upload_token(config.qiniu_record_bucket_name, None, 3600, policy={})
key = '%s/uservoice/%s' % (uuid.uuid4().hex+".mp3", filename)
#要進行轉碼的轉碼操做。
fops = "avthumb/mp3/ab/320k/ar/44100/acodec/libmp3lame"
saveas_key = qiniu.urlsafe_base64_encode(config.qiniu_record_bucket_name+':'+key) #對轉碼後的文件進行使用saveas參數自定義命名
pfop = qiniu.PersistentFop(q, config.qiniu_record_bucket_name, 'mpsdemo') #mpsdemo爲使用的隊列名稱
ops = [fops+'|saveas/'+saveas_key]
ret, info = pfop.execute(key, ops, 1)
ret, info = qiniu.put_data(token, key, fileData)
return keyui

 

import ffmpeg
from qcloud_cos import CosConfig
from qcloud_cos import CosS3Client編碼


def tx_upload_voice(fileData):
'''上傳語音到騰訊雲
@arg: fileData - 編碼的MP3文件DATA
'''
out, err = ffmpeg.input('pipe:', format='amr').output('pipe:', format='mp3').run(input=fileData, capture_stdout=True)   #ffmpeg 管道 語音轉碼 mp3 
secret_id = config.tencent_secret_id
secret_key = config.tencent_secret_key
region = 'ap-chengdu'
token = None
scheme = 'https'
txconfig = CosConfig(Region=region, SecretId=secret_id, SecretKey=secret_key, Token=token, Scheme=scheme)
client = CosS3Client(txconfig)
filename = uuid.uuid4().hex+".mp3" #客戶端對象
result = client.put_object(
Bucket = config.tencent_record_bucket,
Body = fileData,
Key = 'uservoice/%s' % filename,
StorageClass = 'STANDARD',
EnableMD5 = False
)
if not result['ETag']:
raise Exception('上傳失敗')
else:
return filenameurl

 

#oss對象統一接口函數code

def uploadVoice(fileData):
'''上傳語音到雲存儲
@arg: fileData - 編碼的MP3文件DATA
'''
return tx_upload_voice(fileData)orm

相關文章
相關標籤/搜索