fire emblem
کاربر سایت
امیدوارم زودتر انیمه بشه.View attachment 387041
مانگای VINLAND SAGA فردا به صروت رسمی با چپتر 220 به پایان میرسه .
مانگا چهار تا آرک داستانی اصلی داره که تا الان از دوتاش دو فصل انیمه ساخته شده و احتمالا دو فصل دیگه از دو آرک دیگش ساخته خواهد شد.
پس الان تازه وقت خوندن/ دیدنشهView attachment 387041
مانگای VINLAND SAGA فردا به صروت رسمی با چپتر 220 به پایان میرسه .
مانگا چهار تا آرک داستانی اصلی داره که تا الان از دوتاش دو فصل انیمه ساخته شده و احتمالا دو فصل دیگه از دو آرک دیگش ساخته خواهد شد.
بالاخره وقت خوندن و تموم کردنش رسید ..View attachment 387041
مانگای VINLAND SAGA فردا به صروت رسمی با چپتر 220 به پایان میرسه .
مانگا چهار تا آرک داستانی اصلی داره که تا الان از دوتاش دو فصل انیمه ساخته شده و احتمالا دو فصل دیگه از دو آرک دیگش ساخته خواهد شد.
Infinity Castle رو با کیفیت CAM تماشا کردم
کیفیت تصویر و صدا اونقدرا که فک میکردم بد نبود با اینکه همیشه ریلیز های اولیه کیفیتشون افتضاحه !!

