วิธีพูดภาษาไทยขณะ Live แล้วมี AI แปลเป็นภาษาอื่นเป็นซับไตเติ้ลให้เลยอันโนมัติ

Streaming Media & Technics

หลังจากเขียนเรื่อง แปลแชทใน Twich เป็นภาษาต่างๆไปเมื่อครั้งก่อน

โปรแกรมแปลภาษาบนแชทใน Twitch และ อ่านออกเสียง (Text to Speech) เพิ่มความสะดวกสบายขณะ Live
ใครที่สตรีมเกมบนเว็บ Twitch เคยคิดกันไหม ว่าหากมีชาวต่างชาติมาดูช่องเรา เราจะรับมือยังไง แล้วเราจะทำให้เขาอยู่กับช่องเรา...

ครั้งนี้เราจะมาเขียนอีกอย่างนึง ซึ่งเป็นผลงานเดียวกัน จากคุณ Sayonari คนเดิม

เขาได้ทำสคริปจับเสียงพูดแล้วแปลเป็นภาษาอื่น โดยขึ้นเป็นซับไตเติ้ลให้บนจอ Live

เดิมที เขาทำมาเพื่อให้ภรรยาของเขาใช้คุยกับคนดูต่างชาติ

ซึ่งนั่นก็เป็นสิ่งที่น่าสนใจมากซึ่งมันจะทำให้เราสามารถเปิดกว้าง

ต้อนรับผู้ชมต่างชาติ ถึงแม้ว่าเราจะไม่เก่งภาษาก็ตาม

ตัวอย่าง การจับเสียง และการแปลภาษา

ด้วยการที่เขาใช้ระบบของ Google ทำให้การจับเสียงพูด และการแปล ออกมาค่อนข้างใช้ได้ แต่เสียงบางโทน ก็จับไม่ได้ แต่ก็ไม่ได้ขี้ริ้วขี้เหร่ อะไรเลย คิดว่ามันน่าจะทำให้ผู้ชมต่างภาษา รู้สึกเข้าใจในขณะดูได้มากขึ้นล่ะนะ

สิ่งที่จำเป็นจะต้องเตรียม

  1. สร้าง API สำหรับแปลเสียงของเรา
  2. Deploy API ออกมาเป็น URL ประจำตัวเรา
  3. นำ URL มาเปลี่ยนค่า

สร้าง API สำหรับแปลเสียง

เริ่มจากเราต้องไปที่ https://script.google.com ก่อนเลย (ล๊อคอินด้วย gmail ด้วยนะ)

จากนั้นกดที่ + New project ด้านซ้ายบนของหน้านี้ได้เลย

หน้าจะถูกเปลี่ยนไปหน้าเขียน Code ดังนี้

ให้เรานำ Code นี้ไปวางทับแทนทั้งหมดเลย

function doGet(e) {
  var p = e.parameter;
  var translatedText = LanguageApp.translate(p.text, p.source, p.target);
  return ContentService.createTextOutput(translatedText);
}

จะออกมาเป็นดังนี้

ให้กดที่ Publish ที่แถบด้านบน แล้วเลือก Deploy as web app…

จากนั้นตั้งชื่อ API ของเราเป็นอะไรก็ได้ที่เราจำได้ จากนั้นกด OK

จากนั้นก็จะขึ้นหน้าเลือก Deploy ให้เราแก้ส่วนของ Who has access to the app:

เป็น Anyone, even anonymous แล้วกด Deploy

เราจะได้ URL ตัวขึ้นมา ให้ Copy เก็บเอาไว้ก่อน แล้วกด OK ได้เลย

โดยตัว URL จะหน้าตาประมาณนี้

https://script.google.com/macros/s/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/exec

ให้เรา Copy ในส่วนกากบาทสีแดง แล้วนำมา Paste ในส่วนของลิ้งค์ด้านล่างนี้แทน

https://sayonari.coresv.com/ninshikiChan/text.html?recog=th&trans=en&bgcolor=green&size=20&weight=900&color=white&st_color=black&st_width=2&v_align=bottom&gas_key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

ในโค๊ดด้านบนนี้ ก็จะกลายเป็น Link สำหรับใช้พูดและแปลภาษาแล้ว

