Chrome 47 มีการปรับปรุงและอัปเดต WebRTC ที่สำคัญหลายอย่าง
บันทึกวิดีโอจากเว็บแอป
MediaStreamRecorder API นี้เป็นคำขอที่ได้รับความนิยมสูงสุดใน chromium.org มาอย่างยาวนาน โดยมีดาวมากกว่า 2, 500 ดวง ตอนนี้เราได้เพิ่มการบันทึกสื่อลงใน Chrome โดยซ่อนไว้หลังฟีเจอร์ทดลองของแฟล็กแพลตฟอร์มเว็บแล้ว แต่ฟีเจอร์นี้ใช้ได้กับเดสก์ท็อปเท่านั้นในขณะนี้ ซึ่งจะช่วยให้คุณบันทึกและเล่นหรือดาวน์โหลดวิดีโอได้ คุณดูการสาธิตแบบง่ายได้ในที่เก็บตัวอย่าง WebRTC และดูข้อมูลเพิ่มเติมได้จากประกาศ discuss-webrtc แอป Chrome ตัวอย่างสำหรับการบันทึกวิดีโอจากการจับภาพหน้าจอมีอยู่ที่ github.com/niklasenbom/RecordingApp การใช้งานเหล่านี้เป็นของใหม่เอี่ยมและอาจยังมีข้อบกพร่องที่ต้องแก้ไข โปรดรายงานปัญหาในที่เก็บหากพบปัญหา

การเลือกอุปกรณ์เอาต์พุตเสียง
MediaDevices.enumerateDevices() ได้รับการเผยแพร่แล้ว ดูรายละเอียดเพิ่มเติมได้จากปัญหา 504280 ของ Chromium ตอนนี้คุณสามารถแสดงรายการอุปกรณ์เอาต์พุตเสียงได้แล้ว นอกเหนือจากอุปกรณ์อินพุตเสียงและอินพุตวิดีโอที่ MediaStreamTrack.getSources() มีให้ ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ได้ในการอัปเดตนี้
การรองรับอุปกรณ์ใน Windows
ตอนนี้เราได้เพิ่มการรองรับอุปกรณ์สื่อสารเริ่มต้นใน Windows แล้ว ซึ่งหมายความว่าเมื่อแสดงรายการอุปกรณ์เสียงใน Windows จะมีรายการเพิ่มเติมสำหรับอุปกรณ์การสื่อสารซึ่งมีรหัสเป็น "communications"
ระบบจะไม่แฮชรหัสอุปกรณ์สำหรับอุปกรณ์เสียงเริ่มต้น (และการสื่อสารใน Windows) อีกต่อไป (ปัญหา 535980) แต่ระบบจะรองรับรหัสที่สงวนไว้ 2 รายการ ได้แก่ "default" และ "communications" ซึ่งจะเหมือนกันใน แหล่งที่มาด้านความปลอดภัยทั้งหมด ระบบจะแปลป้ายกำกับอุปกรณ์เป็นภาษาของเบราว์เซอร์ ดังนั้นนักพัฒนาซอฟต์แวร์จึงไม่ควรคาดหวังว่าป้ายกำกับจะมีค่าที่กำหนดไว้ล่วงหน้า เราได้ปรับปรุงความแม่นยำในการแสดงวิดีโอโดยการเผยแพร่การประทับเวลาการจับภาพ ไปจนถึงอัลกอริทึมการแสดงผล ซึ่งจะเลือก Vsync ที่เหมาะสมได้ ตามการประทับเวลานั้น สำหรับแพลตฟอร์ม Windows การประทับเวลาการจับภาพจะแม่นยำมากขึ้นใน Chrome 47
การจัดการพร็อกซี
Chrome 47 เพิ่มค่ากำหนดใหม่เพื่อบังคับให้ส่งการเข้าชม WebRTC ผ่านเซิร์ฟเวอร์พร็อกซีในเครื่อง หากมีการกำหนดค่า ซึ่งเป็นสิ่งสำคัญสำหรับผู้ใช้บางรายที่ท่องเว็บผ่าน VPN ซึ่งหมายความว่าแอปพลิเคชัน WebRTC จะเห็นเฉพาะที่อยู่ IP ของพร็อกซี โปรดทราบว่าการดำเนินการนี้จะส่งผลต่อประสิทธิภาพของแอปพลิเคชัน และจะใช้ไม่ได้เลยหากแอปพลิเคชันไม่รองรับ TURN/TCP หรือ ICE-TCP โปรดรอส่วนขยาย WebRTC Network Limiter เวอร์ชันใหม่ที่จะมี UI สำหรับค่ากำหนดนี้ในเร็วๆ นี้ ดูข้อมูลเพิ่มเติมเกี่ยวกับ "การรั่วไหล" ของที่อยู่ IP ได้ในสิ่งที่จะเกิดขึ้นต่อไปสำหรับ WebRTC

...และอื่นๆ
เราได้ปรับปรุงอัตราการรับส่งข้อมูลของช่องข้อมูลอย่างมากสำหรับการเชื่อมต่อที่มีเวลาในการตอบสนองสูง
เราจะทยอยเปิดตัวการรองรับ DTLS 1.2 ในช่วงเวลาของ Chrome 47
แม้ว่าการเปิดตัวนี้จะไม่รองรับทั้ง VP9 และ H.264 แต่เราจะยังคงพัฒนาต่อไป และหวังว่าจะรองรับ VP9 และ H.264 เวอร์ชันเริ่มต้น (อยู่หลังฟีเจอร์แฟล็ก) ใน Chrome 48
แคมเปญรณรงค์เพื่อสังคม
- ตั้งแต่ Chrome 47 เป็นต้นไป ระบบจะอนุญาตคำขอ
getUserMedia()จากต้นทางที่ปลอดภัยเท่านั้น ซึ่งได้แก่ HTTPS หรือ localhost - เราได้นำการรองรับช่องข้อมูล RTP ออกแล้ว แอปพลิเคชันที่เหลือซึ่งยังคงใช้ช่องข้อมูล RTP ควรใช้ช่องข้อมูลมาตรฐานแทน
เช่นเดียวกับการเปิดตัวทุกครั้ง เราขอแนะนำให้นักพัฒนาซอฟต์แวร์ลองใช้ Chrome ในช่องทาง Canary, Dev และเบต้า แล้วรายงานปัญหาที่พบ ความช่วยเหลือที่เราได้รับนั้นมีค่าอย่างยิ่ง หากต้องการดูคำแนะนำเกี่ยวกับวิธีส่งรายงานข้อบกพร่องที่ดี โปรดดูหน้าข้อบกพร่องของ WebRTC
การสาธิต
- MediaRecorder
enumerateDevices():
ดูข้อมูลเพิ่มเติม
- สถานะการใช้งาน MediaRecorder
- ฉบับร่างของเอดิเตอร์สำหรับการจับภาพสื่อและสตรีม: MediaDevices
- Audio Output Devices API
- การอัปเดต WebRTC