|
@@ -25,7 +25,11 @@
|
|
|
分配lrc
|
|
|
</el-button>
|
|
|
|
|
|
- <el-button type="primary" size="small" @click="analyzeVoiceFile">根据语音和文本进行打点标记</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="small"
|
|
|
+ @click="analyzeVoiceFile"
|
|
|
+ >根据语音和文本进行打点标记</el-button>
|
|
|
|
|
|
<div class="voice-matrix-input">
|
|
|
<el-input
|
|
@@ -50,6 +54,15 @@
|
|
|
<el-checkbox v-model="curQue.voiceMatrix.firstLineHighlight">
|
|
|
首行高亮
|
|
|
</el-checkbox>
|
|
|
+ <el-checkbox v-model="curQue.voiceMatrix.lastColumnHighlight">
|
|
|
+ 末列高亮
|
|
|
+ </el-checkbox>
|
|
|
+ <el-checkbox v-model="curQue.voiceMatrix.rowSelection">
|
|
|
+ 按行选择
|
|
|
+ </el-checkbox>
|
|
|
+ <el-checkbox v-model="curQue.voiceMatrix.columnSelection">
|
|
|
+ 按列选择
|
|
|
+ </el-checkbox>
|
|
|
<el-checkbox v-model="curQue.voiceMatrix.isAudioNumber">
|
|
|
音频控制器序号
|
|
|
</el-checkbox>
|
|
@@ -66,7 +79,15 @@
|
|
|
:key="i"
|
|
|
class="row"
|
|
|
>
|
|
|
- <div class="row-number">第 {{ i + 1 }} 行</div>
|
|
|
+ <div class="row-number">
|
|
|
+ <span :style="{ 'margin-right': '12px' }">第 {{ i + 1 }} 行</span>
|
|
|
+ <el-checkbox
|
|
|
+ v-model="row[0].isTitle"
|
|
|
+ @click.native="setIsTitle(i, row[0].isTitle, $event)"
|
|
|
+ >
|
|
|
+ 设为标题
|
|
|
+ </el-checkbox>
|
|
|
+ </div>
|
|
|
<div v-for="(column, j) in row" :key="j" class="column">
|
|
|
<div class="column-condition">
|
|
|
<el-select v-model="column.type" size="small">
|
|
@@ -82,9 +103,9 @@
|
|
|
v-if="Object.keys(column.lrc_data).length > 0"
|
|
|
class="lrc"
|
|
|
>
|
|
|
- <el-input v-model="column.lrc_data.begin_time" />
|
|
|
+ <el-input v-model="column.lrc_data.begin_time" size="small" />
|
|
|
<span> ~ </span>
|
|
|
- <el-input v-model="column.lrc_data.end_time" />
|
|
|
+ <el-input v-model="column.lrc_data.end_time" size="small" />
|
|
|
{{ column.lrc_data.text }}
|
|
|
</span>
|
|
|
</div>
|
|
@@ -150,6 +171,9 @@ export default {
|
|
|
voiceMatrix: {
|
|
|
isAudioNumber: false,
|
|
|
audioSerialNumber: 1,
|
|
|
+ lastColumnHighlight: false,
|
|
|
+ rowSelection: false,
|
|
|
+ columnSelection: false,
|
|
|
firstLineHighlight: false,
|
|
|
matrix: []
|
|
|
},
|
|
@@ -179,6 +203,9 @@ export default {
|
|
|
isAudioNumber: false,
|
|
|
audioSerialNumber: 1,
|
|
|
firstLineHighlight: false,
|
|
|
+ lastColumnHighlight: false,
|
|
|
+ rowSelection: false,
|
|
|
+ columnSelection: false,
|
|
|
matrix: this.matrix()
|
|
|
};
|
|
|
this.isShowMatrix = true;
|
|
@@ -192,6 +219,7 @@ export default {
|
|
|
matrix[i][j] = {
|
|
|
type: "text",
|
|
|
text: "",
|
|
|
+ isTitle: false,
|
|
|
lrc_data: {},
|
|
|
sentence_data: {
|
|
|
type: "sentence_segword_chs",
|
|
@@ -208,6 +236,13 @@ export default {
|
|
|
return matrix;
|
|
|
},
|
|
|
|
|
|
+ setIsTitle(index, isTitle, e) {
|
|
|
+ if (e.target.className !== "el-checkbox__original") return;
|
|
|
+ this.curQue.voiceMatrix.matrix[index].forEach(item => {
|
|
|
+ item.isTitle = !isTitle;
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
analyzeVoiceFile() {
|
|
|
let mp3_list = this.curQue.mp3_list;
|
|
|
if (mp3_list.length === 0) {
|
|
@@ -220,32 +255,34 @@ export default {
|
|
|
row[i].lrc_data = {};
|
|
|
return;
|
|
|
}
|
|
|
- if (type === 'text') {
|
|
|
+ if (type === "text") {
|
|
|
text_list.push(text);
|
|
|
return;
|
|
|
}
|
|
|
- if (type === 'SentenceSegwordChs') {
|
|
|
+ if (type === "SentenceSegwordChs") {
|
|
|
text_list.push(sentence_data.sentence);
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
- let loading = this.$loading({ text: '正在分析,请等待' });
|
|
|
+ let loading = this.$loading({ text: "正在分析,请等待" });
|
|
|
getContentFile("tool-AnalyzeVoiceFile", {
|
|
|
file_id: mp3_list[0].file_id,
|
|
|
text_list
|
|
|
- }).then(({ lrc_list }) => {
|
|
|
- loading.close();
|
|
|
- this.curQue.lrc_arr = lrc_list;
|
|
|
- this.distribution();
|
|
|
- }).catch(() => {
|
|
|
- loading.close();
|
|
|
- });
|
|
|
+ })
|
|
|
+ .then(({ lrc_list }) => {
|
|
|
+ loading.close();
|
|
|
+ this.curQue.lrc_arr = lrc_list;
|
|
|
+ this.distribution();
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ loading.close();
|
|
|
+ });
|
|
|
},
|
|
|
|
|
|
parseLrcFile() {
|
|
|
let lrcList = this.curQue.lrc_list;
|
|
|
if (lrcList.length === 0) {
|
|
|
- return this.$message.warning('请先上传lrc文件');
|
|
|
+ return this.$message.warning("请先上传lrc文件");
|
|
|
}
|
|
|
getContentFile("tool-ParseLRCFile", {
|
|
|
content_type: "FILE",
|