คำอธิบายลิ้งค์

recog=th  ดักจับเสียงภาษาไทย
trans=en  แปลซับไตเติ้ลเป็นภาษาอังกฤษ

bgcolor=green สีฉากหลังของหน้าแปลภาษา
size=20  ขนาดของตัวหนังสือ

color=white สีของซับไตเติ้ล
st_color=black สีของขอบซับไตเติ้ล
st_width=2 ความหนาของขอบซับไตเติ้ล

v_align=bottom ตำแหน่งของซับไตเติ้ลที่จะแสดง มีระหว่างด้านบนจอ top และด้านล่างจอ bottom

วิธีนำไปใช้ จะต้องเปิดลิ้งค์ของเราผ่าน Google Chrome เท่านั้น และอย่าลืมเช็คด้วยว่า เราเปิดให้ใช้ไมค์โครโฟนอยู่รึเปล่า โดยการกดที่เครื่องหมายแม่กุญแจ จากนั้นดูที่ Microphone ว่า Allow ไว้หรือไม่

เราจะเห็นคำว่า [ここに結果表示] อยู่ในจอ มันเป็นคำที่แปลว่า ตัวหนังสือจะแสดงตรงนี้ เท่านั้นเอง พอพูด คำนี้ก็หายไปแล้ว ให้ลองพูดดูว่าเสียงเราเข้ามา ตรงตามที่พูดหรือไม่

เราจำเป็นจะต้องเปิดหน้าเว็บนี้ไว้ขณะใช้งาน เนื่องจาก OBS หรือโปรแกรมสตรีมต่างๆ ที่มีหมด Browser นั้น ไม่ใช่ Browser ของ Google Chrome จึงไม่สามารถจับไมโครโฟนได้ จึงจำเป็นจะต้องเปิดหน้าแปลภาษาแยกเอาไว้บน Google Chrome ขณะใช้งาน
วิธีเรียกขึ้น OBS

ในส่วนของ Source กด + Add แล้วเลือกไปที่ Window Capture

ตั้งชื่อขึ้นมาจากนั้นกด OK

เลือก Window ไปที่ [chrome.exe]: ninshikiChan – Google Chrome แล้วกด OK

เมื่อภาพขึ้นมาบน OBS แล้วเราจะเห็นว่ามันเอามาหมดทั้ง Google Chrome แถบด้านบนเราไม่ต้องการ ฉะนั้นต้อง Crop ทิ้งซะ โดยให้คลิกขวาบนจอ แล้วเลือกไปที่ Filter

จากนั้นกด Add + เลือก Add > Crop/Pad

ตั้งให้ Crop ส่วนบน คือ Top ไปซัก 500 ก็จะเห็นในหน้าตัวอย่างว่า มันหายไปเกินครึ่งนึงแล้ว จากนั้นกด OK

ให้ Add อีกครั้ง รอบนี้เป็น Add > Color Key

แล้วปรับ Key Color Type เป็น Green ส่วน Similarity และ Smoothness ให้ตั้งเป็น 530 ทั้งคู่

เท่านี้ฉากหลังสีเขียวก็จะหายไปแล้วเหลือแต่ตัวหนังสือแล้ว ก็กด OK ออกมาได้เลย

จากนั้นก็กดวางตำแหน่งที่อยากวางจุดแปลภาษาบนหน้าจอ ก็เป็นอันเสร็จเรียบร้อยแล้ว

สรุป

ส่วนตัวคิดว่ามันเป็นสคริปแปลภาษาที่ดีมากๆเลย มีไว้เวลาชาวต่างชาติมาดู Channel ของเรา เขาจะได้เข้าใจว่าเราพูดอะไร อาจจะได้ผู้ติดตามใหม่ๆ ที่ไม่ใช่คนไทยก็เป็นได้นะ?

ต้องลองจัดวางบนหน้าจอดีๆหน่อยนะ มันอาจจะทำให้เกะกะก็ได้ อันนี้ขึ้นอยู่กับการจัดวางหน้าจอแล้วล่ะครับ ว่าจะวางยังไงให้ดูดี

ลองใช้กันดูนะครับ 🙂


src : http://www.sayonari.com/trans_asr/

Comments

Copied title and URL