เมื่อไม่นานมานี้ มีผู้ใช้งาน Sony Xperia XZ Premium ซึ่งเป็นสมาร์ทโฟนจอ HDR ความละเอียด 4K  รุ่นแรกของโลก ได้ตั้งข้อสังเกตว่าขณะดูวีดีโอความละเอียด 4K บนแอป YouTube และเปิด Stats for nerd แล้วรายละเอียดค่าของ Viewport บอกว่ามีความละเอียดเพียง 1920×1080 จึงเข้าใจว่าแท้จริงแล้ว YouTube แสดงผลแค่ 1080P แล้วถูกอัปสเกลด้วยหน้าจอของ Sony ให้เป็น 4K จึงตีความว่า Sony Xperia XZ Premium ไม่ได้แสดงผลที่ความละเอียด 4K จริง เราจึงได้สืบค้นข้อมูลเพื่อไขข้อกังขานี้และพบว่ามันเป็นความเข้าใจที่ผิด แต่เพื่อความน่าเชื่อถือที่มากขึ้น เราจึงได้เชิญกูรูคือคุณ สมเกียรติ กิจวงศ์วัฒนะ หรือ Akexorcist ที่เป็นนักพัฒนาในระบบ GDE (Google Developer Expert) ด้าน Android มาอธิบายเรื่องนี้

ภาพคุณสมเกียรติ กิจวงศ์วัฒนะ จาก Blognone

Highlight

  • ผู้ใช้งาน Sony Xperia XZ Premium เกิดความสงสัยว่าทำไมขณะเล่นวิดีโอ YouTube ความละเอียด 4K แล้ว Viewport ขึ้นแค่ Full HD
  • คุณ สมเกียรติ กิจวงศ์วัฒนะ หรือ Akexorcist ที่เป็นนักพัฒนาในระบบ GDE (Google Developer Expert) ด้าน Android ได้อธิบายว่าเกิดจากการเลือกใช้ View ของแอปฯ
  • Sony Xperia XZ Premium แสดงผลเป็น 4K ตลอดเวลา
  • UI จะแสดงผลที่ Full HD และอัปสเกลด้วยฮาร์ดแวร์เป็น 4K ส่วนวิดีโอจะแสดงที่ 4K ตามความละเอียดดั้งเดิมของวิดีโอ

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

ในแง่ Software แล้วมันแสดงผลเป็น Full HD และถูก Hardware จัดการอัปสเกลเป็น 4K สำหรับการใช้งานทั่วไป ส่วนภาพและวีดีโอจะแสดงผล 4K ตามต้นฉบับ หรือสรุปได้ว่า Xperia XZ Premium แสดงผลเป็น 4K ตลอดเวลานั่นเอง แต่ถ้าเจาะลึกลงไปอีกตามที่มีคนตั้งข้อสงสัยเรื่องของค่า Viewport ก็จะพบว่ามันมีรายละเอียดที่น่าสนใจอยู่ไม่น้อย

youtube

การอธิบายเรื่องนี้ต้องเริ่มจากการทำความเข้าใจการออกแบบ User Interface (UI) ซึ่งแต่ละส่วนบนหน้าจอแอนดรอยด์นั้นถูกเรียกว่า View โดยที่ View ก็มีหลายแบบแตกต่างกันไปตามหน้าที่ของมัน

ส่วนหน้าที่ของ Viewport เกิดมาเพื่อจัดการกับหน้าจอ Android​ ที่มี​หลากหลาย​ความ​ละเอียด​ จึง​ต้อง​มี​ค่า View​port เพื่อ​ให้​แอป​ปรับ​ขนาด​ชิ้นส่วน​ต่าง​ๆ จำพวกปุ่ม, เมนู, ข้อความ ฯลฯ ให้​เหมาะสม​กับ​ความ​ละเอียด​หน้าจอ​ แต่การแสดงผลของวีดีโอจะใช้ SurfaceView ในการแสดง ซึ่งจะแสดงผลตามไฟล์ต้นฉบับ เช่น ไฟล์ต้นฉบับเป็น 4K ก็แสดงผลเป็น 4K ไม่เกี่ยวกับส่วนของ Viewport แต่อย่างใด ซึ่งเป็นต้นเรื่องของความสับสนครั้งนี้ เนื่องจากมีคนเข้าใจผิดเอาค่า Viewport มาชี้วัดความเป็น 4K ​

xperia xz premium upscaleย้อนกลับไปตอนที่ Android 6.0 Marshmallow เปิดตัวนั้น ได้มีการเพิ่มฟีเจอร์ให้แอนดรอยด์สามารถรองรับการแสดงผลบนหน้าจอ 4K ได้ โดยมีรายละเอียดดังนี้

This feature is useful if you want to switch to 4K display resolution. While in 4K display mode, the UI continues to be rendered at the original resolution (such as 1080p) and is upscaled to 4K, but SurfaceView objects may show content at the native resolution.

