Netflix อาจจะเป็นบริการสตรีมมิ่งที่มีภาพลักษณ์ที่โดดเด่นในเรื่องของการทำระบบให้มีการแนะนำหนังและซีรีส์ใหม่ๆ ให้เหมาะกับผู้ใช้งานแต่ละคน แต่นั่นไม่ใช่แค่อย่างเดียวเท่านั้นที่ทำให้ Netflix โดดเด่นแตกต่างจากคู่แข่งในตลาดการดูหนังออนไลน์ วันนี้ผมได้ร่วมเข้าฟังคุณ Todd Yellin รองประธานฝ่ายผลิตภัณฑ์ของ Netflix และนำมาเล่าให้ฟังกันครับว่า Netflix มีกระบวนท่าอะไรบ้างที่ทำให้ผุ้ใช้มีประสบการณ์การใช้งานที่ดีขึ้นเรื่อยๆ โดยเฉพาะกับแอปพลิเคชันในมือถือ

การออกแบบหน้าตาของแอป

ปัญหาที่ Netflix (และเชื่อว่าหลายๆ ผู้พัฒนาแอปด้วยกัน) พบก็คือการแสดงผลบนหน้าจอมือถือนั้นมีพื้นที่ค่อนข้างจำกัดมาก และมีทั้งการใช้งานในแนวตั้งและแนวนอน Netflix ได้ตัดสินใจเลือกใช้การแสดงผลในแนวตั้งสำหรับการค้นหาข้อมูล เฉกเช่นเดียวกับแอปส่วนใหญ่ และไม่มีการแสดงผลแนวนอน (นอกจากตอนสตรีม) เพื่อที่ะจะคุมให้ได้ UX ที่ดี เพราะการแสดงผลหน้าค้นหาแนวนอนจะทำให้การแสดงผลและการใช้งานนั้นลำบากขึ้นกว่าเดิม

เมื่อการแสดงผลระหว่างค้นหน้าคอนเทนต์ดุเป็นแนวตั้ง สิ่งที่ตามมาก็คือการนำเสนอภาพปกของซีรีส์และวิดีโอพรีวิวที่ต้องทำให้เป็นแนวตั้งไปด้วย ปัญหาที่ Netflix พบก้คือ การทำวิดีโอพรีวิวบนแอปมือถือควรจะนานเท่าไรดี จากการทดสอบเก็บข้อมูลผู้ใช้งานทำให้ Netflix พบว่าเลขมหัศจรรย์ที่พอเหมาะพอดีสำหรับเวลาของวิดีโอคือประมาณ 30 วินาที หากมากกว่านี้คนจะเริ่มไม่ดูกันแล้ว

Netflix เล่าให้ฟังว่าก่อนหน้านี้เคยทดสอบเอากลุ่มหนังหรือซีรีส์ที่กำลังจะเข้าฉายเร็วๆ นี้ (Coming soon) มาแทรกไว้ระหว่างการไถหาซีรีส์ดู แล้วพบว่าไม่เวิร์ค เพราะผู้ใช้จำนวนมากคาดหวังว่าระหว่างไถจะเจอเรื่องที่น่าสนใจและพร้อมดู พอพบว่าเป็นเรื่องที่ยังไม่มาก็ทำให้กลายเป็นประสบการณ์การใช้งานที่ไม่ดี ต่อมา Netflix จึงแยกกลุ่มออกมาเป็นอีกแท็บหนึ่งเหมือนที่เป็นในปัจจุบันี้ สำหรับใครที่สนใจก็ค่อยเปิดดู

Smart Download ระบบโหลดที่รู้ใจผู้ใช้

เชื่อว่าถ้าใครเปิด Netflix กันบ่อยน่าจะเห็นฟีเจอร์นี้มาสักพักแล้วครับสำหรับเจ้า Smart Download ที่ Netflix เปิดตัวมาสักพักหนึ่งแล้ว ซึ่งฟีเจอร์นี้ก็ได้กระแสตอบรับที่ดีมากจากความสามารถของมัน

