1234567891011121314151617181920212223242526 |
- # -*- coding: utf-8 -*-
- from __future__ import division
- from ..__load__ import *
- from base import Base
- class Tencent(Base):
- def __init__(self):
- super(self.__class__, self).__init__()
- self.sdk = Demeter.service('tencent', 'sdk')
- def setting(self, appid, secret_id, secret_key, region, **args):
- self.engine = self.sdk.init(secret_id, secret_key)
- self.region = region
- def transcribe(self, fp):
- mp3_path = utils.convert_wav_to_mp3(fp)
- r = self.engine.ASR(mp3_path, 'mp3', '1', self.region)
- utils.check_and_delete(mp3_path)
- res = json.loads(r)
- if 'Response' in res and 'Result' in res['Response']:
- logger.info('{} 语音识别到了:{}'.format(self.SLUG, res['Response']['Result']))
- return res['Response']['Result']
- else:
- logger.critical('{} 语音识别出错了'.format(self.SLUG), exc_info=True)
- return ''
|