亞馬遜云科技 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)
作者:小藍
鏈接:http://www.huanchou.cn/content/4751.html
本站部分內容和圖片來源網絡,不代表本站觀點,如有侵權,可聯系我方刪除。