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

## সারসংক্ষেপ Tachikaze হলো এমন একটি টুল যা ইতিমধ্যে mp4-তে রূপান্তরিত রেকর্ডিং ফাইল থেকে পুনরায় এনকোড না করে বিজ্ঞাপন কাট করে। এটি Amatsukaze দ্বারা গভীরভাবে প্রভাবিত এবং তৈরি করা হয়েছে এই উদ্দেশ্যে যে, "একবার mp4-তে রূপান্তরিত রেকর্ডিং-এর ক্ষেত্রেও পরে Amatsukaze-ধাঁচের বিজ্ঞাপন কাট প্রয়োগ করতে চাই" এবং "একই ধরনের প্রক্রিয়াকে macOS / Linux-এও চালানো যায়"। প্রধানত টুলটি "Trim তালিকা → লসলেস mp4 কাটআউট" কাজটি করে, আর বিজ্ঞাপন শনাক্তকরণের মূল কাজটি বিদ্যমান টুল (chapter_exe → join_logo_scp)-এর উপর ছেড়ে দেওয়া হয়। ## ব্যবহার পদ্ধতি সবচেয়ে ছোট রান উদাহরণ: ```console $ tachikaze auto IN.mp4 -o OUT.mp4 ``` `auto` কোনো ইন্টারঅ্যাকশন ছাড়াই `prepare` → `analyze` → gate → `cut` → `remap-subs` চালায়। gate যদি সন্দেহজনক বলে判定 করে, তবে cut না করে প্রক্রিয়া বন্ধ করে, এবং `--ignore-gate` দিয়ে এই判定 উপেক্ষা করা যায়। `analyze`/`auto` ডিফল্টভাবে লোগো শনাক্তকরণ চালু রাখে এবং ইনপুট থেকে লোগো আয়তক্ষেত্র স্বয়ংক্রিয়ভাবে অনুমান করে (`--no-logo` দিয়ে নিষ্ক্রিয় করা যায়)। যদি মধ্যবর্তী判定 প্রয়োজন হয়, তবে `analyze` দিয়ে Trim তালিকা আউটপুট করে, এবং `cut` দিয়ে কাটআউট করার দ্বি-স্তর পদ্ধতিও ব্যবহার করা যায়। একাধিক ফাইল প্রক্রিয়াকরণ শেল লুপের উপর ছেড়ে দেওয়ার কথা বিবেচনা করে, আউটপুট নাম `*_CMcut.mp4`-এ স্থির করে glob-এর পুনরায় গ্রহণ এড়ানোর উদাহরণ দেখানো হয়েছে। ## নির্ভরতা প্রধান টুল ছাড়াও, নিম্নলিখিত বাহ্যিক টুলগুলো `PATH`-এ প্রয়োজন। - chapter_exe — নীরবতা ও দৃশ্য পরিবর্তন শনাক্তকরণ - join_logo_scp — বিজ্ঞাপন判定 (Trim তৈরি) - dtvindex — সাধারণ ফ্রেম নম্বরের সূচক - ffmpeg / ffprobe — prepare, যাচাই ইত্যাদি বিল্ড করা হয় `cargo build --release --locked`, ইনস্টল করা হয় `make install` (ডিফল্ট /usr/local, PREFIX পরিবর্তনযোগ্য)। macOS টুলচেইন নির্দেশনা এবং Docker ডকুমেন্টেশনও রয়েছে (Dockerfile প্রকাশিত, কিন্তু বিল্ড-করা ইমেজ রেজিস্ট্রি হিসেবে বিতরণ করা হয় না)। ## পরিচিত সীমাবদ্ধতা - যাচাইকৃত পরিবেশ হলো macOS (Apple Silicon) এবং Linux (arm64, Docker)। Windows সমর্থিত নয় - ভিডিও H.264, অডিও mp4-atom যে কোডেক চেনে (প্রতিনিধি Opus / AAC) - GOP-কে কি-ফ্রেম সীমানায় রাউন্ড করার কারণে, কাট সীমানার কাছে গড়ে 2.1~2.5 সেকেন্ড বিজ্ঞাপন থেকে যায় (গ্রহণযোগ্য নীতি) - প্রতি প্রসেসে একটি ইনপুট ## লাইসেন্স ও স্বীকৃতি প্রধান টুল MIT (Copyright (c) 2026 Masayuki Mizuno)। Amatsukaze-এর মূল অংশ পোর্ট করা হয়নি, বরং অ্যালগরিদম ও পাইপলাইনের রেফারেন্স ও অনুপ্রেরণার উৎস হিসেবে ব্যবহার করা হয়েছে। লোগো শনাক্তকরণের কিছু অংশ (src/logo/score.rs, src/logo/interval.rs) Amatsukaze-এর MIT কোডের পোর্ট, যেখানে মূল কপিরাইট নোটিশ বজায় রাখা হয়েছে। লাইসেন্স অজানা delogo-ভিত্তিক কোড পোর্ট করা হয়নি, বরং সমীকরণ থেকে নতুন করে লেখা হয়েছে। রানটাইমে আহ্বান করা বাহ্যিক টুল (chapter_exe / join_logo_scp / dtvindex / ffmpeg) প্রায়শই GPL-ভিত্তিক, কিন্তু আলাদা প্রসেস হিসেবে চালানো হয়, লিংক বা একই অ্যাড্রেস স্পেস শেয়ার করা হয় না, শুধুমাত্র ফাইল এবং কমান্ড লাইন আর্গুমেন্ট দিয়ে তথ্য আদান-প্রদান হয়।