কাস্টমাইজেশন

ট্রান্সফরমারের আচরণ নিয়ন্ত্রণ করতে, আপনি API পৃষ্ঠের বিকল্পগুলি কনফিগার করতে পারেন বা ইন্টারফেসের কাস্টম বাস্তবায়ন লিখে এবং সেগুলিকে পাস করার মাধ্যমে কার্যকারিতার অংশগুলি সম্পূর্ণরূপে প্রতিস্থাপন করতে পারেন৷ এই পৃষ্ঠাটি কিছু উদাহরণ বর্ণনা করে৷

কোডেক কনফিগারেশন নিয়ন্ত্রণ করুন

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

কোটলিন

transformerBuilder
    .setEncoderFactory(
        DefaultEncoderFactory.Builder(context)
            .setEnableFallback(false)
            .build())

জাভা

transformerBuilder
    .setEncoderFactory(
        new DefaultEncoderFactory.Builder(context)
            .setEnableFallback(false)
            .build());

একইভাবে, DefaultEncoderFactory setRequestedVideoEncoderSettings বিকল্পের সাথে কাস্টম এনকোডিং সেটিংস ব্যবহার করে সমর্থন করে।

কোডেকগুলি কীভাবে সেট আপ করা হয় তার উপর সম্পূর্ণ নিয়ন্ত্রণ পেতে আপনি এনকোডার এবং ডিকোডারগুলির কারখানাগুলি সম্পূর্ণভাবে প্রতিস্থাপন করতে পারেন।

কাস্টম muxers

আপনি Transformer.setMuxerFactory কল করে মিডিয়া কন্টেইনার লেখার জন্য একটি কাস্টম মুক্সার সেট করতে পারেন। উদাহরণস্বরূপ, আপনি যদি অ্যাপ্লিকেশন স্তরে আপনার নিজস্ব মুক্সার প্রয়োগ করেন, আপনি একটি মোড়ক লিখতে পারেন যা Muxer ইন্টারফেস প্রয়োগ করে এবং তারপর এটিকে ট্রান্সফরমারে ইনজেক্ট করতে setMuxerFactory ব্যবহার করে।