อธิบายโดยคร่าวๆ ก็คือ

ฟีเจอร์นี้ที่จะมีประโยชน์มากเมื่อคุณต้องการใช้งานหน้าจอที่ความละเอียด 4K โดย UI จะถูกบังคับให้แสดงผลที่ความละเอียดดั้งเดิม (เช่น 1080p (FHD)) จากนั้นมันจะถูกอัปสเกลเป็น 4K อีกที เพื่อแสดงบนหน้าจอ แต่ SurfaceView จะแสดงเนื้อหาที่ความละเอียดที่แท้จริงของหน้าจอ

หมายความว่าปกติแล้ว Android OS จะบังคับให้ UI ทั้งหมดทำงานที่ความละเอียด Full HD แล้วตัวหน้าจอจะนำไปอัปสเกลให้เป็น 4K เพื่อให้ดูคมชัดมากขึ้น นั่นคือสาเหตุที่ Viewport แสดงค่าแบบนั้น เพราะค่าที่แสดงจะเป็นการวัดขนาดของ View ที่ความละเอียด Full HD เท่านั้น ส่วนการแสดงวีดีโอหรือภาพบน SurfaceView จะได้ความละเอียดตามหน้าจอของตัวเครื่องเลย ดังนั้นถ้านักพัฒนาเขียนแอปฯ โดยวาง SurfaceView ไว้เต็มหน้าจอ เวลาเปิดวีดีโอที่เป็น 4K บน SurfaceView นี้ มันก็จะแสดงผลที่ความละเอียด 4K ให้โดยอัตโนมัตินั่นเอง

นอกจากข้อสงสัยแรกแล้ว ยังมีอีกหนึ่งข้อสงสัยคือ “ถ้าเราลองแก้ไขค่า DPI ของ Xperia XZ Premium ให้มองหน้าจอเป็น 4K ผ่าน ADB ก็จะส่งผลต่อค่า ViewPort ใน YouTube ให้แสดงเป็น 4K เช่นกัน กลับกันแม้จะแก้ DPI ผ่าน ADB เป็น 4K ก็ตามแต่หากทดสอบบนเครื่องที่หน้าจอความละเอียดไม่ถึง 4K เช่น Samsung Galaxy Note 8 ที่เป็นจอ 2K ก็จะขึ้นเป็นความละเอียดแค่ 2K จนหลายคนสงสัยว่าสรุปแล้วค่า Viewport ใน YouTube มันคืออะไรกันแน่?

คำตอบของข้อสงสัยนี้ก็คือ Viewport มันเป็นการวัดขนาดของ UI ดังนั้นการแก้ไขค่า DPI (ไม่ว่าจะผ่าน ADB หรือ Developer Options) ก็แค่ทำให้ตัวเครื่องคำนวณความละเอียดของ UI ใหม่เท่านั้น สุดท้ายแล้ว SurfaceView ก็ยังคงแสดงวีดีโอตามความละเอียดจริงของหน้าจออยู่ดี

สรุปความละเอียดหน้าจอ Sony Xperia XZ Premium คือ 4K แท้

ในมุมของการใช้งานต้องบอกว่า Xperia XZ Premium ​แสดงผล​เป็น 4K ตลอด​เวลา​ โดยแบ่งเป็น 2 ประเภทคือ​ถ้า​เล่น​คอนเทนต์​ 4K บน​แอป​ที่​รองรับ​ เช่น แอปภาพ​และ​วิดีโอ​ของ Sony, YouTube, Amazon Prime ก็​จะ​ออก​มา​เป็น 4K แต่​ถ้า​ต้นทางมีความละเอียดต่ำ​ก็​จะ​ถูก​อัปสเกล​เป็น 4K

แต่ในเชิงของนักพัฒนาก็ขึ้นอยู่กับว่าเขียนโปรแกรมออกมาแบบไหน ซึ่งโดยทั่วไปถ้าทำตามแนวทางการออกแบบที่ Google วางไว้ตั้งแต่ Android 6.0 Marshmallow ก็จะแสดงผลวีดีโอเป็น 4K ตามไฟล์ต้นฉบับเลย

กูรูตัวจริงที่ได้ผ่านการรับรองให้เป็นนักพัฒนาในระบบ GDE มาไขข้อข้องใจให้แบบนี้ คงคลายข้อสงสัยของหลายๆ คนลงได้ว่าการรับชมวิดีโอผ่าน YouTube บนตัวเครื่อง Sony Xperia XZ Premium ที่มีหน้าจอความละเอียด 4K นั้นหน้าจอแสดงผลที่ความละเอียด 4K จริงแท้แน่นอน

Powered by bacidea

or

Log in with your credentials

or    

Forgot your details?

or

Create Account