@zwa73/utils 1.0.185 → 1.0.187

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/UtilCom.js CHANGED
@@ -102,12 +102,12 @@ var UtilCom;
102
102
  if (result == undefined)
103
103
  return undefined;
104
104
  const { data, ...rest } = result;
105
- if (data == "") {
105
+ if (data.trim() == "") {
106
106
  UtilLogger_1.SLogger.warn(`${jsonReq.name} 接收反馈错误: 原始字符串为空`);
107
107
  return undefined;
108
108
  }
109
109
  try {
110
- const obj = JSON.parse(data);
110
+ const obj = JSON.parse(data.trim());
111
111
  UtilLogger_1.SLogger.http(`${jsonReq.name} 接受信息:`, UtilFunctions_1.UtilFunc.stringifyJToken(obj, { compress: true, space: 2 }));
112
112
  return { ...rest, data: obj };
113
113
  }
@@ -23,6 +23,11 @@ declare class SFfmpegTool {
23
23
  * @param quality - 质量
24
24
  */
25
25
  static flac2ogg(inputFlacFile: string, outputOggPath: string, quality?: number): Promise<boolean>;
26
+ /**flac转wav
27
+ * @param inputFlacFile - 输入flac文件路径
28
+ * @param outputWavPath - 输出wav文件路径
29
+ */
30
+ static flac2wav(inputFlacFile: string, outputWavPath: string): Promise<boolean>;
26
31
  /**wav转ogg
27
32
  * @param inputWavPath - 输入wav文件路径
28
33
  * @param outputOggPath - 输出ogg文件路径
@@ -70,11 +70,27 @@ class SFfmpegTool {
70
70
  * @param quality - 质量
71
71
  */
72
72
  static async flac2ogg(inputFlacFile, outputOggPath, quality = 10) {
73
- let wavPath = pathe_1.default.join(pathe_1.default.dirname(inputFlacFile), `tmp_${pathe_1.default.basename(inputFlacFile, ".flac")}.wav`);
73
+ const wavPath = pathe_1.default.join(pathe_1.default.dirname(inputFlacFile), `tmp_${pathe_1.default.basename(inputFlacFile, ".flac")}.wav`);
74
+ await SFfmpegTool.flac2wav(inputFlacFile, wavPath);
75
+ await SFfmpegTool.wav2ogg(wavPath, outputOggPath, quality);
76
+ await new Promise((resolve, reject) => {
77
+ fs.unlink(wavPath, function (err) {
78
+ if (err)
79
+ UtilLogger_1.SLogger.error("SFfmpegTool.flac2ogg unlink 错误", err);
80
+ resolve(null);
81
+ });
82
+ });
83
+ return true;
84
+ }
85
+ /**flac转wav
86
+ * @param inputFlacFile - 输入flac文件路径
87
+ * @param outputWavPath - 输出wav文件路径
88
+ */
89
+ static async flac2wav(inputFlacFile, outputWavPath) {
74
90
  await new Promise((resolve, reject) => {
75
91
  const ins = (0, fluent_ffmpeg_1.default)(inputFlacFile)
76
92
  .audioCodec("pcm_s16le")
77
- .save(wavPath)
93
+ .save(outputWavPath)
78
94
  .on("end", () => {
79
95
  resolve(true);
80
96
  ins.kill('SIGTERM');
@@ -84,14 +100,6 @@ class SFfmpegTool {
84
100
  ins.kill('SIGTERM');
85
101
  });
86
102
  });
87
- await SFfmpegTool.wav2ogg(wavPath, outputOggPath, quality);
88
- await new Promise((resolve, reject) => {
89
- fs.unlink(wavPath, function (err) {
90
- if (err)
91
- UtilLogger_1.SLogger.error("SFfmpegTool.flac2ogg unlink 错误", err);
92
- resolve(null);
93
- });
94
- });
95
103
  return true;
96
104
  }
97
105
  /**wav转ogg
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zwa73/utils",
3
- "version": "1.0.185",
3
+ "version": "1.0.187",
4
4
  "description": "my utils",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/src/UtilCom.ts CHANGED
@@ -162,13 +162,13 @@ async function jsonReq<T extends ComReqOpt>(
162
162
  if(result==undefined) return undefined;
163
163
  const {data,...rest} = result;
164
164
 
165
- if(data==""){
165
+ if(data.trim()==""){
166
166
  SLogger.warn(`${jsonReq.name} 接收反馈错误: 原始字符串为空`);
167
167
  return undefined;
168
168
  }
169
169
 
170
170
  try{
171
- const obj = JSON.parse(data) as JObject;
171
+ const obj = JSON.parse(data.trim()) as JObject;
172
172
  SLogger.http(`${jsonReq.name} 接受信息:`,UtilFunc.stringifyJToken(obj,{compress:true,space:2}));
173
173
  return{...rest,data:obj};
174
174
  }
@@ -53,14 +53,33 @@ class SFfmpegTool {
53
53
  outputOggPath: string,
54
54
  quality: number = 10
55
55
  ): Promise<boolean> {
56
- let wavPath = path.join(
56
+ const wavPath = path.join(
57
57
  path.dirname(inputFlacFile),
58
58
  `tmp_${path.basename(inputFlacFile, ".flac")}.wav`
59
59
  );
60
+ await SFfmpegTool.flac2wav(inputFlacFile, wavPath);
61
+ await SFfmpegTool.wav2ogg(wavPath, outputOggPath, quality);
62
+ await new Promise((resolve, reject) => {
63
+ fs.unlink(wavPath, function (err) {
64
+ if (err) SLogger.error("SFfmpegTool.flac2ogg unlink 错误",err);
65
+ resolve(null);
66
+ });
67
+ });
68
+ return true;
69
+ }
70
+
71
+ /**flac转wav
72
+ * @param inputFlacFile - 输入flac文件路径
73
+ * @param outputWavPath - 输出wav文件路径
74
+ */
75
+ static async flac2wav(
76
+ inputFlacFile: string,
77
+ outputWavPath: string
78
+ ): Promise<boolean> {
60
79
  await new Promise((resolve, reject) => {
61
80
  const ins = fluentFfmpeg(inputFlacFile)
62
81
  .audioCodec("pcm_s16le")
63
- .save(wavPath)
82
+ .save(outputWavPath)
64
83
  .on("end", () => {
65
84
  resolve(true);
66
85
  ins.kill('SIGTERM');
@@ -70,15 +89,10 @@ class SFfmpegTool {
70
89
  ins.kill('SIGTERM');
71
90
  });
72
91
  });
73
- await SFfmpegTool.wav2ogg(wavPath, outputOggPath, quality);
74
- await new Promise((resolve, reject) => {
75
- fs.unlink(wavPath, function (err) {
76
- if (err) SLogger.error("SFfmpegTool.flac2ogg unlink 错误",err);
77
- resolve(null);
78
- });
79
- });
80
92
  return true;
81
93
  }
94
+
95
+
82
96
  /**wav转ogg
83
97
  * @param inputWavPath - 输入wav文件路径
84
98
  * @param outputOggPath - 输出ogg文件路径