Netflix เล่าว่าฟีเจอร์นี้เกิดจากการสำรวจตลาดแล้วพบว่ามีผู้ใช้จำนวนมากที่ใช้ระบบการดาวน์โหลด โดยเฉพาะในแถบอินเดียที่สัญญาณอินเทอร์เน็ตมือถือไม่เสถียรนัก ทำให้คนจำนวนมากเลือกที่จะโหลดทิ้งไว้แล้วค่อยดูกัน เลยกลายเป็นแนวคิดที่ว่าเวลาที่เราดูตอนๆ หนึ่งจบไปก็ให้แอปเตรียมดาวน์โหลดตอนต่อไปรอเลย และไหนๆ ก็ดูตอนเก่าจบแล้ว ก็ให้ระบบลบตอนนั้นทิ้งเลยจะได้ไม่เปลืองพื้นที่เครื่อง จนกลายมาเป็นฟีเจอร์ Smart Download ตัวนี้นั่นเอง (ตอนนีใช้งานได้เฉพาะแอปในแอนดรอยด์เท่านั้น)

ปริมาณเน็ตเท่าเดิม เพิ่มเติมคือเวลาที่ดูนานขึ้น

Netflix ได้ลงทุนกับการวิจัยการบีบอัดวิดีโอให้ได้ประสิทธิภาพที่สูงขึ้น เพื่อที่จะได้วิดีโอที่มีขนาดไฟล์เล็กลง ในขณะที่คงคุณภาพอยู่ในเกณฑ์ที่ไม่กระทบต่ออรรถรสในการรับชม โดยได้เล่าประวัติศาสตร์อันยาวนานในการจัดการเรื่องของอัตราการส่งข้อมูล (Bandwidth) มีลำดับดังนี้

ช่วงปี 2011 จะเป็นการเข้ารหัสวิดีโอแบบทั่วไปคือจับทุกเรื่องทุกตอนมาคุม bit-rate เท่ากันอยู่ที่ 1000 kbps

ช่วงปี 2015 เริ่มปรับให้แต่ละเรื่องแต่ละหมวดนั้นมีการเข้ารหัสที่แตกต่างกันไป เช่น อนิเมชัน 2D จะคุม bit-rate ได้ต่ำหน่อย ส่วนถ้าเป็นหนังคนแสดงโดยเฉพาะหนังแอคชันก็จะปรับให้ bit-rate สูงขึ้นมาหน่อยภาพจะได้ไม่วุ้นนัก

ล่าสุดในปี 2018 ได้มีการปรับใหม่ไปเป็น Per-shot encoding หรือการเข้ารหัสเป็นซีนๆ ไป เช่น ฉากที่มีแสงสว่าง สภาพแสงดีก็จะปรับลด bit-rate ได้เยอะ แต่ถ้าเป็นฉากแสงมืดเช่นตามผับ ก็จะคง bit-rate ไว้สูงเพื่อคุณภาพที่ยังดีอยู่ โดยการทำงานรวมๆ ส่วนนี้ Netflix เรียกว Dynamic Optimizer Encoding

จากการปรับปรุงการเข้ารหัสวิดีโอของ Netflix ทำให้จากเดิมก่อนปี 2015 ที่ปริมาณข้อมูล 4 GB จะดูซีรีส์ได้ราว 7 ชั่วโมง เพิ่มขึ้นมาเป็นราว 10 ชั่วโมง และในปัจจุบันที่ได้ใช้การเข้ารหัสใหม่ล่าสุด สามารภเพิ่มเวลาขึ้นไปสูงถึง 26 ชั่วโมงเลยทีเดียวครับ และล่าสุดก็เตรียมที่จะปรับไปใช้การเข้ารหัส AV1 ที่บริษัทไอทีหลายเจ้าร่วมกันพัฒนา ซึ่งจะทำให้ปริมาณข้อมูล 4 GB นั้นรับชม Netflix ได้ยาวนานถึง 33 ชั่วโมงเลยทีเดียวครับ

 

วัดคุณภาพของวิดีโอย่างไร ในเมื่อความพอใจเราไม่ตรงกัน

จากการปรับการเข้ารหัสวิดีโอ มีการปรับลด bit-rate ก็อาจจะทำให้หลายสงสัยว่าจะคงคุณภาพไว้ได้ยังไง และใช้เกณฑ์อะไรมาตัดสินว่าคุณภาพยังดีอยู่

Netflix เลือกใช้การผสมระหว่างการให้คนมานั่งดูคุณภาพของภาพ ประกอบกับอ้างอิงหลักการรับรู้ภาพของมนุษย์ นำมาพัฒนา Machine Learning เพื่อช่วยในการคัดกรองคุณภาพาของภาพจากวิดีโอว่ามีคุณภาพพอหรือไม่ โดยตัวซอฟต์แวร์ตัวนี้มีชื่อว่า VMAF (video Multi-Method Assessment Fusion) โดยมีการเปิดให้นักพัฒนาอื่นๆ นำไปใช้งานกันได้ด้วยครับ