এই নথিটি Android প্ল্যাটফর্ম দ্বারা সরবরাহ করা মিডিয়া কোডেক, কন্টেইনার এবং নেটওয়ার্ক প্রোটোকল সমর্থন বর্ণনা করে৷
নীচের টেবিলগুলি অ্যান্ড্রয়েড প্ল্যাটফর্মে তৈরি মিডিয়া ফর্ম্যাট সমর্থন বর্ণনা করে। হ্যাঁ মানে ফরম্যাটটি হ্যান্ডহেল্ড এবং ট্যাবলেটে উপলব্ধ যা সমস্ত Android সংস্করণে চলে৷ যেখানে একটি নির্দিষ্ট অ্যান্ড্রয়েড প্ল্যাটফর্ম নির্দিষ্ট করা আছে, সেই সংস্করণ এবং পরবর্তী সমস্ত সংস্করণে চলমান হ্যান্ডসেট এবং ট্যাবলেটগুলিতে ফর্ম্যাটটি উপলব্ধ। বিন্যাসটি পূর্ববর্তী সংস্করণগুলিতেও উপলব্ধ হতে পারে, তবে এটি নিশ্চিত নয়। হ্যান্ডসেট এবং ট্যাবলেট ব্যতীত অন্যান্য ফর্ম ফ্যাক্টরগুলিতে, মিডিয়া ফর্ম্যাট সমর্থন পরিবর্তিত হতে পারে।
মনে রাখবেন যে একটি নির্দিষ্ট মোবাইল ডিভাইস অতিরিক্ত ফর্ম্যাট বা ফাইল প্রকারগুলিকে সমর্থন করতে পারে যা এই টেবিলগুলিতে তালিকাভুক্ত নয়৷ উপরন্তু, যদি আপনি সরাসরি একটি MediaCodec ব্যবহার করেন, আপনি সমর্থিত ফাইল প্রকার এবং ধারক বিন্যাস নির্বিশেষে উপলব্ধ মিডিয়া বিন্যাসগুলির মধ্যে যেকোনো একটি অ্যাক্সেস করতে পারেন।
অডিও সমর্থন
বিন্যাস | এনকোডার | ডিকোডার | বিস্তারিত | নথির ধরণ ধারক বিন্যাস |
---|---|---|---|---|
এএসি এলসি | হ্যাঁ | হ্যাঁ | 8 থেকে 48 kHz পর্যন্ত স্ট্যান্ডার্ড স্যাম্পলিং রেট সহ mono/stereo/5.0/5.1 সামগ্রীর জন্য সমর্থন। | • 3GPP (.3gp) • ADTS raw AAC (.aac, Android 3.1+ এ ডিকোড, Android 4.0+ এ এনকোড, ADIF সমর্থিত নয়) • MPEG-TS (.ts, অনুসন্ধানযোগ্য নয়, Android 3.0+) |
HE-AACv1 (AAC+) | Android 4.1+ | হ্যাঁ | ||
HE-AACv2 (বর্ধিত AAC+) | হ্যাঁ | 8 থেকে 48 kHz পর্যন্ত স্ট্যান্ডার্ড স্যাম্পলিং রেট সহ স্টেরিও/5.0/5.1 সামগ্রীর জন্য সমর্থন। | ||
xHE-AAC | Android 9+ | 8 থেকে 48 kHz পর্যন্ত স্ট্যান্ডার্ড স্যাম্পলিং রেট সহ 8ch পর্যন্ত সামগ্রীর জন্য সমর্থন | ||
AAC ELD (বর্ধিত কম বিলম্ব AAC) | Android 4.1+ | Android 4.1+ | 16 থেকে 48 kHz পর্যন্ত স্ট্যান্ডার্ড স্যাম্পলিং রেট সহ মনো/স্টিরিও সামগ্রীর জন্য সমর্থন | |
এএমআর-এনবি | হ্যাঁ | হ্যাঁ | 4.75 থেকে 12.2 kbps নমুনা @ 8kHz | • 3GPP (.3gp) • AMR (.amr) |
AMR-WB | হ্যাঁ | হ্যাঁ | 9 হার 6.60 kbit/s থেকে 23.85 kbit/s নমুনা @ 16kHz | |
FLAC | Android 4.1+ | Android 3.1+ | মনো/স্টিরিও (কোন মাল্টিচ্যানেল নেই)। 48 kHz পর্যন্ত নমুনা হার (কিন্তু 44.1 kHz আউটপুট সহ ডিভাইসগুলিতে 44.1 kHz পর্যন্ত সুপারিশ করা হয়, কারণ 48 থেকে 44.1 kHz ডাউনস্যাম্পলারে লো-পাস ফিল্টার অন্তর্ভুক্ত নয়)। 16-বিট প্রস্তাবিত; 24-বিটের জন্য কোন বিকার প্রয়োগ করা হয়নি। | • FLAC (.flac) • MPEG-4 (.mp4, .m4a, Android 10+) |
MIDI | হ্যাঁ | MIDI প্রকার 0 এবং 1. DLS সংস্করণ 1 এবং 2. XMF এবং মোবাইল XMF। RTTTL/RTX, OTA, এবং iMelody রিংটোন ফরম্যাটের জন্য সমর্থন | • টাইপ 0 এবং 1 (.mid, .xmf, .mxmf) • RTTTL/RTX (.rtttl, .rtx) • OTA (.ota) • iMelody (.imy) | |
MP3 | হ্যাঁ | মনো/স্টিরিও 8-320Kbps ধ্রুবক (CBR) বা পরিবর্তনশীল বিট-রেট (VBR) | • MP3 (.mp3) • MPEG-4 (.mp4, .m4a, Android 10+) • Matroska (.mkv, Android 10+) | |
ওপাস | Android 10+ | Android 5.0+ | • Ogg (.ogg) • Matroska (.mkv) | |
পিসিএম/ওয়েভ | Android 4.1+ | হ্যাঁ | 8- এবং 16-বিট লিনিয়ার PCM (হার্ডওয়্যারের সীমা পর্যন্ত হার)। 8000, 16000 এবং 44100 Hz এ কাঁচা PCM রেকর্ডিংয়ের জন্য স্যাম্পলিং রেট। | তরঙ্গ (.wav) |
ভরবিস | হ্যাঁ | • Ogg (.ogg) • Matroska (.mkv, Android 4.0+) • MPEG-4 (.mp4, .m4a, Android 10+) |
ভিডিও সমর্থন
ভিডিও ফরম্যাট
বিন্যাস | এনকোডার | ডিকোডার | বিস্তারিত | নথির ধরণ ধারক বিন্যাস |
---|---|---|---|---|
H.263 | হ্যাঁ | হ্যাঁ | Android 7.0+ এ H.263 এর জন্য সমর্থন ঐচ্ছিক | • 3GPP (.3gp) • MPEG-4 (.mp4) • Matroska (.mkv) |
H.264 AVC বেসলাইন প্রোফাইল (BP) | Android 3.0+ | হ্যাঁ | • 3GPP (.3gp) • MPEG-4 (.mp4) • MPEG-TS (.ts, শুধুমাত্র AAC অডিও, অনুসন্ধানযোগ্য নয়, Android 3.0+) • Matroska (.mkv) | |
H.264 AVC প্রধান প্রোফাইল (এমপি) | Android 6.0+ | হ্যাঁ | ডিকোডার প্রয়োজন, এনকোডার সুপারিশ করা হয়. | |
H.265 HEVC | Android 5.0+ | মোবাইল ডিভাইসের জন্য প্রধান প্রোফাইল লেভেল 3 এবং অ্যান্ড্রয়েড টিভির জন্য প্রধান প্রোফাইল লেভেল 4.1 | • MPEG-4 (.mp4) • Matroska (.mkv) | |
MPEG-4 SP | হ্যাঁ | 3GPP (.3gp) | ||
VP8 | Android 4.3+ | অ্যান্ড্রয়েড 2.3.3+ | শুধুমাত্র Android 4.0 এবং তার উপরে স্ট্রিমযোগ্য | • WebM (.webm) • Matroska (.mkv, Android 4.0+) |
VP9 | Android 4.4+ | • WebM (.webm) • Matroska (.mkv) | ||
AV1 | Android 14+ | Android 10+ | এনকোডার এবং ডিকোডার Android 14 দিয়ে শুরু হওয়া বাধ্যতামূলক। | • MPEG-4 (.mp4) • Matroska (.mkv) |
ভিডিও এনকোডিং সুপারিশ
নীচের টেবিলটি H.264 বেসলাইন প্রোফাইল কোডেক ব্যবহার করে প্লেব্যাকের জন্য প্রস্তাবিত Android মিডিয়া ফ্রেমওয়ার্ক ভিডিও এনকোডিং প্রোফাইল এবং প্যারামিটারগুলি তালিকাভুক্ত করে৷ একই সুপারিশগুলি প্রধান প্রোফাইল কোডেকের ক্ষেত্রে প্রযোজ্য, যা শুধুমাত্র Android 6.0 এবং পরবর্তী সংস্করণে উপলব্ধ৷
SD (নিম্ন গুণমান) | SD (উচ্চ মানের) | HD 720p (সমস্ত ডিভাইসে N/A) | |
---|---|---|---|
ভিডিও রেজল্যুশন | 176 x 144 পিক্সেল | 480 x 360 px | 1280 x 720 পিক্সেল |
ভিডিও ফ্রেম রেট | 12 fps | 30 fps | 30 fps |
ভিডিও বিটরেট | 56 Kbps | 500 Kbps | 2 এমবিপিএস |
অডিও কোডেক | AAC-LC | AAC-LC | AAC-LC |
অডিও চ্যানেল | 1 (মনো) | 2 (স্টিরিও) | 2 (স্টিরিও) |
অডিও বিটরেট | 24 Kbps | 128 Kbps | 192 Kbps |
নীচের টেবিলে Android মিডিয়া ফ্রেমওয়ার্ক ভিডিও এনকোডিং প্রোফাইল এবং VP8 মিডিয়া কোডেক ব্যবহার করে প্লেব্যাকের জন্য প্রস্তাবিত প্যারামিটারগুলি তালিকাভুক্ত করা হয়েছে৷
SD (নিম্ন গুণমান) | SD (উচ্চ মানের) | HD 720p (সমস্ত ডিভাইসে N/A) | HD 1080p (সমস্ত ডিভাইসে N/A) | |
---|---|---|---|---|
ভিডিও রেজল্যুশন | 320 x 180 পিক্সেল | 640 x 360 পিক্সেল | 1280 x 720 পিক্সেল | 1920 x 1080 পিক্সেল |
ভিডিও ফ্রেম রেট | 30 fps | 30 fps | 30 fps | 30 fps |
ভিডিও বিটরেট | 800 Kbps | 2 এমবিপিএস | 4 এমবিপিএস | 10 Mbps |
ভিডিও ডিকোডিং সুপারিশ
ডিভাইস বাস্তবায়নকে অবশ্যই সকল VP8, VP9, H.264, এবং H.265 কোডেকের জন্য একই স্ট্রিমের মধ্যে স্ট্যান্ডার্ড অ্যান্ড্রয়েড API-এর মাধ্যমে গতিশীল ভিডিও রেজোলিউশন এবং ফ্রেম রেট স্যুইচিং সমর্থন করতে হবে এবং প্রতিটি কোডেক দ্বারা সমর্থিত সর্বাধিক রেজোলিউশন পর্যন্ত যন্ত্র।
ডলবি ভিশন ডিকোডারকে সমর্থন করে এমন বাস্তবায়নগুলি অবশ্যই এই নির্দেশিকাগুলি অনুসরণ করবে:
- একটি ডলবি ভিশন-সক্ষম এক্সট্র্যাক্টর প্রদান করুন।
- ডিভাইস স্ক্রিনে বা একটি স্ট্যান্ডার্ড ভিডিও আউটপুট পোর্টে (যেমন, HDMI) সঠিকভাবে ডলবি ভিশন সামগ্রী প্রদর্শন করুন।
- সম্মিলিত ডলবি ভিশন স্তরের ট্র্যাক সূচকের মতোই ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ বেস-লেয়ার(গুলি) (যদি উপস্থিত থাকে) এর ট্র্যাক সূচক সেট করুন৷
ভিডিও স্ট্রিমিং প্রয়োজনীয়তা
HTTP বা RTSP-এর মাধ্যমে স্ট্রিম করা ভিডিও সামগ্রীর জন্য অতিরিক্ত প্রয়োজনীয়তা রয়েছে:
- 3GPP এবং MPEG-4 কন্টেইনারগুলির জন্য,
moov
পরমাণুকে অবশ্যই যেকোনmdat
পরমাণুর আগে হতে হবে, কিন্তু অবশ্যইftyp
পরমাণুকে সফল করতে হবে। - 3GPP, MPEG-4, এবং WebM কন্টেইনারগুলির জন্য, একই সময়ের অফসেটের সাথে সম্পর্কিত অডিও এবং ভিডিও নমুনাগুলি 500 KB এর বেশি নাও হতে পারে৷ এই অডিও/ভিডিও ড্রিফ্ট কমাতে, ছোট খণ্ড আকারে অডিও এবং ভিডিও ইন্টারলিভ করার কথা বিবেচনা করুন।
ইমেজ সমর্থন
বিন্যাস | এনকোডার | ডিকোডার | বিস্তারিত | নথির ধরণ ধারক বিন্যাস |
---|---|---|---|---|
বিএমপি | হ্যাঁ | BMP (.bmp) | ||
জিআইএফ | হ্যাঁ | GIF (.gif) | ||
জেপিইজি | হ্যাঁ | হ্যাঁ | বেস+প্রগতিশীল | JPEG (.jpg) |
পিএনজি | হ্যাঁ | হ্যাঁ | PNG (.png) | |
ওয়েবপি | Android 4.0+ ক্ষতিহীন: Android 10+ স্বচ্ছতা: Android 4.2.1+ | Android 4.0+ ক্ষতিহীন: Android 4.2.1+ স্বচ্ছতা: Android 4.2.1+ | লসলেস এনকোডিং 100 এর গুণমান ব্যবহার করে Android 10 এ অর্জন করা যেতে পারে। | WebP (.webp) |
HEIF | Android 8.0+ | HEIF (.heic; .heif) | ||
AVIF (বেসলাইন প্রোফাইল) | Android 14+ | Android 14+ | এনকোডার এবং ডিকোডার Android 14 দিয়ে শুরু হওয়া বাধ্যতামূলক। | AVIF (.avif) |
নেটওয়ার্ক প্রোটোকল
নিম্নলিখিত নেটওয়ার্ক প্রোটোকলগুলি অডিও এবং ভিডিও প্লেব্যাকের জন্য সমর্থিত:
- RTSP (RTP, SDP)
- HTTP/HTTPS প্রগতিশীল স্ট্রিমিং
- HTTP/HTTPS লাইভ স্ট্রিমিং ড্রাফ্ট প্রোটোকল :
- শুধুমাত্র MPEG-2 TS মিডিয়া ফাইল
- প্রোটোকল সংস্করণ 3 Android 4.0 এবং তার উপরে
- প্রোটোকল সংস্করণ 2 Android 3.x
- Android 3.0 এর আগে সমর্থিত নয়
দ্রষ্টব্য: Android 3.1 এর আগে HTTPS সমর্থিত নয়।
HDR ভিডিও ফরম্যাট
OEMগুলি Android HDR আর্কিটেকচারের সাথে বেছে নেওয়া যেকোনো HDR ফর্ম্যাটকে সক্ষম করতে পারে, যা HDR ফর্ম্যাটের মূল চাহিদাগুলি প্রদান করে: 10-বিট বাফার, মেটাডেটা (স্ট্যাটিক, গতিশীল, এবং কিছুই নয়), স্থানান্তর ফাংশন এবং রঙের স্থান হ্যান্ডলিং৷
ডেভেলপারদের জন্য সামঞ্জস্য নিশ্চিত করতে এবং মূল HDR ব্যবহারের ক্ষেত্রে ঠিকানা নিশ্চিত করতে, আমরা HDR সমর্থন করে এমন ডিভাইসগুলিতে কয়েকটি বেস ফর্ম্যাট সমর্থন করতে OEM-এর প্রয়োজন:
- প্রফেশনাল কন্টেন্ট প্লেব্যাকের জন্য, যেমন স্ট্রিমিং মুভি, আমাদের HDR10 প্রয়োজন।
- ব্যবহারকারী-উত্পাদিত সামগ্রী ক্যাপচার এবং প্লেব্যাকের জন্য, আমাদের Android ডিভাইস জুড়ে সামঞ্জস্যপূর্ণ অভিজ্ঞতা প্রদানের জন্য HLG10 প্রয়োজন।
যে OEMগুলি HDR সমর্থন যোগ করে তাদের অবশ্যই এই ফর্ম্যাটগুলিকে সমর্থন করতে হবে, তবে HDR10+ বা ডলবি ভিশনের মতো অতিরিক্ত ফর্ম্যাটগুলিকেও সমর্থন করতে পারে৷
বিন্যাস | স্থানান্তর ফাংশন | মেটাডেটা | কোডেক | একটু গভীর |
---|---|---|---|---|
HLG10 | এইচএলজি | না | এইচভিইসি | 10-বিট |
HDR10 | পিকিউ | স্থির | এইচভিইসি | 10-বিট |
HDR10+ | পিকিউ | স্থির | এইচভিইসি | 10-বিট |
ডলবি ভিশন 8.4 | এইচএলজি | গতিশীল | এইচভিইসি | 10-বিট |
ফরম্যাট হ্যান্ডলিং সুপারিশ
ক্যাপচার ফরম্যাট | আপলোড বিন্যাস | ডেলিভারি ফরম্যাট |
এইচএলজি | অ্যাপ ব্যাকএন্ড সমর্থন HDR HLG | HDR (HLG) সমর্থনকারী ডিভাইসগুলি: এইচএলজি ডিভাইসগুলি HDR সমর্থন করে (কোন HLG সমর্থন করে না শুধুমাত্র PQ): SDR (ব্যাকএন্ডে HLG থেকে SDR পর্যন্ত টোন ম্যাপ) যে ডিভাইসগুলি HDR সমর্থন করে না: SDR (ব্যাকএন্ডে HLG থেকে SDR পর্যন্ত টোন ম্যাপ) |
কেস 2 ব্যবহার করুন: নেটিভ ক্যামেরা ক্যাপচার বা ব্যবহারকারীর গ্যালারি থেকে আমদানি করুন (অ্যাপ ব্যাকএন্ড HDR সমর্থন করে)
ক্যাপচার ফরম্যাট | আপলোড বিন্যাস | ডেলিভারি ফরম্যাট |
এইচএলজি | এইচএলজি | ইন-অ্যাপ ক্যাপচার ব্যবহারের ক্ষেত্রে একই |
HDR10+ | এইচএলজি ট্রান্সফরমার API ব্যবহার করে আপলোড করার আগে HDR10+ (PQ) থেকে HLG পর্যন্ত টোন ম্যাপ | ইন-অ্যাপ ক্যাপচার ব্যবহারের ক্ষেত্রে একই |
DV8.4 | এইচএলজি (DV8.4 HLG ব্যবহার করে এবং বিটস্ট্রিম HLG হিসাবে আচরণ করবে তাই কোন টোন ম্যাপিংয়ের প্রয়োজন নেই) | ইন-অ্যাপ ক্যাপচার ব্যবহারের ক্ষেত্রে একই |
কেস 3 ব্যবহার করুন: অ্যাপ ব্যাকএন্ড HDR সমর্থন করে না
ক্যাপচার ফরম্যাট | আপলোড বিন্যাস | ডেলিভারি ফরম্যাট |
যেকোন ফরম্যাট | এসডিআর ট্রান্সফরমার API ব্যবহার করে আপলোড করার আগে HLG থেকে SDR-এ টোন ম্যাপ | এসডিআর |