Jetpack Media3 হল মিডিয়া লাইব্রেরিগুলির জন্য নতুন হোম যা Android অ্যাপগুলিকে সমৃদ্ধ অডিও এবং ভিজ্যুয়াল অভিজ্ঞতা প্রদর্শন করতে সক্ষম করে৷ মিডিয়া3 শক্তিশালী কাস্টমাইজেশন, নির্ভরযোগ্যতা এবং অপ্টিমাইজেশান সহ একটি সাধারণ আর্কিটেকচার সরবরাহ করে যা ডিভাইসের ক্ষমতার উপর ভিত্তি করে ফ্র্যাগমেন্টেশনের সাথে আসা জটিলতাকে বিমূর্ত করতে।
এই দস্তাবেজটি মিডিয়া3-এর সাথে প্লেব্যাক বাস্তবায়ন এবং ব্যবহারের ক্ষেত্রে সম্পাদনা করার জন্য মূল APIগুলির একটি ভূমিকা প্রদান করে।
প্লেব্যাক উপাদান
মিডিয়া3 প্লেব্যাক ব্যবহারের ক্ষেত্রে বিভিন্ন মূল উপাদান অফার করে। আপনি যদি পূর্ববর্তী Android মিডিয়া লাইব্রেরিগুলির সাথে কাজ করে থাকেন তবে এই উপাদানগুলি তৈরি করে এমন ক্লাসগুলি আপনার কাছে পরিচিত হবে৷
নিম্নলিখিত চিত্রটি দেখায় কিভাবে এই উপাদানগুলি একটি সাধারণ অ্যাপে একত্রিত হয়।
![একটি মিডিয়া অ্যাপের বিভিন্ন উপাদান যা Media3 ব্যবহার করে তাদের ইন্টারফেস এবং ক্লাস শেয়ার করার কারণে বেশ কয়েকটি সহজ উপায়ে একসাথে সংযুক্ত হয়।](https://developer.android.com/static/guide/topics/media/images/overview.png?authuser=0&hl=bn)
মিডিয়া প্লেয়ার
একটি মিডিয়া প্লেয়ার হল আপনার অ্যাপের একটি উপাদান যা মিডিয়া ফাইল প্লেব্যাকের অনুমতি দেয়। Media3 এ, আপনি পাবেন:
ক্লাস | বর্ণনা | বাস্তবায়ন নোট |
---|---|---|
Player | Player হল একটি ইন্টারফেস যা একটি মিডিয়া প্লেয়ারের জন্য প্রথাগত উচ্চ-স্তরের ক্ষমতাকে সংজ্ঞায়িত করে, যেমন খেলা, বিরতি এবং খোঁজার ক্ষমতা। | মিডিয়া3-এ, Player ইন্টারফেস হল একটি সাধারণ এপিআই যা বাস্তবায়িত বা বিভিন্ন উপাদান দ্বারা ব্যবহৃত হয়, উদাহরণস্বরূপ, MediaSession এবং MediaController সহ। |
ExoPlayer | ExoPlayer হল Media3 এ Player ইন্টারফেসের ডিফল্ট বাস্তবায়ন। |
Media3 ExoPlayer সম্পর্কে আরও জানুন
মিডিয়া সেশন
একটি মিডিয়া সেশন একটি মিডিয়া প্লেয়ারের সাথে যোগাযোগ করার একটি সর্বজনীন উপায় প্রদান করে। এটি একটি অ্যাপকে বাহ্যিক উত্সগুলিতে মিডিয়া প্লেব্যাকের বিজ্ঞাপন দিতে এবং বাহ্যিক উত্স থেকে প্লেব্যাক নিয়ন্ত্রণের অনুরোধগুলি পেতে সক্ষম করে৷ Media3 এ, আপনি পাবেন:
ক্লাস | বর্ণনা | বাস্তবায়ন নোট |
---|---|---|
MediaSession | মিডিয়া সেশন আপনার অ্যাপকে একটি অডিও বা ভিডিও প্লেয়ারের সাথে ইন্টারঅ্যাক্ট করতে সক্ষম করে। তারা বাহ্যিকভাবে মিডিয়া প্লেব্যাকের বিজ্ঞাপন দেয় এবং বাহ্যিক উত্স থেকে প্লেব্যাক কমান্ড গ্রহণ করে। | Media3-এ, একটি MediaSession কমান্ড কার্যকর করতে এবং বর্তমান অবস্থা পেতে একটি Player প্রয়োজন। |
MediaSessionService | MediaSessionService ব্যাকগ্রাউন্ড প্লেব্যাকের সুবিধার্থে আপনার অ্যাপের প্রধান Activity থেকে আলাদা একটি পরিষেবাতে একটি মিডিয়া সেশন এবং এর সাথে সম্পর্কিত প্লেয়ার রাখে। | |
MediaController | MediaController ক্লাসটি সাধারণত আপনার অ্যাপের বাইরে থেকে কমান্ড পাঠাতে ব্যবহৃত হয়, উদাহরণস্বরূপ অন্যান্য অ্যাপ বা সিস্টেম থেকে। কমান্ডগুলি সংশ্লিষ্ট MediaSession এর অন্তর্নিহিত Player পাঠানো হয়। | MediaController ক্লাস Player ইন্টারফেস প্রয়োগ করে, কিন্তু একটি পদ্ধতি কল করার সময় কমান্ডটি সংযুক্ত MediaSession এ পাঠানো হয়। Google অ্যাসিস্ট্যান্টের মতো ক্লায়েন্ট অ্যাপগুলি একটি সংযুক্ত সেশনে প্লেব্যাক নিয়ন্ত্রণ করতে MediaController ব্যবহার করতে পারে। |
MediaLibraryService | একটি MediaLibraryService একটি MediaSessionService এর অনুরূপ, ব্যতীত এতে অতিরিক্ত API অন্তর্ভুক্ত থাকে যাতে আপনি ক্লায়েন্ট অ্যাপগুলিতে আপনার সামগ্রী লাইব্রেরি পরিবেশন করতে পারেন৷ | |
MediaBrowser | MediaBrowser ক্লাস ব্যবহারকারীকে একটি মিডিয়া অ্যাপের সামগ্রী লাইব্রেরির মাধ্যমে নেভিগেট করতে এবং কোন আইটেমগুলি খেলতে হবে তা নির্বাচন করার অনুমতি দেয়। | MediaBrowser ক্লাস MediaController এবং Player উভয় ইন্টারফেস প্রয়োগ করে। MediaController এর মতো, Android Auto-এর মতো ক্লায়েন্ট অ্যাপগুলি সাধারণত MediaBrowser প্রয়োগ করে। |
Media3 MediaSession সম্পর্কে আরও জানুন
UI উপাদান
Media3 ভিডিও দেখা এবং প্লেব্যাক নিয়ন্ত্রণের জন্য ডিফল্ট UI উপাদান সরবরাহ করে।
ক্লাস | বর্ণনা | বাস্তবায়ন নোট |
---|---|---|
PlayerView | ভিডিও এবং প্লেব্যাক নিয়ন্ত্রণ দেখানোর জন্য একটি ডিফল্ট View । | ExoPlayer , MediaController বা অন্য কোন কাস্টম Player সাথে সংযোগ করে। |
উপাদান সম্পাদনা
মিডিয়া 3-এ মিডিয়া সম্পাদনা ব্যবহারের ক্ষেত্রে ট্রান্সফরমার API অন্তর্ভুক্ত রয়েছে, যার মধ্যে রয়েছে:
- অডিও এবং ভিডিও প্রক্রিয়াকরণ, যেমন ফিল্টার এবং প্রভাব যোগ করা
- বিশেষ ফরম্যাট পরিচালনা করা, যেমন HDR ভিডিও এবং স্লো-মোশন ভিডিও
- রচনা, যেমন একাধিক ইনপুট ফাইল একত্রিত করা
- একটি ফাইলে চূড়ান্ত আউটপুট রপ্তানি করা হচ্ছে
ক্লাস | বর্ণনা | বাস্তবায়ন নোট |
---|---|---|
Transformer | Transformer ক্লাসটি ট্রান্সফরমেশন শুরু এবং বন্ধ করতে এবং চলমান ট্রান্সফরমেশনের অগ্রগতি আপডেট চেক করতে ব্যবহার করুন। | |
Effects | একটি Effects বস্তু একটি মিডিয়া আইটেম প্রয়োগ করার জন্য অডিও এবং ভিডিও প্রভাব একটি সংগ্রহ. | |
EditedMediaItem | একটি EditedMediaItem প্রক্রিয়া করার জন্য একটি মিডিয়া আইটেম এবং এটিতে প্রয়োগ করার জন্য সম্পাদনাগুলি উপস্থাপন করে। | রপ্তানি প্রক্রিয়া শুরু করার আগে আপনি একটি মিডিয়া আইটেমে যুক্ত প্রভাবগুলির পূর্বরূপ দেখতে ExoPlayer ব্যবহার করতে পারেন। |
Media3 ট্রান্সফরমার সম্পর্কে আরও জানুন
পরিচিতি ভিডিও
যারা এটি তৈরি করেছেন তাদের থেকে Media3 এর পরিচিতির জন্য নীচের ভিডিওটি দেখুন।
উপকারী সংজুক
- মিডিয়া বিকাশকারী কেন্দ্র
-
ExoPlayer
ডক্স - মাইগ্রেশন গাইড
- GitHub-এ AndroidX Media3
- Media3 মিডিয়া সেশনের নমুনা অ্যাপ
- ইউনিভার্সাল অ্যান্ড্রয়েড মিউজিক প্লেয়ার নমুনা অ্যাপ