Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

মিডিয়া ক্যাপচার এবং সীমাবদ্ধতা

ওয়েবআরটিসি-র মিডিয়া অংশটি কীভাবে ক্যামেরা এবং মাইক্রোফোনের মতো ভিডিও এবং অডিও ক্যাপচারে সক্ষম হার্ডওয়্যার অ্যাক্সেস করতে পারে সেই সাথে মিডিয়া স্ট্রিমগুলি কীভাবে কাজ করে তা কভার করে। এটি ডিসপ্লে মিডিয়াও কভার করে, যা কোনও অ্যাপ্লিকেশন কীভাবে স্ক্রিন ক্যাপচার করতে পারে।

মিডিয়া ডিভাইস

ব্রাউজার দ্বারা সমর্থিত সমস্ত ক্যামেরা এবং মাইক্রোফোনগুলি navigator.mediaDevices অবজেক্টের মাধ্যমে অ্যাক্সেস এবং পরিচালনা করা হয়। অ্যাপ্লিকেশনগুলি সংযুক্ত ডিভাইসের বর্তমান তালিকাটি পুনরুদ্ধার করতে পারে এবং পরিবর্তনের জন্যও শুনতে পারে, যেহেতু অনেকগুলি ক্যামেরা এবং মাইক্রো হোন ইউএসবির মাধ্যমে সংযুক্ত হয় এবং অ্যাপ্লিকেশনটির আজীবন সময় সংযোগ এবং সংযোগ বিচ্ছিন্ন করা যায়। যেহেতু কোনও মিডিয়া ডিভাইসের স্থিতি যে কোনও সময় পরিবর্তিত হতে পারে, তাই পরিবর্তিতগুলি যথাযথভাবে পরিচালনা করতে অ্যাপ্লিকেশনগুলি ডিভাইস পরিবর্তনের জন্য নিবন্ধন করার পরামর্শ দেওয়া হয়।

সীমাবদ্ধতাসমূহ

মিডিয়া ডিভাইসগুলিতে অ্যাক্সেস করার সময়, যথাসম্ভব বিস্তারিত সীমাবদ্ধতা সরবরাহ করা ভাল অভ্যাস। ডিফল্ট ক্যামেরা এবং মাইক্রোফোনটি কোনও সাধারণ সীমাবদ্ধতার সাথে খোলার সম্ভব হলেও এটি কোনও মিডিয়া স্ট্রিম সরবরাহ করতে পারে যা অ্যাপ্লিকেশনটির জন্য সবচেয়ে অনুকূল থেকে অনেক দূরে।

নির্দিষ্ট প্রতিবন্ধকতাগুলি MediaTrackConstraint অবজেক্টে সংজ্ঞায়িত করা হয়, একটি অডিওর জন্য এবং ভিডিওর জন্য একটি। এই অবজেক্টের বৈশিষ্ট্যগুলি ConstraintLong , ConstraintBoolean , ConstraintDouble বা ConstraintDOMString টাইপ। এগুলি হয় নির্দিষ্ট মান (যেমন, একটি সংখ্যা, বুলিয়ান বা স্ট্রিং), একটি পরিসীমা (ন্যূনতম এবং সর্বাধিক মান সহ LongRange বা DoubleRange ) বা ideal বা exact সংজ্ঞা সহ একটি বস্তু হতে পারে। একটি নির্দিষ্ট মানের জন্য, ব্রাউজারটি যতটা সম্ভব কাছাকাছি কিছু বাছাই করার চেষ্টা করবে। একটি ব্যাপ্তির জন্য, এই ব্যাপ্তির সেরা মান ব্যবহৃত হবে। যখন exact নির্দিষ্ট করা হয়, কেবলমাত্র মিডিয়া স্ট্রিমগুলি ঠিক সেই সীমাবদ্ধতার সাথে মিলে যায় returned

কাছাকাছি

 // 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 getDisplayMedia() অংশ getUserMedia() অনুরূপ এবং এটি ডিসপ্লেটির সামগ্রী (বা এর কোনও অংশ যেমন উইন্ডো) খোলার উদ্দেশ্যে ব্যবহৃত হয় The প্রত্যাবর্তিত MediaStream কাজ করে getUserMedia() ব্যবহার করার সময় একই।

getDisplayMedia() এর সীমাবদ্ধতাগুলি নিয়মিত ভিডিও বা অডিও ইনপুট জন্য ব্যবহৃত ব্যবহৃত থেকে পৃথক।

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

উপরের কোড স্নিপেটটি স্ক্রিন রেকর্ডিংয়ের জন্য বিশেষ সীমাবদ্ধতাগুলি কীভাবে কাজ করে তা দেখায়। নোট করুন যে এগুলি সমস্ত ব্রাউজারগুলিতে প্রদর্শিত হতে পারে যা প্রদর্শন মিডিয়া সমর্থন করে।

স্ট্রিম এবং ট্র্যাকগুলি

একজন MediaStream ট্র্যাক (নিয়ে গঠিত যা মিডিয়া সামগ্রী, এর একটি স্ট্রিম প্রতিনিধিত্ব করে MediaStreamTrack অডিও এবং ভিডিও এর)। আপনি MediaStream থেকে সমস্ত ট্র্যাকগুলি MediaStream.getTracks() কল করে পুনরুদ্ধার করতে পারেন, যা MediaStreamTrack অবজেক্টের অ্যারে প্রদান করে।

MediaStreamTrack

মিডিয়া MediaStreamTrack এমন এক kind সম্পত্তি রয়েছে যা হয় audio বা video যা এটি প্রতিনিধিত্ব করে এমন মিডিয়া নির্দেশ করে। প্রতিটি ট্র্যাককে তার enabled সম্পত্তিটি টগল করে নিঃশব্দ করা যায়। একটি ট্র্যাকের মধ্যে বুলিয়ান সম্পত্তি remote যা নির্দেশ করে যে এটি RTCPeerConnection দ্বারা RTCPeerConnection এবং কোনও রিমোট পিয়ার থেকে আগত RTCPeerConnection