وتلتزم جوجل لدفع الأسهم العنصري للمجتمعات الأسود. أنظر كيف.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

القبض على وسائل الإعلام والقيود

الجزء سائل الإعلام من تغطية بتقنية WebRTC كيفية الوصول أجهزة قادرة على التقاط الفيديو والصوت، مثل الكاميرات والميكروفونات، وكذلك كيفية سائل الإعلام تيارات العمل. كما أنها تغطي وسائل الإعلام الشاشة، وهو كيف يمكن تطبيق تفعل التقاط الشاشة.

وسائل الإعلام

يتم الوصول إلى جميع الكاميرات والميكروفونات التي يدعمها المتصفح وتمكن من خلال navigator.mediaDevices الكائن. يمكن للتطبيقات استرداد القائمة الحالية من الأجهزة المتصلة، وكذلك الاستماع لإجراء تغييرات، لأن العديد من الكاميرات وmicrohpones الاتصال من خلال USB ويمكن ان تكون مرتبطة وفصله خلال دورة حياة التطبيق. وبما ان الدولة من جهاز وسائط يمكن أن تتغير في أي وقت، فمن المستحسن أن التطبيقات بسجل للتغييرات الجهاز من أجل التغييرات التعامل بشكل صحيح.

القيود

عند الوصول إلى أجهزة الوسائط، بل هو ممارسة جيدة لتوفير عن القيود مفصلة قدر الإمكان. في حين أنه من الممكن فتح الكاميرا الافتراضية وميكروفون مع عائقا بسيطة، قد يلقى تيار وسائل الاعلام التي هي بعيدة كل البعد عن معظم الأمثل للتطبيق.

يتم تعريف قيود محددة في MediaTrackConstraint الكائن، واحدة للصوت واحد للفيديو. السمات في هذا الكائن من نوع ConstraintLong ، ConstraintBoolean ، ConstraintDouble أو ConstraintDOMString . يمكن أن تكون هذه إما قيمة محددة (على سبيل المثال، رقم، منطقية أو سلسلة)، مجموعة ( LongRange أو DoubleRange مع الحد الأدنى والحد الأقصى لقيمة) أو كائن إما مع ideal أو exact التعريف. عن قيمة محددة، سيقوم المتصفح محاولة لالتقاط شيء في أقرب وقت ممكن. لمجموعة، سيتم استخدام أفضل قيمة في هذا النطاق. عندما exact المحدد، سيتم إرجاع فقط تيارات وسائل الاعلام التي تطابق تماما هذا القيد.

قريب

 // Camera with a resolution as close to 640x480 as possible
{
    "video": {
        "width": 640,
        "height": 480
    }
}
 

نطاق

 // Camera with a resolution in the range 640x480 to 1024x768
{
    "video": {
        "width": {
            "min": 640,
            "max": 1024
        },
        "height": {
            "min": 480,
            "max": 768
        }
    }
}
 

دقيق

 // Camera with the exact resolution of 1024x768
{
    "video": {
        "width": {
            "exact": 1024
        },
        "height": {
            "exact": 768
        }
    }
}
 

لتحديد التكوين الفعلي مسار معين من تيار وسائل الاعلام لديها، يمكن أن نطلق MediaStreamTrack.getSettings() التي ترجع MediaTrackSettings المطبقة حاليا.

ومن الممكن أيضا لتحديث قيود مسار من جهاز وسائط فتحنا، من خلال الدعوة applyConstraints() على الطريق. وهذا يتيح تطبيق إعادة تكوين-جهاز وسائط دون الحاجة أولا إلى إغلاق مجرى القائمة.

وسائل الاعلام عرض

أحد التطبيقات التي تريد أن تكون قادرة على أداء التقاط الشاشة وتسجيل يجب أن تستخدم العرض وسائل الإعلام API. وظيفة getDisplayMedia() (والذي هو جزء من navigator.mediaDevices مشابهة ل getUserMedia() ويستخدم لغرض فتح محتوى الشاشة (أو جزء منه، مثل نافذة). وعاد MediaStream يعمل نفس عند استخدام getUserMedia() .

القيود عن getDisplayMedia() تختلف عن تلك المستخدمة في الفيديو العادية أو إدخال الصوت.

 {
    video: {
        cursor: 'always' | 'motion' | 'never',
        displaySurface: 'application' | 'browser' | 'monitor' | 'window'
    }
}
 

وsnipet رمز أعلاه يبين كيف يمكن للقيود الخاصة لتسجيل شاشة تعمل. علما بأن هذه قد لا تكون معتمدة من قبل جميع المتصفحات التي لديها دعم وسائل الإعلام الشاشة.

تيارات ومسارات

و MediaStream يمثل تيار من محتوى وسائل الإعلام، والذي يتألف من المسارات ( MediaStreamTrack ) من الصوت والفيديو. يمكنك استرداد كافة المسارات من MediaStream من خلال الدعوة MediaStream.getTracks() ، والتي ترجع مجموعة من MediaStreamTrack الكائنات.

MediaStreamTrack

A MediaStreamTrack لديه kind الممتلكات التي هي إما audio أو video ، مما يدل على نوع من وسائل الاعلام التي تمثلها. كل مسار يمكن أن تكون صامتة عن طريق تبديل في enabled الممتلكات. مسار له خاصية منطقي remote أن يشير إلى ما إذا مصدرها من قبل ل RTCPeerConnection والقادمة من النظير البعيد.