Compare commits
	
		
			No commits in common. '2376d43b67cb965e493a3fe62854e7b81ee9538e' and '8f20b63593a514ee65d8020396c734e19ed5c3c4' have entirely different histories. 
		
	
	
		
			2376d43b67
			...
			8f20b63593
		
	
		
	| @ -1,103 +0,0 @@ | |||||||
| package com.pjilisense.flxai.utils; |  | ||||||
| 
 |  | ||||||
| import com.alibaba.fastjson.JSON; |  | ||||||
| import com.alibaba.fastjson.TypeReference; |  | ||||||
| import org.springframework.beans.factory.annotation.Value; |  | ||||||
| import org.springframework.stereotype.Repository; |  | ||||||
| 
 |  | ||||||
| import javax.crypto.Mac; |  | ||||||
| import javax.crypto.spec.SecretKeySpec; |  | ||||||
| import java.security.InvalidKeyException; |  | ||||||
| import java.security.NoSuchAlgorithmException; |  | ||||||
| import java.util.ArrayList; |  | ||||||
| import java.util.LinkedHashMap; |  | ||||||
| import java.util.Map; |  | ||||||
| 
 |  | ||||||
| @Repository |  | ||||||
| public class TtsUtils { |  | ||||||
| 
 |  | ||||||
|     @Value("${tts.url.server}") |  | ||||||
|     private String serverUrl;//http://192.168.200.152:8080/v1/tts
 |  | ||||||
| 
 |  | ||||||
|     @Value("${tts.url.path}") |  | ||||||
|     private String path; |  | ||||||
|     public boolean sendText(String text,String voiceId,String destFile) { |  | ||||||
|         try { |  | ||||||
|             long ts = System.currentTimeMillis() / 1000; |  | ||||||
|             long start = System.currentTimeMillis(); |  | ||||||
|             boolean result = OkHttpUtils.builder() |  | ||||||
|                     .url(serverUrl+path) |  | ||||||
|                     .addParam(genBodyJson(text,voiceId)) |  | ||||||
|                     .addHeader("timestamp", String.valueOf(ts)) |  | ||||||
|                     .addHeader("Content-Type", " application/json;charset=utf-8") |  | ||||||
|                     .post(true).syncwav(destFile); |  | ||||||
|             System.out.println("result="+result); |  | ||||||
|             long end = System.currentTimeMillis(); |  | ||||||
|             return result; |  | ||||||
|         }catch(Exception e){ |  | ||||||
|             return false; |  | ||||||
|         } |  | ||||||
|     } |  | ||||||
|     public String genBodyJson(String text,String voiceId) { |  | ||||||
|         LinkedHashMap<String, Object> postParam = new LinkedHashMap<>(); |  | ||||||
|         postParam.put("text", text); |  | ||||||
|         postParam.put("chunk_length", 200); |  | ||||||
|         postParam.put("format", "wav"); |  | ||||||
|         postParam.put("references", new ArrayList<Object>()); |  | ||||||
|         postParam.put("reference_id", voiceId); |  | ||||||
|         postParam.put("seed", null); |  | ||||||
|         postParam.put("use_memory_cache", "never"); |  | ||||||
|         postParam.put("normalize", true); |  | ||||||
|         postParam.put("opus_bitrate", -1000); |  | ||||||
|         postParam.put("latency", "normal"); |  | ||||||
|         postParam.put("streaming", false); |  | ||||||
|         postParam.put("max_new_tokens", 1024); |  | ||||||
|         postParam.put("top_p",  0.7); |  | ||||||
|         postParam.put("repetition_penalty", 1.2); |  | ||||||
|         postParam.put("temperature", 0.7); |  | ||||||
|         String json = JSON.toJSONString(postParam); |  | ||||||
| //        parser.add_argument(
 |  | ||||||
| //                "--reference_audio",
 |  | ||||||
| //                "-ra",
 |  | ||||||
| //                type=str,
 |  | ||||||
| //                nargs="+",
 |  | ||||||
| //        default=None,
 |  | ||||||
| //                help="Path to the audio file",
 |  | ||||||
| //    )
 |  | ||||||
| //        parser.add_argument(
 |  | ||||||
| //                "--reference_text",
 |  | ||||||
| //                "-rt",
 |  | ||||||
| //                type=str,
 |  | ||||||
| //                nargs="+",
 |  | ||||||
| //        default=None,
 |  | ||||||
| //                help="Reference text for voice synthesis",
 |  | ||||||
| //    )
 |  | ||||||
| //        parser.add_argument(
 |  | ||||||
| //                "--output",
 |  | ||||||
| //                "-o",
 |  | ||||||
| //                type=str,
 |  | ||||||
| //        default="generated_audio",
 |  | ||||||
| //                help="Output audio file name",
 |  | ||||||
| //    )
 |  | ||||||
|         return json; |  | ||||||
|     } |  | ||||||
|     public String hmacSHA256(String appKey, String data) { |  | ||||||
|         try { |  | ||||||
|             // Create HMAC-SHA256 key from the given secret
 |  | ||||||
|             SecretKeySpec secretKeySpec = new SecretKeySpec(appKey.getBytes(), "HmacSHA256"); |  | ||||||
|             // Get an instance of Mac object implementing HMAC-SHA256
 |  | ||||||
|             Mac mac = Mac.getInstance("HmacSHA256"); |  | ||||||
|             mac.init(secretKeySpec); |  | ||||||
|             // Calculate the HMAC value
 |  | ||||||
|             byte[] hmacBytes = mac.doFinal(data.getBytes()); |  | ||||||
|             // Convert result into a hexadecimal string
 |  | ||||||
|             StringBuilder sb = new StringBuilder(hmacBytes.length * 2); |  | ||||||
|             for (byte b : hmacBytes) { |  | ||||||
|                 sb.append(String.format("%02x", b)); |  | ||||||
|             } |  | ||||||
|             return sb.toString(); |  | ||||||
|         } catch (NoSuchAlgorithmException | InvalidKeyException e) { |  | ||||||
|             throw new RuntimeException("Failed to calculate HMAC-SHA256", e); |  | ||||||
|         } |  | ||||||
|     } |  | ||||||
| } |  | ||||||
					Loading…
					
					
				
		Reference in New Issue