Google Cloud Speech API 调用注意事项及调用方式

时间:2021-07-15 | 标签: | 作者:Q8 | 来源:FeiJrry网络

小提示:您能找到这篇{Google Cloud Speech API 调用注意事项及调用方式}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的Google Cloud Speech API 调用注意事项及调用方式内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

< ">引言

< font-size: 16px;">现阶段,语音自动识别功能已趋于完善,对与大部分用户来说,能说能听足矣!在说听的同时还能看,岂不美哉?对此,Google提供了语音转为文字的应用——Cloud Speech API。本文将从使用该API的前提条件,注意事项,在.net开发环境下实现从本地读取音频文件解析为文字,从Google Cloud Storage中读取音频文件解析文字,以及上传本地音频文件到Google Cloud Storage。



< font-size: 16px;">调用API前提条件

< font-size: 16px;">一.既然是用Google的API,在内地你首先保证能(fq)访问Google官网< font-size: 16px;">,具体操作此处就省略操作关于翻墙软件,代理服务的文字。

< font-size: 16px;">二.注册Google帐号,登录Google Cloud Platform,创建项目,在API管理器中添加项目凭据。< font-size: 16px;">凭据1为服务账号密匙,OAuth客户端ID。其具体操作见文档–Google Cloud Speech API调用注意事项,里面有详细操作步骤及步骤截图。因该API为付费产品,需在创建项目后对其付费,Google推出免费60天使用及300刀的赠金,对与初次研究者来说就是注册Google云平台的事罢了。

< font-size: 16px;">三.满足上面两条件,基本可以保证对一定规则的音频文件调用Cloud Speech API后转换成文字。< font-size: 16px;">对与音频文件的要求如下:

< font-size: 16px;">1.音频的编码格式:1声道,PCM;

< font-size: 16px;">2.采样频率:16000HZ;

< font-size: 16px;">3.读取本地的音频文件播放时长小于60s,读取云存储中的音频文件播放时长小于80min。

< font-size: 16px;">以上条件是最基本的,对于其它详细内容请访问该地址。

< font-size: 16px;">四.在VS2015中使用该接口,首先需要安装并引用如下DLL到项目中:

< font-size: 16px;">

< font-size: 16px;">获取以上DLL方式:

< font-size: 16px;">1.通过在项目引用中点击Nuget程序包中搜寻Dll名字进行下载安装,

< font-size: 16px;">

< font-size: 16px;">

< font-size: 16px;">2.通过Nuget的程序包管理器控制平台输入命令进行安装。

< font-size: 16px;">命令有Install-Package Google.Apis;Install-Package Google.Apis.Core;Install-Package Google.Apis.CloudSpeechAPI.v1beta1等。

< font-size: 16px;">如果安装或下载均不方便,可以从这里获取一系列DLL。完成以上步骤后,接下来就用代码展示该API的魅力吧。

< font-size: 16px;">读取本地音频文件转换为文字

< font-size: 16px;">注:如下Demo是windows应用程序,所有方法都为static

< font-size: 16px;">1.创建类型为CloudSpeechAPIService的方法,目的是通过环境变量获取Google的凭证,连接在云平台建立的项目。PS:如果此方法出现异常,请查看前提条件二。

< font-size: 16px;">

 static public CloudSpeechAPIService CreateAuthorizedClient()

        {

            GoogleCredential credential =GoogleCredential.GetApplicationDefaultAsync().Result;//读取环境变量中的GOOGLE_APPLICATION_CREDENTIALS


            if (credential.IsCreateScopedRequired)

            {

                credential = credential.CreateScoped(new[]

                {

                    CloudSpeechAPIService.Scope.CloudPlatform

                });//获取认证

            }

            return new CloudSpeechAPIService(new BaseClientService.Initializer()

            {

                HttpClientInitializer = credential,

                ApplicationName = "DotNet Google Cloud Platform Speech Sample",

            });

        }

< ">2.读取本地音频文件,调用Cloud Speech API进行文字转换。ps:音频文件格式最好为1声道PCM,播放长度小于60s,否则不易获取正确转换结果。< font-size: 16px;">


 static public void Main(string企业公关活动公司[] args)

        {

            var service = CreateAuthorizedClient();//获取云服务认证

            string audio_file_path = "本地文件路径";

          //配置参数

            var request = new Google.Apis.CloudSpeechAPI.v1beta1.Data.SyncRecognizeRequest()

            {

                Config = new Google.Apis.CloudSpeechAPI.v1beta1.Data.RecognitionConfig()

                {

                   Encoding = "LINEAR16",//编码格式

                   SampleRate = 16000,//采样频率

                   LanguageCode =  "en-US"//英文播放内容

               //LanguageCode = "cmn-Hans-CN"中文播放内容

                },

                Audio = new Google.Apis.CloudSpeechAPI.v1beta1.Data.RecognitionAudio()

                {

                    Content = Convert.ToBase64String(File.ReadAllBytes(audio_file_path))//读取文件转换为Base64字符串

                }

            };

            // 配置完成

            // 调用GloudSpeechAPI进行请求

            StringBuilder sb = new StringBuilder();



           Console.WriteLine("Starte Time :" + startTime);

            try

            {

                var asyncResponse = service.Speech.Asyncrecognize(request).Execute();

                var name = asyncResponse.Name;

                Google.Apis.CloudSpeechAPI.v1beta1.Data.Operation op;

                do

                {

                    Console.WriteLine("Waiting for server processing...");

                    Thread.Sleep(1000);

                    op = service.Operations.Get(name).Execute();

                    if (op.Error?.Message != null)



                    {

                       Console.WriteLine(op.Error.Message);

                    }

                } while (!(op.Done.HasValue && op.Done.Value));

                dynamic results = op.Response["results"];

    &nb华为成功的危机公关案例分sp;           foreach (var result in results)

                {

                    foreach (var alternative in result.alternatives)

                    {

                        sb.Append(alternative.transcript);//将转换结果放入StringBuilder中

                    }

                }

            }

            catch (Exception ex)

            {

                Console.WriteLine(ex.Message);

            }

            DateTime endTime = DateTime.Now;

            var timeTaken = endTime - startTime;

            sb.Append(" End Time:" + endTime + " " + "Time-taken:" + (timeTaken));

            Console.WriteLine( sb.ToString());

            Console.ReadKey();

            // 结束请求

        }

< ">通过如上方法,就可以获取到音频文件播放内容。< ">

Google Cloud Speech API 调用注意事项及调用方式

上一篇:Admob的收入是如何计算的?
下一篇:admob需要关联google play广告才能生效吗?


版权声明:以上主题为“Google Cloud Speech API 调用注意事项及调用方式"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
推荐内容
扫码咨询
    Google Cloud Speech API 调用注意事项及调用方式
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“Google Cloud Speech API 调用注意事项及调用方式”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通Google Cloud Speech API 调用注意事项及调用方式的相关事宜。

关键词:Google,Cloud,Speech,API,调用注

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:sales@1330.com.cn
电话:400-021-1330 | 客服QQ:865612759
沪ICP备12034177号 | 沪公网安备31010702002418号