یکی نوشته بود این نزدیک ترین چیزی که GTA6 برای صنعت گیمینگ هست.خوب ما هم دل رو زدیم به دریا و Ultimate Sin رو مرتکب شدیمInfinity Castle رو با کیفیت CAM تماشا کردم
کیفیت تصویر و صدا اونقدرا که فک میکردم بد نبود با اینکه همیشه ریلیز های اولیه کیفیتشون افتضاحه !!
2\3 فیلم اکشن خالص بود 3/1 پایانیش هم Absolute Cinema . در آخر فقط میتونم بگم این سگانه فیلم رسما به یکی از بهترین تریلوژی های صنعت سرگرمی تبدیل میشه شک نکنید . واقعا هیچ ایده ای ندارم قسمتای بعدی قرار ـه چه قدر پش ریزون باشن فقط میتونم بگم مادر بگرید
شاید به نظر چیز خاصی نیاد ولی تیتراژ پایانیش یـ نمه شبیه ترکای اصلی Fate/stay night: Heaven's Feel بود هر چند یـ بار کلیپا مبارزه saber alter vs berserker و Saber Alter Vs Rider رو میبینم و تمام وقت از جلوه های بصریش در کنار موسیقیش لذت میبرم . گفتم بگم که خانم Yuki Kajiura یکی از خفن ترین اهنگ ساز های حال حاضر هستش![]()
خب...دیروز که تعطیل بودش، فرصتی شد که این ایده ای که قبلاً گفته بودم....رو پیدا سازی کنم.
با کمک گرفتن از این آموزش قبلی...پروژه ی جدید تحت webpage گیتهاب درست کردم
View attachment 386646
شما فقط کافیه فایل srt زیرنویس انگلیسی رو بهش بدید...با کلید API جمنای..... برنامه دیگه خودش تمام مراحل اون آموزش رو مو به مو پیش میره...و فایل ترجمه رو بهتون تحویل میده.
لینک سورس پروژه در گیتهاب، همراه با جزئیات ساز و کار و آموزش استفاده.
GitHub - Kthree-K3/Anime-Subtitle-Translation-To-Persian-Webpage: ترجمه خودکار و حرفهای زیرنویس انیمه با Gemini 2.5 Pro
لینک Live WebPage پروژه.
ترجمه زیرنویس انیمه با Gemini
++++++++++++++
P.S
این فعلاً نسخه اولیه هستش...شاید یه سری مشکلاتی داشته باشه...پشاپیش ببخشید.
P.SS
این رو هم بگم که تو نسخه های بعدی فرمت های دیگه زیرنویس رو هم بهش اضافه میکنم...و حتی بتونه از روی خود فایل انیمه، به صورت local زیرنویس رو استخراج کنه و دیگه نیازی نباشه که به صورت دستی زیرنویس رو از انیمه رو با Subtitle Edit استخراج کنید
P.SS
توی گیتهاب اگه دوست داشتید Star بدید که پروژه بیشتر دیده بشه.
این پروژه رو دیروز آپدیت کردم....
مورد 1. یه مقدار توی تبدیل فایل ass به srt و بعدش به sub .... برنامه مشکل داشت و بعضی از زیرنویس هایی ass که استایل های سنگین داشتند رو خوب تبدیل نمیکرد، فایل خراب میشد و فشار روی مدل می آمد..و خطای overloaded مدل میداد.
برای همین یه مقدار ساختار تبدیل رو بهینه تر کردم..و الان مشکل ـش رفع شده....ولی اگه مشکل overloaded داشتید، زیرنویس ass رو بهم بدید تا بررسی ـش کنم.
مورد 2. یادم رفته بود که safety settings ها (Harassment, Hate, S*xually Explicit, Dangerous Content) رو غیر فعال کنم...اگه غیرفعال نباشه، مدل ممکنه اجازه خود سانسوری توی ترجمه رو به خودش بده.
مورد 3. قسمت خطاهای برنامه رو یه مقدار سر و سامون دادم...و خطای مهم API رو توضیح فارسی کردم.
مورد 4. آمار بازدید کنندگان و تعداد دفعات دانلود موفق هم اضافه کردم
لینک برنامه webpage
ترجمه خودکار زیرنویس انیمه با Gemini
و اون رو تبدیل کردم به آپشن توی تنظمیات پیشرفته برنامه
const GEMINI_API_HOST = 'generativelanguage.googleapis.com';
export default {
async fetch(request) {
const url = new URL(request.url);
const apiPath = url.pathname;
const apiParams = url.search;
const destinationURL = `https://${GEMINI_API_HOST}${apiPath}${apiParams}`;
const newRequest = new Request(destinationURL, {
method: request.method,
headers: request.headers,
body: request.body,
});
const response = await fetch(newRequest);
const newResponse = new Response(response.body, response);
newResponse.headers.set('Access-Control-Allow-Origin', '*');
newResponse.headers.set('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
newResponse.headers.set('Access-Control-Allow-Headers', 'Content-Type');
return newResponse;
},
};
مورد 1. که تو آپدیت قبل زده بودم....یه مقدار مشکل داشت و تایم فریم ها تو نتیجه ی نهایی قرار میگرفت..که بازم مشکل از تبدیل ass به srt بودش...یه مقدار تنظیم ـش کردم و میزان خطاهاش کمتر شده.
کلاً تبدیل این ass به srt با جاوا خیلی پیچیده هستش و منم از جاوا همیشه متنفر بودم...از چندتا هوش مصنوعی هم کمک گرفتم...ولی بجای اینکه بهتر بشه...همش خراب تر میشد.
الان کیفیت تبدیل اون روی 95% درصد هستش
{10675}{10704}پیام جدید دریافت شد
{10710}{10758}ولی بازم، یه جورایی باحال به نظر میاد.
{10769}{10800}مارینا-چان.
{10
{10871}{10908}این گجت شاد منه—
{10908}{10936}خفه شو.
{10960}{10989}سنجاق گل.

طبق این توضیحات.. فقط می تونم بگم حقیقتا پشم ریزونه کاری که کردیدآپدیت جدید پروژه ی ترجمهی خودکار با هوش مصنوعی Gemini
مورد 1. مسئله ی تبدیل فایل ass به srt تبدیل به یه کابوس برنامه نویسی شده بود برام...گیت هاب رو زیر رو کردم..چندتا کد js اوردم و روی پروژه تست کردم...کار میکرد ولی بازم از یه جا لنگ ـش میزد بیرون
تا اینکه تصمیم گرفتم که کلاً رویکرد ـم اشتباهه...باید به مسئله از یه نگاه دیگه وارد بشم.
تا الان من فقط قصد ـم این بود که صورت هوشمند متن رو از استایل ها جدا کنه....که این کار سخت و پیاده سازی اون با js کار رو سخت تر میکنه...
برای همین تصمیم گرفتم سیستم میکانیکی درست کنم...نشستم چندین زیرنویس مختلف رو دانلود کردم...و اونها رو با هم مقایسه کردم...به یه الگوریتم خیلی سادهی 4 مرحله ای رسیدم که مثل بنز این تبدیل رو انجام میده.
خلاصه الان سیستم تبدیل ass به srt با دقت 99درصد کار میکنه...
مورد 2. مورد دوم یکی از مسخره ترین موارد برنامه بودش...یعنی مشکل از برنامه نیست، مشکل از مدل هوش مصنوعی بودش
ساده بخوام توضیح بدم، با این وجود که تو پراپمت دستورات صریح و قوانین سفت و سخت گذاشته بودم که ترجمه باید کامل باشه و نباید زمانبندی رو دستکاری کنی
ولی بعضی اوقات ساختار خطوط رو خراب میکرد...یه خط دیالوگ زیرنویس از اول انیمه تا آخر انیمه رو تصویر بودش...چون عاقا (AI) تایمفریم پایانی یه خط رو عوض کرده )":
همین یه تیکه خراب کاری AI باعث میشد که اعصاب ببینده داغون بشه موقعه دیدن انیمه...(البته همیشه اینطوری نمیکنه و کاملاً تصادفی هستش)
برای همین گفتم دیگه نباید مستقیم از خروجی AI برای ساخت فایل srt استفاده کرد....یه تکنیک زدم.....توی برنامه یه حلقه زدم رو زیرنویس انگلیسی که دنبال ترجمه ها تو فایل خروجی AI باشه.
مثل یه پازل ترجمه ها رو کپی کنه بزاره اونطرف...اینطوری اگه از طرف AI خطی رو خراب کرده باشه...هرگز تو نتیجه ی نهایی نمیاد و ما انگلیسی اون رو داریم....
این همه رو توضیح دادم که خواستم بگم اگه دید خطی ترجمه نشده و انگلیسی بود، بدونید اینجا هوش مصنوعی خراب کاری کرده...(مثال پایین)
View attachment 387331
مورد 3. توی استریم کردن دریافت ترجمه، من خوب بافر سازی رو پیاده سازی نکرده بودم...و بخاطر مشکلات اینترنت، بعضی از خط ها کامل دریافت نمیشد(مثال زیر)
Code:{10675}{10704}پیام جدید دریافت شد {10710}{10758}ولی بازم، یه جورایی باحال به نظر میاد. {10769}{10800}مارینا-چان. {10 {10871}{10908}این گجت شاد منه— {10908}{10936}خفه شو. {10960}{10989}سنجاق گل.
همون خط خالی وسط باعث میشد حداقل 1 دقیقه زیرنویس کلاً از بالانس خارج بشه و موقعه تماشا تجربه ی بدی بوجود بیاد....الان دیگه با بهینه کردن بافر استریم این مشکل کامل رفع شده و خروجی اوکی هستش.
مورد 4. حذف خطوط خالی و مرتب سازی اون از نظر زمانبندی تا خوراک API تمیز باشه و بهونه ای برای خراب کردن خروجی نداشته باشه.
---------------------------
خب تقریباً میشه گفت الان به نسخه ی ایدهآل و کاملی که میخواستم رسیده...همهی باگ هایی که طی این چند روز دیدم رو رفع کردم و الان میشه راحت ازش استفاده کرد
لینک برنامه
ترجمه خودکار زیرنویس انیمه با Gemini
P.S
تشکر از همراهی دوستان...حتی ممنون از اینکه هیچ نظری ندادید![]()
