Chrome 47 WebRTC: ضبط رسانه، مبدا امن و مدیریت پروکسی

Chrome 47 شامل چندین پیشرفت و به روز رسانی قابل توجه WebRTC است.

از برنامه های وب خود فیلم ضبط کنید

MediaStreamRecorder API مدتهاست که با بیش از 2500 ستاره، برترین درخواست chromium.org بوده است. اکنون ضبط رسانه پشت پرچم ویژگی‌های آزمایشی پلت‌فرم وب به Chrome اضافه شده است - اگرچه در حال حاضر فقط دسکتاپ است. این به شما امکان ضبط و پخش یا دانلود ویدیو را می دهد. یک نسخه ی نمایشی ساده در مخزن نمونه WebRTC وجود دارد و می توانید از اعلان بحث-webrtc اطلاعات بیشتری کسب کنید. یک نمونه برنامه Chrome برای ضبط ویدیو از ضبط صفحه در github.com/niklasenbom/RecordingApp موجود است. این‌ها پیاده‌سازی‌های کاملاً جدیدی هستند و ممکن است هنوز اشکالاتی برای برطرف کردن وجود داشته باشد: لطفاً اگر با مشکلاتی مواجه شدید، مشکلات را در مخازن ثبت کنید.

تصویری از نسخه ی نمایشی MediaRecorder در مخزن نمونه WebRTC GitHub

انتخاب دستگاه خروجی صدا

MediaDevices.enumerateDevices() منتشر شد. جزئیات بیشتر از Chromium شماره 504280 در دسترس است. اکنون می‌توانید دستگاه‌های خروجی صدا را علاوه بر دستگاه‌های ورودی صدا و ورودی تصویری که MediaStreamTrack.getSources() قبلاً ارائه می‌کند، برشمارید. در این به‌روزرسانی می‌توانید درباره نحوه استفاده از آن اطلاعات بیشتری کسب کنید.

پشتیبانی دستگاه در ویندوز

اکنون پشتیبانی پیش فرض دستگاه های ارتباطی در ویندوز اضافه شده است. این بدان معنی است که هنگام شمارش دستگاه های صوتی در ویندوز، یک ورودی اضافی برای دستگاه ارتباطی وجود خواهد داشت که شناسه آن 'ارتباطات' خواهد بود.

شناسه‌های دستگاه برای دستگاه صوتی پیش‌فرض (و ارتباطات در ویندوز) دیگر هش نمی‌شوند ( مساله 535980 ). در عوض، دو شناسه رزرو شده، «پیش‌فرض» و «ارتباطات» پشتیبانی می‌شوند و در همه منابع امنیتی یکسان هستند. برچسب‌های دستگاه به محلی مرورگر ترجمه می‌شوند، بنابراین توسعه‌دهندگان نباید انتظار داشته باشند که برچسب‌ها دارای یک مقدار از پیش تعیین‌شده باشند. دقت رندر ویدیو با انتشار مهر زمانی ضبط تا الگوریتم رندر بهبود یافته است، جایی که می‌توان vsync مناسب را بر اساس آن انتخاب کرد. برای پلتفرم ویندوز، مهر زمانی ضبط نیز در Chrome 47 دقیق‌تر است.

مدیریت پروکسی

Chrome 47 یک اولویت جدید اضافه می‌کند تا ترافیک WebRTC را مجبور کند از طریق یک سرور پراکسی محلی، در صورت پیکربندی، ارسال شود، که برای برخی از کاربران در حال مرور از طریق VPN مهم است. این بدان معنی است که برنامه WebRTC فقط آدرس IP پروکسی را می بیند. توجه داشته باشید که این به عملکرد برنامه آسیب می زند و به هیچ وجه کار نمی کند مگر اینکه برنامه از TURN/TCP یا ICE-TCP پشتیبانی کند. به زودی به دنبال نسخه جدیدی از WebRTC Network Limiter Extension بگردید تا یک رابط کاربری برای این اولویت ارائه دهید. اطلاعات بیشتری درباره «نشت» آدرس IP در What's Next for WebRTC وجود دارد.

WebRTC Network Limiter افزونه کروم

...و بیشتر

توان عملیاتی کانال داده برای اتصالات با تأخیر بالا بسیار بهبود یافته است.

ما به تدریج از DTLS 1.2 در بازه زمانی Chrome 47 پشتیبانی خواهیم کرد.

اگرچه نه VP9 و نه H.264 در این نسخه پشتیبانی نمی‌شوند، کار روی آن‌ها ادامه دارد، و امیدواریم بتوانیم پشتیبانی از VP9 و نسخه اولیه H.264 (پشت پرچم) را در Chrome 48 پیاده‌سازی کنیم.

اطلاعیه های خدمات عمومی

  • با شروع Chrome 47، درخواست‌های getUserMedia() فقط از منابع امن مجاز هستند: HTTPS یا میزبان محلی.
  • پشتیبانی کانال داده RTP حذف شده است. هر برنامه‌ای که هنوز از کانال‌های داده RTP استفاده می‌کند باید از کانال‌های داده استاندارد استفاده کند.

مانند همه نسخه‌ها، ما توسعه‌دهندگان را تشویق می‌کنیم که Chrome را در کانال‌های Canary، Dev و Beta امتحان کنند و هر گونه مشکل پیدا شده را گزارش کنند. کمکی که دریافت می کنیم بسیار ارزشمند است. برای راهنمایی در مورد نحوه ثبت یک گزارش اشکال خوب، لطفاً به صفحه اشکال WebRTC نگاهی بیندازید.

دموها

اطلاعات بیشتر