cloudyr / aws.polly

Client for AWS Polly
https://cloud.r-project.org/package=aws.polly
23 stars 6 forks source link

Spanish compatibility #10

Closed sebacea closed 4 years ago

sebacea commented 4 years ago

Please specify whether your issue is about:

It is possible to include Spanish voices of Polly?

Thanks in advance!

sebacea commented 4 years ago

It seems that is already implemented by language=NULL option in list_voices function according to Issue #5

Nevertheless I got

> list_voices(language = NULL)
list()
Warning messages:
1: In pollyHTTP(action = "voices", verb = "GET", query = query, ...) :
  Forbidden (HTTP 403).
2: In structure(out[["Voices"]], NextToken = out[["NextToken"]]) :
  Calling 'structure(NULL, *)' is deprecated, as NULL cannot have attributes.
  Consider 'structure(list(), *)' instead.

The information of my session

> sessionInfo()
R version 4.0.2 (2020-06-22)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.6

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib

Random number generation:
 RNG:     Mersenne-Twister 
 Normal:  Inversion 
 Sample:  Rounding 

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] aws.polly_0.1.5 tuneR_1.3.3    

loaded via a namespace (and not attached):
 [1] packrat_0.5.0       digest_0.6.25       aws.signature_0.6.0 MASS_7.3-51.6      
 [5] R6_2.4.1            jsonlite_1.7.0      signal_0.7-6        evaluate_0.14      
 [9] httr_1.4.2          rlang_0.4.7         curl_4.3            rmarkdown_2.3      
[13] tools_4.0.2         xfun_0.15           yaml_2.2.1          compiler_4.0.2     
[17] base64enc_0.1-3     htmltools_0.5.0     knitr_1.29         
sebacea commented 4 years ago

Commit https://github.com/cloudyr/aws.polly/commit/7542d60fe84216b8a91f97fa312d03313888f1bb effectively adds Spanish capability.

antoine-sachet commented 4 years ago

This is correct, list_voices(language = NULL) will list all available voices.

However, I would not say it "adds Spanish capability", as the more direct way to list Spanish voices is to use language = "es-ES" (Castilian Spanish) or "es-US" (US Spanish ) or "es-MX" (Mexican Spanish).

For example:

aws.polly::list_voices(language = "es-ES")
#>   AdditionalLanguageCodes Gender       Id LanguageCode      LanguageName
#> 1                      NA Female    Lucia        es-ES Castilian Spanish
#> 2                      NA   Male  Enrique        es-ES Castilian Spanish
#> 3                      NA Female Conchita        es-ES Castilian Spanish
#>       Name SupportedEngines
#> 1    Lucia         standard
#> 2  Enrique         standard
#> 3 Conchita         standard

Created on 2020-08-14 by the reprex package (v0.3.0)

FYI the error you get (HTTP 403 - Forbidden) is a permission issue: make sure the AWS account or role you use has permission to list voices.