亚马逊云科技 re:Invent 2020:疫情下的线上会议与技术创新
过去,给英文视频配上字幕实在是一项既繁琐又耗时的苦差事。翻译人员得花费数小时聆听英文原文,还得借助工具调整时间轴,这不仅成本高昂,而且很难做到迅速发布。不过,现在有一种服务,它有望彻底改变这一现状。
传统字幕添加的痛点
给一个小时的英文视频添加字幕,工作量相当庞大。翻译人员需要长时间专注地聆听英文内容,这个过程有时甚至能持续数小时。此外,还需借助专业工具来制作时间轴,这不仅对翻译人员的专业技能提出了高要求,而且成本也不菲。因此,想要迅速发布带有字幕的视频变得格外困难。许多小型制作团队,受限于资金和人力,常常因此推迟视频的发布。
无服务器架构的优势
这种架构无需购置服务器,显著降低了成本。这对于许多预算有限的内容制作者或小型工作室而言,无疑是个好消息。此外,它还能在多种场合下轻松使用,无需烦恼于服务器管理的繁琐事务。这样一来,技术门槛得以降低,使得更多人能够参与到视频字幕转换应用的建设中来。
ASR服务的特点
这项功能让开发人员能够轻松地为应用加入语音转文本的能力。它兼容多种语言,包括英语和普通话。在北京及宁夏两地,这项服务已经投入使用。这表明在这些地方,人们能更有效地利用这一服务优势。例如,在制作涉及国际交流的北京视频或宁夏地区的教育视频时,都能方便地运用这一工具。
这个服务能快速而精确地将语音转换成文字,为视频字幕的制作打下基础。尽管许多翻译软件能够处理文本翻译,但在语音转化的准确性和便捷性上,却远不及这个服务。
操作流程中的关键环节
新建文件夹来存放待处理视频是件很重要的事。直接将视频放入桶中可能会引发函数循环调用的麻烦。此外,创建IAM角色并赋予函数相应的权限同样是不能忽略的步骤,这直接影响到函数能否与相关服务顺畅沟通。在选取执行角色时,必须严格按照流程操作,否则可能会导致函数创建不成功。
操作时稍有不慎,便可能导致字幕生成流程受阻,因此每个步骤都应格外小心。许多技术初学者在此过程中常犯错误,这主要是因为他们对各环节的原理理解不够深入。
函数设置与触发条件
选择2.7作为开发环境,并为它分配相应的角色,这需要根据具体情况进行恰当的配置。监控特定类型的文件触发条件,其方式颇具特色。每当有符合标准的视频被添加,便会自动触发相关函数,从而实现了监控和操作的自动化。函数的默认内容大小无需调整,这样的设计使得用户操作更为便捷,也减少了调整的繁琐步骤。
若缺乏相应的函数配置与触发条件,自动字幕提取及转换将变得十分困难。这种设计大大减少了人工操作所需的时间,相较于传统的人工手动操作,优势显著。
字幕转换与输出
now=int(time.time())
job_name = "conv-"+str(now)
将特定文件转换成srt字幕格式是函数操作中的一个重要环节。上传srt文件到S3时,输出路径的设定必须遵循一定的规范。操作过程中,每一步都得严格按照规则执行,以确保在指定位置找到准确的字幕文件。这一系列步骤紧密相连,只有这样才能确保从视频到带字幕视频的转换工作得以顺利完成。
同学们,你们尝试过自己加字幕吗?对这种无服务器架构的解决方案有何感受?期待你们点赞并分享这篇文章,同时欢迎在评论区留下你们的观点。
transcribe = boto3.client('transcribe')
transcribe.start_transcription_job(
TranscriptionJobName=job_name,
Media={'MediaFileUri': job_uri},
MediaFormat='mp4',
LanguageCode='en-US'
)
while True:
status = transcribe.get_transcription_job(TranscriptionJobName=job_name)
if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']:
break
print("Transcribe is processing...")
time.sleep(5)
作者:小蓝
链接:https://www.lanmiyun.com/content/4751.html
本站部分内容和图片来源网络,不代表本站观点,如有侵权,可联系我方删除。