一种字幕文件编辑方法及加载应用的字幕编辑器
申请人信息
- 申请人:杭州菲助科技有限公司
- 申请人地址:310000 浙江省杭州市滨江区西兴街道江陵路567号2幢907室
- 发明人: 杭州菲助科技有限公司
专利详细信息
| 项目 | 内容 |
|---|---|
| 专利名称 | 一种字幕文件编辑方法及加载应用的字幕编辑器 |
| 专利类型 | 发明授权 |
| 申请号 | CN202410026320.8 |
| 申请日 | 2024/1/9 |
| 公告号 | CN117544826B |
| 公开日 | 2024/3/29 |
| IPC主分类号 | H04N21/488 |
| 权利人 | 杭州菲助科技有限公司 |
| 发明人 | 庞猛; 谭美红 |
| 地址 | 浙江省杭州市滨江区西兴街道江陵路567号2幢907室 |
摘要文本
本发明提供一种字幕文件编辑方法及加载应用的字幕编辑器,获取字幕文件,定义Go结构体对象数据结构,调用os.open打开srt格式的字幕文件,调用bufio.NewScanner以及scanner.Scan逐行循环遍历字幕文件的内容,其中在循环遍历字幕文件的内容的过程中将内容中识别到的序号、时间戳和文字加入到块切片内,每当出现空内容时则将块切片加入到二维切片中,循环遍历二维切片根据序号、时间戳和文本按照对应的格式存储在Go结构体对象数据结构中得到Go结构体对象,其中Go结构体对象内包括多个按照序号排列的结构单体,基于前端页面获取的编辑要求调用后端的Go结构体对象进行编辑操作,并将编辑操作后的Go结构体对象依旧以json数据显示在前端页面,提高字幕编辑的质量和效率。
专利主权项内容
1. 一种字幕文件编辑方法,其特征在于,包括:获取上传的srt格式或vtt格式的字幕文件,将vtt格式的字幕文件转换为srt格式;定义Go结构体对象数据结构;调用os.open打开srt格式的字幕文件,调用bufio.NewScanner以及scanner.Scan逐行循环遍历字幕文件的内容,其中在循环遍历字幕文件的内容的过程中将内容中识别到的序号、时间戳和文本加入到块切片内,每当出现空内容时则将块切片加入到二维切片中;循环遍历二维切片根据序号、时间戳和文本按照对应的格式存储在Go结构体对象数据结构中得到Go结构体对象,其中Go结构体对象内包括多个按照序号排列的结构单体,每一结构单体含有序号、时间戳和文本,其中在调用Go内置的bufio.NewScanner方法按行读取字幕文件中的内容的过程中,若字幕文件的行内容中含有特殊字符或者乱码的话则将乱码和特殊字符替换为空字节,序号、时间戳和文本定义各自的下标存储在块切片中,在遍历二维切片的过程中,若块切片中的数据下标识别到序号,则使用strconv.Atoi将序号转成int;若块切片中的数据下标识别到时间戳,则使用strings.Split(t, " ")分隔,得到start和end的字符串;若块切片的数据下标识别到文本,则将文本存储在Go结构体对象的Subtitle结构体,且每一次遍历二维切片时将Go结构体对象的Subtitle结构体追加到SubtitleSlice.Content 中得到Go结构体对象;将Go结构体对象转换为json数据显示在前端页面,基于前端页面获取的编辑要求调用后端的Go结构体对象进行编辑操作,并将编辑操作后的Go结构体对象依旧以json数据显示在前端页面。