- কেন আমি ডেমো অ্যাপে স্থানীয় ফাইল অ্যাক্সেস করতে পারি না?
- কেন একটি নির্দিষ্ট ডিভাইসে রপ্তানি ব্যর্থ হয়?
- ট্রান্সফরমার কি রিমোট মিডিয়া ট্রান্সফর্মিং (বা রেকর্ডিং) সমর্থন করে
- ট্রান্সফরমার কি 8k ইনপুট সমর্থন করে?
- প্ল্যাটফর্ম সামঞ্জস্যপূর্ণ মিডিয়া ট্রান্সকোডিংয়ের সাথে ট্রান্সফরমার কীভাবে সম্পর্কিত?
- আমি কিভাবে রপ্তানি বিলম্ব কমাতে বা থ্রুপুট বাড়াতে পারি?
কেন আমি ডেমো অ্যাপে স্থানীয় ফাইল অ্যাক্সেস করতে পারি না?
Android 11 (API লেভেল 30) থেকে স্কোপড স্টোরেজ এনফোর্সমেন্ট সরাসরি ফাইল সিস্টেম অ্যাক্সেসকে বাধা দেয়। বিকাশের সময় ম্যানুয়াল পরীক্ষার জন্য, ডেমো অ্যাপ ম্যানিফেস্টে বাহ্যিক স্টোরেজ পরিচালনার অনুমতি যোগ করে স্থানীয় ফাইলগুলি অ্যাক্সেস করা সম্ভব:
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
তারপর adb এর মাধ্যমে অনুমতি দিন:
adb shell appops set --uid androidx.media3.demo.transformer \ MANAGE_EXTERNAL_STORAGE allow
কেন একটি নির্দিষ্ট ডিভাইসে রপ্তানি ব্যর্থ হয়?
দয়া করে মিডিয়া3 ইস্যু ট্র্যাকারে সমস্যাটি পুনরুত্পাদন করার জন্য যথেষ্ট তথ্য সহ একটি সমস্যা ফাইল করুন৷ সময়ের সাথে সামঞ্জস্য উন্নত করতে ডিভাইস-নির্দিষ্ট সমস্যার সমাধানগুলি লাইব্রেরিতে যোগ করা যেতে পারে।
ট্রান্সফরমার কি রিমোট মিডিয়া ট্রান্সফর্মিং (বা রেকর্ডিং) সমর্থন করে?
ট্রান্সফরমার দূরবর্তী প্রগতিশীল স্ট্রীম সমর্থন করে, MP4 এর মত মিডিয়া ফাইল কন্টেনার সহ।
খুব খারাপ নেটওয়ার্ক পরিস্থিতিতে, রপ্তানি ব্যর্থ হতে পারে কারণ খুব দীর্ঘ সময়ের জন্য রিমোট মিডিয়া বাফার করা মুক্সারে চেকগুলিকে ট্রিগার করে যা পাইপলাইন আটকে গেছে তা সনাক্ত করার উদ্দেশ্যে। Transformer.Builder
এ maxDelayBetweenMuxerSamplesMs
সেট করে আপনি ডিফল্ট আচরণ ওভাররাইড করতে পারেন:
কোটলিন
Transformer.Builder(context) .setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET) .build()
জাভা
new Transformer.Builder(context) .setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET) .build();
C.TIME_UNSET
এ পাস করা সম্পূর্ণরূপে টাইমআউট সরিয়ে দেয়, কিন্তু যদি আপনার অ্যাপ চিপসেটগুলিতে চলে যেখানে MediaCodec
আটকে যেতে পারে আপনি একটি বড় অ-শূন্য টাইমআউট সেট করতে চাইতে পারেন।
ট্রান্সফরমার কি 8k ইনপুট সমর্থন করে?
ট্রান্সফরমারটি একটি বিন্যাস-অজ্ঞেয়বাদী উপায়ে প্রয়োগ করা হয়েছে, তাই এটি 8k ভিডিও পরিচালনা সীমাবদ্ধ করে না, তবে ডিভাইসে হার্ডওয়্যার ক্ষমতার অর্থ হতে পারে যে রপ্তানি সফল হতে পারে না। উদাহরণস্বরূপ, 8k ক্যাপচার করতে পারে এমন ডিভাইসগুলিতেও উপলব্ধ হার্ডওয়্যার কোডেক বা RAM সংস্থানগুলি অতিক্রম করার কারণে একটি 8k ভিডিও ডিকোড করা এবং পুনরায় এনকোড করা সম্ভব নাও হতে পারে।
প্ল্যাটফর্ম সামঞ্জস্যপূর্ণ মিডিয়া ট্রান্সকোডিংয়ের সাথে ট্রান্সফরমার কীভাবে সম্পর্কিত?
সামঞ্জস্যপূর্ণ মিডিয়া ট্রান্সকোডিং হল Android 12 (API লেভেল 31) এর একটি Android প্ল্যাটফর্ম বৈশিষ্ট্য যা অ্যাপ দ্বারা সমর্থিত ফর্ম্যাটে এক মিনিট পর্যন্ত দৈর্ঘ্যের মিডিয়াকে রূপান্তর করে। আপনি যদি এই বৈশিষ্ট্যটি ব্যবহার করার জন্য অপ্ট-ইন করেন, একটি বেমানান ফর্ম্যাটে একটি মিডিয়া ফাইল পড়ার ফলে এটিকে চাহিদা অনুযায়ী ট্রান্সকোড করা হয় এবং ফলাফলটি পরবর্তী রিড অপারেশনের জন্য ক্যাশে করা হয়।
ট্রান্সফরমার ফর্ম্যাট রূপান্তরকেও সমর্থন করে, তবে এটি একটি সমর্থন লাইব্রেরি হিসাবে উপলব্ধ এবং অ্যাপটির ট্রান্সকোডিং অপারেশনের উপর সম্পূর্ণ নিয়ন্ত্রণ রয়েছে।
আমি কিভাবে রপ্তানি বিলম্ব কমাতে বা থ্রুপুট বাড়াতে পারি?
ট্রান্সফরমার হার্ডওয়্যার-এক্সিলারেটেড ডিকোডিং এবং এনকোডিংয়ের জন্য MediaCodec
এবং ভিডিও ফ্রেম প্রক্রিয়াকরণের জন্য ওপেনজিএল-এর উপর নির্ভর করে। সাধারণ ডিভাইসে আমাদের পরিমাপের উপর ভিত্তি করে, ট্রান্সফরমারের থ্রুপুটে সীমিত ফ্যাক্টর হল হার্ডওয়্যার MediaCodec
এনকোডার থ্রুপুট যা হেভিওয়েট ইফেক্ট প্রসেসিং ছাড়াই ব্যবহারের ক্ষেত্রে। এটি অন্যান্য বাস্তবায়নকে একইভাবে প্রভাবিত করতে পারে। উদাহরণস্বরূপ, প্ল্যাটফর্ম সামঞ্জস্যপূর্ণ ট্রান্সকোডিং বৈশিষ্ট্য ট্রান্সফরমারের অনুরূপ কর্মক্ষমতা আছে।
ডেমো অ্যাপের ডিবাগ প্রিভিউ উল্লেখযোগ্যভাবে থ্রুপুট কমিয়ে দেয়, তাই পারফরম্যান্সের বাস্তবসম্মত ধারণা পেতে ডেমো অ্যাপের রিলিজ বিল্ড দিয়ে পরীক্ষা করার সময় পূর্বরূপ বৈশিষ্ট্যটি বন্ধ করুন।