หน้านี้ครอบคลุมวิธีการเรียกใช้การทดสอบการเล่นสื่อใน CTS Verifier (CTS-V) ซึ่งรวมอยู่ใน Android 17
ชุดโปรแกรมทดสอบการเล่นสื่อที่อยู่ใน Test Harness ของ CTS-V ภายใต้ cts/apps/SecurePlaybackTestApp จะตรวจสอบว่าการเล่นที่ปลอดภัยแสดงเฟรมบนหน้าจอของอุปกรณ์โดยไม่มีเฟรมหลุด
ชุดโปรแกรมทดสอบการเล่นสื่อจะทดสอบ API ต่อไปนี้
android.media.MediaCodec#queueSecureInputBufferandroid.media.MediaDrm#getKeyRequestandroid.media.MediaDrm#provideKeyResponseandroid.media.MediaCrypto#MediaCrypto
ชุดการทดสอบการเล่นสื่อจะตรวจสอบตัวแปลงสัญญาณต่อไปนี้ AVC, HEVC, VP9 และ AV1
ตั้งค่าสภาพแวดล้อมการทดสอบ
หากต้องการเรียกใช้การทดสอบการเล่นที่ปลอดภัย ให้ตั้งค่าต่อไปนี้
- อุปกรณ์ที่อยู่ระหว่างการทดสอบ (DUT)
- เครื่องโฮสต์
- เครื่องมือวิเคราะห์การเล่น (PAT) (เราขอแนะนำให้ซื้อ PAT จาก Tempo Manufacturing)
ตั้งค่า DUT
หากต้องการตั้งค่า DUT ให้ทำตามขั้นตอนต่อไปนี้
- เชื่อมต่อ DUT กับเครื่องโฮสต์ผ่าน USB
- ให้สิทธิ์โฮสต์ในการเข้าถึง DUT ผ่าน ADB
- ติดตั้งแอป CTS-V (
CtsVerifier.apk) ในอุปกรณ์ ดูข้อมูลเพิ่มเติมได้ที่หัวข้อเรียกใช้การทดสอบ CTS-V - เชื่อมต่อ DUT กับอินเทอร์เน็ต
- เชื่อมต่อ PAT กับโฮสต์
- วาง DUT ในแนวตั้ง จากนั้นวางด้านที่มีแผ่นรองของ PAT ราบกับหน้าจอโดยให้ลูกศรสีขาวของ PAT ชี้ขึ้น
- พันแถบ 2 เส้นรอบ DUT แล้วดึงเชือกที่มีปลายสีขาวเพื่อรัดให้แน่น
ตั้งค่าโฮสต์
หากต้องการตั้งค่าสภาพแวดล้อมการทดสอบ ให้ดาวน์โหลดไฟล์การตั้งค่า PAT แล้วแตกไฟล์
ไปยังไดเรกทอรี pat-cts ใหม่
cd pat-cts/v2.4.0./setup.sh
คำสั่งนี้จะตั้งค่าอินเทอร์เฟซบรรทัดคำสั่งของ PAT และเข้าสู่สภาพแวดล้อมเสมือนที่มีการติดตั้ง Python หากระบบไม่เข้าสู่สภาพแวดล้อมโดยอัตโนมัติ ให้เรียกใช้คำสั่งต่อไปนี้
source venv/bin/activateเราขอแนะนำให้อัปเดต PAT ให้ตรงกับเวอร์ชันเฟิร์มแวร์ที่รวมอยู่ในไฟล์การตั้งค่า หากต้องการตรวจสอบเวอร์ชันเฟิร์มแวร์ ให้เรียกใช้คำสั่งต่อไปนี้
(venv) patctl --usb --info | grep "Firmware version"หากเวอร์ชันเฟิร์มแวร์ต่ำกว่า 2.4.0 ให้อัปเดตเฟิร์มแวร์ เรียกใช้คำสั่งต่อไปนี้
(venv) patctl --usb --update pat_fw_v2.4.0rc2.binสำหรับการทดสอบ CTS คุณต้องติดตั้งเฟรมเวิร์กการทดสอบ Mobly และ snippet-uiautomator ในสภาพแวดล้อมเสมือน
(venv) pip install mobly(venv) pip install snippet-uiautomator
นอกจากนี้ คุณยังต้องตั้งค่าตัวแปรสภาพแวดล้อมที่ระบุตำแหน่งของชิ้นงานทดสอบขณะที่สภาพแวดล้อมเสมือนทำงานอยู่ก่อนที่จะเรียกใช้การทดสอบ โดยให้เรียกใช้คำสั่งต่อไปนี้
(venv) cd SecurePlaybackTestApp(venv) source build/envsetup.sh
หากต้องการกลับเข้าสู่สภาพแวดล้อม ให้เรียกใช้คำสั่งต่อไปนี้
source pat-cts/v2.4.0/venv/bin/activateสร้างไฟล์การกำหนดค่า
คุณต้องสร้างไฟล์การกำหนดค่า config.yml เพื่อกำหนด Testbed ของ Mobly โดยใช้เฟรมเวิร์ก Mobly
ต่อไปนี้เป็นตัวอย่างไฟล์ config.yml โดยจะมีเทมเพลตให้ในไดเรกทอรี SecurePlaybackTestApp/
TestBeds:
# A testbed where adb will find Android devices.
- Name: PlaybackAnalysisTestBed
Controllers:
AndroidDevice:
- serial: 8A9X0NS5Z # quotes are needed if serial id is entirely numeric
label: dut
TestParams:
video_scaling: 1.0 # from 0.0 to 1.0, used if the test video is too large to fit the Playback Analysis Tool
เรียกใช้การทดสอบ
วิธีเรียกใช้การทดสอบการเล่นสื่อของ CTS-V
- จากภายในสภาพแวดล้อมเสมือนของ Python ในเครื่องโฮสต์ ให้ไปที่ไดเรกทอรี
SecurePlaybackTestApp/ เรียกใช้การทดสอบโดยใช้คำสั่งต่อไปนี้
python ./secure_playback_test.py -c config.ymlหลังจากผ่านไปประมาณ 10 วินาที วิดีโอจะเริ่มเล่นในอุปกรณ์
จัดร่องบน PAT ให้ตรงกับแถบสีดำและสีขาว 5 แถบของวิดีโอตามที่แสดงในแผนภาพต่อไปนี้ ตรวจสอบว่า PAT จัดแนวตรงกับลูกศรที่ชี้ไปทางซ้ายเมื่อเทียบกับการวางแนวของวิดีโอ
รูปที่ 1 PAT ที่จัดแนวอย่างถูกต้อง
รูปที่ 2 PAT ต้องมีการปรับขนาด
หลังจากจัดแนว PAT แล้ว ให้พันสาย 2 เส้นรอบอุปกรณ์และรัดให้แน่นโดยให้แถบดึงยื่นออกมาจากด้านซ้ายของ PAT ตรวจสอบว่าการจัดแนวไม่เปลี่ยนแปลง และจัดแนวใหม่หากจำเป็น คุณสามารถถอด DUT ออกจากโฮสต์เพื่อดำเนินการนี้ได้ แต่ต้องตรวจสอบว่าได้เชื่อมต่อ DUT อีกครั้งก่อนดำเนินการต่อ ตรวจสอบว่า PAT แนบกับ DUT อย่างสมบูรณ์ ดังที่แสดงในรูปที่ 4 วางอุปกรณ์ในตำแหน่งที่จะไม่มีใครแตะเป็นเวลา 2-3 นาที แล้วป้อน
yเพื่อทำการทดสอบต่อ ตรวจสอบว่าอุปกรณ์ไม่เคลื่อนที่หลังจากจัดแนวแล้ว
รูปที่ 3 PAT และ DUT มุมมองด้านบน
รูปที่ 4 PAT และ DUT มุมมองด้านข้าง
เมื่อการทดสอบผ่าน ปุ่มผ่าน จะใช้งานได้ บันทึกการทดสอบที่ผ่านโดยแตะปุ่มนี้