প্রকল্প সম্পর্কে

Chewie একটি Flutter ভিডিও-প্লেয়ার UI প্যাকেজ যা নিম্ন-স্তরের video_player প্লাগইনের উপর নির্মিত। অ্যাপ্লিকেশনগুলি একটি VideoPlayerController শুরু এবং কনফিগার করে, এটি প্লেব্যাক বিকল্প সহ একটি ChewieController-এ পাস করে এবং তারপর একটি Chewie উইজেট প্রদর্শন করে। README জোর দেয় যে Chewie শুধুমাত্র ইন্টারফেস স্তর: video_player থেকে উদ্ভূত প্লেব্যাক ব্যর্থতা এবং PlatformExceptions এর দায়িত্ব এর বাইরে। ব্যবহারের পরে উভয় কন্ট্রোলার নিষ্পত্তি করা উচিত। প্যাকেজটি Material, Material desktop এবং Cupertino কন্ট্রোল স্কিন সরবরাহ করে। এর নথিভুক্ত বৈশিষ্ট্যগুলির মধ্যে রয়েছে অটোপ্লে, লুপিং, কনফিগারযোগ্য শুরু অবস্থান, লাইভ-স্ট্রিম UI, প্লেসহোল্ডার, কাস্টম প্রগ্রেস-বার রঙ, কাস্টম ওভারলে, ফুলস্ক্রিন রুট এবং ওরিয়েন্টেশন হ্যান্ডলিং, সিস্টেম ওভারলে ম্যানেজমেন্ট, ওয়েকলক/স্লিপ কন্ট্রোল, কাস্টম ত্রুটি উইজেট এবং কাস্টম কন্ট্রোল। অপশন শীট সাধারণত প্লেব্যাক গতি এবং সাবটাইটেল প্রকাশ করে, কিন্তু অ্যাপ্লিকেশনগুলি স্থানীয়কৃত OptionItem এন্ট্রি যোগ করতে পারে বা optionsBuilder দিয়ে শীটটি সম্পূর্ণরূপে প্রতিস্থাপন করতে পারে। pauseOnBackgroundTap বিকল্পটি ভিডিও এলাকায় ট্যাপ করলে প্লেব্যাক টগল করে। সাবটাইটেলগুলি সূচক, শুরু, শেষ এবং টেক্সট ক্ষেত্র সহ Subtitle অবজেক্টের একটি তালিকা হিসাবে সরবরাহ করা হয়। এগুলি ডিফল্টরূপে দেখানো যেতে পারে, SubtitleStyle দিয়ে স্টাইল করা যেতে পারে বা subtitleBuilder এর মাধ্যমে সম্পূর্ণরূপে রেন্ডার করা যেতে পারে। Chewie সাধারণ ইনলাইন WebVTT/SubRip মার্কআপ যেমন বোল্ড, ইটালিক, আন্ডারলাইন এবং ফন্ট রঙের ট্যাগ রেন্ডার করতে পারে। অসমর্থিত কিউ ট্যাগগুলি সরানো হয় যখন তাদের টেক্সট রাখা হয়, এস্কেপগুলি ডিকোড করা হয় এবং পার্সিং ইচ্ছাকৃতভাবে নমনীয়; মার্কআপ রেন্ডারিং অক্ষম করা যেতে পারে। অধ্যায়গুলি ChewieChapter অবজেক্টের একটি আরোহী-সময় তালিকা হিসাবে সরবরাহ করা হয়, যা হোভার বা স্ক্রাবিংয়ের সময় অধ্যায় শিরোনাম সহ সেগমেন্টেড প্রগ্রেস বার তৈরি করে। কাস্টিং সমর্থন কাস্ট বোতাম, ডিভাইস পিকার, কাস্টিং ওভারলে, লোকাল-টু-রিমোট হ্যান্ডওভার এবং কন্ট্রোল রাউটিং সরবরাহ করে, কিন্তু ইচ্ছাকৃতভাবে একটি Cast SDK প্রেরক অন্তর্ভুক্ত করে না। অ্যাপগুলি আবিষ্কার, সেশন অবস্থা এবং রিমোট প্লেব্যাকের জন্য ChewieCastController প্রয়োগ করে এবং রিসিভারের কাছে পৌঁছানো যায় এমন URL সহ CastMedia সরবরাহ করে। সংযোগে, Chewie লোকাল প্লেব্যাক বিরাম দেয়, বর্তমান অবস্থানে রিমোট মিডিয়া লোড করে, একটি ওভারলে দেখায় এবং প্লেব্যাক কমান্ড রুট করে; সংযোগ বিচ্ছিন্নতা প্রক্রিয়াটি বিপরীত করে। উদাহরণটিতে একটি জাল কাস্ট কন্ট্রোলার অন্তর্ভুক্ত রয়েছে এবং AirPlay রুট পিকারের মতো ক্ষেত্রে অতিরিক্ত কন্ট্রোল-বার উইজেট যুক্ত করা যেতে পারে। README Android, iOS এবং ওয়েব প্ল্যাটফর্ম ব্যাজ তালিকাভুক্ত করে, একটি উদাহরণ অ্যাপ্লিকেশন অন্তর্ভুক্ত করে, 0.9.0 সংস্করণের আগে থেকে মাইগ্রেশন নথিভুক্ত করে এবং প্ল্যাটফর্ম সতর্কতা নোট করে: একটি Android video_player বাফারিং-স্টেট সমস্যা কন্ট্রোল লুকাতে পারে এবং শুধুমাত্র আংশিক সমাধান রয়েছে, যখন iOS সিমুলেটর প্লেব্যাকের জন্য যথেষ্ট সাম্প্রতিক Flutter সংস্করণ প্রয়োজন।