حل مشکل زیرنویس های خراب و تبدیل آنها به فارسی

62
زیرنویس خراب و نامفهوم

زیرنویس خراب و نامفهوم

تغییر و تصحیح انکدینگ زیرنویس های خراب و تبدیل آنها به فارسی UTF-8

خیلی مواقع برایتان پیش آمده که زیرنویس یک فیلم موقع پخش به شکل کاراکترهای نامفهوم نمایش داده می شود. مانند تصویر زیر

زیرنویس خراب و نامفهوم
 زیرنویس خراب و نامفهوم

در چنین مواقعی سیستم کدگزاری متن فایل زیرنویس عموماً بر روی انکدینگ ANSI و یا دیگر استانداردهای انکدینگ تنظیم شده است. خب برای هل مشکل بهترین روش این است که سیستم انکدینگ فایل مورد نظر را به UTF-8 که به آن Unicode نیز می گویند تغییر دهیم. خوبی انکدینگ یونیکد در این است که در تمام دستگاه های پخش کننده امروزی از زبان فارسی بدرستی پشتیبانی میکند.

روش اول: تغییر انکدینگ (Encoding) زیرنویس با استفاده از نرم افزار Microsoft Word

برای حل مشکل می توانید از راه حل قدم به قدم زیر استفاده کنید. توضیح فنی این مشکل به این موضوع بر می گردد که فایل خراب با انکودینگ Ansi و یا چیزی غیر از Unicode یا UTF8 ذخیره شده که باید تبدیل گردد.


  1. برنامه ی Microsoft Office Word رو باز کنید.
  2. بسته به نسخه ی شما، در نسخه ی 2003 وارد File -> Open و یا در نسخه های بالاتر وارد علامت Office در گوشه ی سمت چب بالا و سپس Open شوید.
  3. زیرنویس مورد نظر رو انتخاب کرده و باز کنید.
  4. در صفحه ی باز شده ” File Conversion – نام زیرنویس.srt” گزینه های Right-to-Left و Other Encoding را انتخاب کنید.
  5. در لیست Other Encoding، گزینه ی Unicode UTF-8 و یا Arabic Windows رو انتخاب کنید. (هر کدام را انتخاب کردید و دیدید در صفحه ی زیری نوشته ها به صورت فارسی در آمد، همون رو گزینه ی مورد نظر قرار بدید.)
  6. ترکیب دکمه ی Control+A رو بزنید تا تمامی نوشته ها انتخاب شود.
  7. برنامه ی Notepad رو باز کنید و نوشته ها را در آن کپی کنید.
  8. در Notepad به File -> Save as بروید.
  9. در قسمت Save as type گزینه ی All files و در قسمت Encoding گزینه ی UTF-8 رو انتخاب کنید.
  10. حالا نام مورد نظر خود را بنویسید و در پایانش به آن .srt را اضافه کنید و فایل رو ذخیره کنید، مانند: Paranormal Activity.srt
  11. فیلم را با برنامه ی مورد نظر مانند KMPlayer اجرا کنید و زیرنویس را به داخل Player بیاندازید تا نمایش دهد.

روش دوم تغییر انکدینگ (Encoding) زیرنویس با استفاده از نرم افزار Notepad++

نرم افزار نوتپد پلاس پلاس یکی از ویرایشگرهای متن رایگان و متن باز می باشد که در بین برنامه نویسان و توسعه دهندگان وب بسیار پر طرفدار است. کاربرد اصلی notepad++ در برنامه نویسی است اما ویژگی های بسیار زیاد آن باعث شده تا کاربران عادی هم از آن به عنوان جایگزین قدرتمند نرم افزار notepad ویندوز استفاده کنند. تیم نوتیف به شما توصیه می کند که حتماً این نرم افزار کم حجم و کاربردی را از وب سایت آن دانلود کرده و نصب و استفاده نمایید.

نرم افزار ویرایشگر متن Notepad++
نرم افزار ویرایشگر متن Notepad++ نرم افزار ویرایشگر متن Notepad++

و حالا آموزش قدم به قدم تغییر انکدینگ (Encoding) فایل زیرنویس با استفاده از نرم افزار Notepad++:

  1. ابتدا فایل زیرنویس را در نرم افزار نوت پد پلاس پلاس باز کنید. برای این کار notepad++ را اجرا کرده و از منوی فایل گزینه open، فایل زیرنویس را پیدا کرده و باز کنید. ویا بر روی فایل زیرنویس خراب راست کلیک کرده و گزینه Edit with Notepad++ را انتخاب کنید.
  2. پس از اینکه فایل را باز کردید، منوی Encoding را باز کنید. این منو دو قسمت دارد. قسمت بالا وضعیت انکدینگ فعلی فایل را مشخص می کند که می توانید بدون تبدیل انکدینگ فایل را تغییر دهید. عجله نکنید تغییر انکدینگ در این قسمت راه حل مشکل ما نیست و اگر آن را انجام دهید متوجه حرف من خواهید شد. کلید مشکل ما در قسمت دوم است. برای تغییر انکدینگ فایل زیرنویس به UTF-8 باید از قسمت دوم گزینه Convert to UTF-8 را انتخاب کنید تا خود نوت پد پلاس پلاس کار تغییر انکدینگ را بصورت خودکار انجام دهد.
  3. فایل را ذخیره کنید (Ctrl + S).
  4. کار تمام است به همین راحتی.
تغییر انکدینگ فایل به UTF-8 در Notepad++
تغییر انکدینگ فایل به UTF-8 در Notepad++ تغییر انکدینگ فایل به UTF-8 در Notepad++

امیدوارم این آموزش مفید واقع شده باشد.

62 thoughts on “حل مشکل زیرنویس های خراب و تبدیل آنها به فارسی

      1. با سلام مممنون از اموزش یه سوال چه طور فونت زیر نویسو تغیر بدیم همه جا تغیر فونتو تو KMPگذاشتن ولی هیچ جا تغیر فونت خود زیر نویسو نذاشتن وقتی می چسبونی به فیلم همون فونت معمولی میاد مثلا تو مدیا پلیر همون فونت معمولیه می شه با نوت پت کاریش کرد و چه طوری یه کلمه تو جملرو تو زیر نویس رنگشو تغیر بدیم مثل خون که قرمز بنویسیم

        1. سلام برای تغییر فونت باید tag نویسی رو بلد باشید که یکم کار پیچیده ای هست. البته برنامه های زیادی برای اینکار هست که معروف ترینشون Subtitle Workshop است.

  1. سلام
    قبلا از این روش برای درست کردن زیر نویس استفاده کردم و جواب داد ولی الان زیر نویس دارم با فرمت.sub اصلا قابل درست شدن نیست باید چه کرد؟؟؟

    1. سلام فرمت SUB یکی از فرمت های قدیمی زیرنویس هست که اکثراً از روی دیسک های DVD ریپ می شوند، بهترین روش این است که ابتدا فرمت SUB رو توسط یک ابزار به SRT تبدیل کنید و برای نمونه می توانید از سایت http://www.subtitlefix.com استفاده کنید.

  2. با سلام
    من برنامه نت پد رو باز میکنم و میخوام با فرمت ansi ذخیره کنم ولی تبدیل به علامت سوال میشه
    یه پیغام قبلش میده البته و میگه فایلت یونی کده
    ولی با فرمت دلخواه درست نمیشه
    راهی داره؟

    1. سلام دوست عزیز فرمت Ansi مربوط به استاندارد ملی آمریکا است و زبان فارسی و کاراکترهای آن را پشتیبانی نمی کند به همین دلیل کاراکترها تبدیل به علامت سوال می شوند فایل های زیر نویس فارسی حتماً باید با فرمت UniCode ذخیره شوند.

  3. با سلام خدمت شما
    ممنون از آموزش عالیتون.بنده انجام دادم درست شد و با این کار اولا دیگه لازم نیست تو کنترل پنل ویندوز دستکاری کنیم و دوما زیر نویس تو بیشتر دستگاها مثل تی وی و ر*س*ی*و*ر درست نمایش داده میشه.

  4. آقا دمت گرم. من کلی با این زیرنویسا تو تلویزیون مشکل داشتم. هر چی encoding هم عوض میکردم مشکل حل نمیشد. با این روش جواب گرفتم. واقعا کارم راه افتاد.

  5. سلام
    بسیار سپاسگذارم از راهنمایی خوبتون
    اما یه سوال داشتم:
    من برای تقویت زبان اینگلیسی احتیاج دارم تا زیرنوس اینگلیسی کارتون ها رو به صورت فایل ورد در بیارم تا مطالعه کنم و از اونها پرینت بگیرم
    این راهنمایی تون خیلی به من کمک کرد اما در مورد با suv و پسوند های دیگه چه کار باید کرد که به فایل ورد وارد شود؟
    لطفا راهنمایی کنید…
    ممنون.

  6. سلام–من ال ای دی 42lm58000-tc دارم قبلا فیلمهای که دانلود می کردم زیر نویس ان را دانلود می کردم بعد فابل زیر نویس را unicode می کردم بعد هم نام با فیلم بعد با نرم افزار mkv merg با هم ادغام می کردم نمی دانم حالا از هر روشی امتحان می کنم هیچ عنوان زیر نویس توی ال ای دی نمی اید توی رایانه مشکلی نیست توی ال ای دی پخش نمی شود–چکار کنم—

    1. سلام اینگونه موارد نیاز به بازدید حضوری دارند و جزء موارد خاص دسته بندی می شوند.

    2. سلام– دوباره–
      دیروز نمی دانم چکار کردم فیلم را نچسبونم به زیرنویس فیلم را یا زیر نویس با انکد utf8 توی یک پوشه گذاشته زیرنویس توی پخش امد همین دیروز–دوباره چند تا فیلم دیگر تست کردم زیرنویس نیامد نمی دانم دفعه قبل چکار که توی اون فیلم زیرنویس امد–
      فرق دارد با نوک پد قدیم یا جدید انکد کنیم—

  7. سلام. اگه زیرنویسمون notepad باشه چی؟ اصلاً زیرنویس سریال prison break فصل دومش و غیر notepad پیدا نکردم! چطور از این مدل تبدیلش کنم به sub یا srt? اون طرف که این زیرنویس و گذاشته بود گفتش که sub هستش ولی برای من فقط note pad بازش میکنه! چیکار کنم؟؟؟؟

    1. سلام متوجه منظور شما نشدم اگر منظورتان این است که پسوند فایل زیرنویس txt است خب تنها کاری که باید بکنید این است که پسوند را به srt تغییر دهید. اما اگر منظورتان چیز دیگری است واضح تر بیان بفرمایید. در ضمن اگر Notepad++ را نصب کرده باشید کافی است روی فایل مذکور راست کلیک کرده و گزینه Edit with Notepad++ a را انتخاب کنید تا فایل با برنامه نوتپد++ باز شود.

  8. سلام
    ببخشید من وقتی حالت رو روی زبان فارسی میزارم علامت سوال میاد چه جوری باید این مشکل رو رفع کنم
    البته رفع مشکل برای گوشی های اندروید رو میخوام نه کامپیوتر

  9. سلام
    شما گفتیدکه زیرنویس فارسی حتما باید unicode باشه ولی نرم افزار subtitle workshop زیرنویس یونی کد رو به صورت ط.طط.ط.طط نشون میده وقتی هم زیر نویس رو تبدیل به ansi میکنم علامت ؟؟؟ میشه در حالی که subtitle workshop بعضی از زیرنویسها با فرمت ansi رو نشون میده، ممنون میشم راهنمایی کنید.
    با تشکر

    1. سلام متاسفانه بنده با این نرم افزار کار نکردم. اما از نظر فنی وقتی یک زیرنویس با فرمت Ansi درست نمایش داده بشه این برای همه موارد دیگر هم باید صدق بکنه. حتماً یک جای کار را درست بررسی نکرده اید.

  10. واقعا ممنونم.دست مریزاد .انشاالله هر چیزی که از خدا میخوایید برآورده بشه
    یک ماهه درگیر این بودم و با راهنمایی شما مشکلم حل شد
    انشاالله همیشه پیروز و سربلند باشین
    بینهایت سپاس

  11. سلام داداش!دست گلتون درد نکنه!من مشکلم حل شد!ایشالا خدا همیشه پشتو پناهتون باشه!ممنون واقعا

  12. من میخوام از تلویزیون فیلم را ببینم ولی زیر نویس نیاره با برنامه notepad++ بعضی از زیر نویسها کدش تغییر میکنه ولی نمیاد به صورت یه فایل غیر قابل خواندن در میاد هرکاری میکنم درست نمیشه بعضی از فایل زیرنویسهام درست میشه بعضیها نه

  13. سلام.
    ببخشید من زیرنویس فارسی گرفتم ولی در فیلم بصورت زبان انگلیسی نشون میده یعنی انگار زیرنویس انگلیسیه.باید چکارکنم

    1. سلام فایل زیرنویس را با نوت پد باز کنید اگر متن انگلیسی باشد جواب شما مثبت است و به اشتباه زیرنویس انگلیسی را دانلود کرده اید. راه حل هم این است که جستجو کنید و زیرنویس فارسی را پیدا کنید یا اگر پیدا نمی شود فایل زیرنویس انگلیسی را ترجمه کنید 😉

    1. سلام تغییر انکدینگ فایل زیرنویس تاثیری در پسوند فایل آن ندارد و نباید فکر کنید با تغییر انکدینگ فایل پسوند آن باید تغییر کند.

  14. مرسی عالی بود من تو PC مشکلی نداشت زیرنویسام ولی تو TV به صورت یونانی بود که حل شد سپاس گزارم

  15. سلام، برای نمایش زیرنویس فارسی در کامپیوتر این راه حل های شما کاملاً کار می کنه،
    آیا با همین کار امکان نمایش زیرنویس توی تلویزیون از طریق usb هم هست؟
    در صورت اینکه بشه با usb فیلم رو با زیرنویس توی تلویزیون تماشا کرد، باید زیرنویس رو با نرم افزار به فایل فیلم اضافه کرد یا کافیه داخل یک فولدر باشن؟
    و اینکه فرمت فیلم مهمه چی باشه؟

    1. سلام این موضوع به قابلیت های تلویزیون شما بستگی دارد. تلویزیون های جدید و امروزی همه قابلیت پخش زیرنویس های نرم (فایل های Sub یا Srt) را دارا هستند. تنها چیزی که لازم است این است که فایل زیرنویس با فایل فیلم باید هم نام باشند به عنوان مثال اگر نام فایل movie.mkv است باید نام زیرنویس آن movie.srt باشد. فرمت فیلم مهم نیست که چه فرمتی باشد. و اینکه هر دو فایل در یک مسیر (یک پوشه) قرار داشته باشند.

  16. من با روش استفاده از نت پد فقط یه بار جواب گرفتم.مابقی دفعات فایل زیر نویس قابل اجرا نبود.نمیدونم دلیلش چی میتونه باشه.فایلا همه srt هستن.و دقیقا همین مراحل رو رفتم.

    1. در چه دستگاهی؟ آیا در همه موارد از یک دستگاه مشخص استفاده کردید یا نه مثلاً تلویزیون های مختلف؟

  17. سلام
    تلویزیون من زیرنویس فارسی پخش میکنه ولی به صورت بریده برید واز ااااااااخر به اول میخواستم بدونم با ان روش اصلاح میشه یاخیر .ممنون

    1. سلام تست کنید. بدون آزمایش چیزی مشخص نمی شود. برای این مشکلات هم نمی توان بدون بازدید و از راه دور اظهار نظر کرد.

  18. با سلام به دوستان — منم سوالم مثل آقاپدرام است و تلویزیون سونی زیرنویس فیلم با usbراپخش نمیکنه لطفا راهنمایی کنید ؟

    1. سلام باید نوع انکدینگ فایل زیرنویس Unicode یا همان UTF-8 باشد. البته به نوع تلویزیون هم بستگی دارد. برخی تلویزیون ها هم ممکن است با انکدینگ ANSI سازگار باشند. در هر صورت باید تست کنید اگر با UTF-8 جواب نگرفتید با ANSI تست کنید. یادتان نرود که باید نام فیلم و زیرنویس دقیقاً همسان باشند و فقط پسوند آنها فرق کند. مثلاً a.mkv و a.srt

  19. سلام دوست عزیز من ۲ تا مشکل دارم اگه بتونین به من کمک کنین واقعا ممنون میشم: ۱- برخی از زیر نویس های فرمت srt رو وقتی دانلود می کنم به صورت text شناخته میشود و قابل استفاده نیست به صورت کلی! از سایت های مختلفی هم دانلود کردم متاسفانه مشکلم برطرف نشده٬ چکار باید بکنم تا این مشکل رفع بشه؟!(( البته در بعضی از زیر نویس ها این مشکل رو دارم)) ۲- چطور میتونم زیر نیوس sub رو به srt تبدیل کنم؟ هرچی تو سایت های مختلف گشتم نتونستم راه حلی پیدا کنم٬ ممنون میشم پاسخ بدین اگه راه حلی برای این مشکلات هست…

    1. سلام
      1) کافیه پسوند فایل رو به SRT تغییر بدید
      2) متاسفانه بدلیل اینکه در فرمت SUB زیرنویس ها بصورت bitmap (یعنی عکس) ذخیره می شوند امکان تبدیل آنها به SRT به این راحتی نیست. مبدل هایی هم که هستند فقط برای زبان های لاتین بخصوص برای انگلیسی خوب کار می کنند و برای فارسی نتایج بدرد بخوری تحویل نمی دهند.

  20. سلام مدیر محترم.تلویزیون من led Sony w800 هستش.فیلم با فرمت mkv وفرمت زیر نویس sub گذاشتم فیلم پخش میشه ولی زیر نویس پخش نمیشه و بالا سمت راست صفحه led میزنه رمزگذاری utf16.همه روشها رو هم امتحان کردم و تغییر کدینگ دادم ولی فایده نداشت لطف کنین راهنماییم کنین.ممنون

    1. سونی کلا زیرنویس پخش نمی کند . من تمام راه های ممکن و ناممکن را تست کردم . شرکت سونی چون به قانون کپی و رایت پایبند است اجازه پخش زیرنویس در تلویزیونش را نمی دهد. از نمایندگی هم پرسیدم گفتند راهی نداره.
      من دستگاه مدیا استار مدل MS-3500 با کیفیت 1080 خریدم با اون میبینم خوبه

  21. من یه تلویزیون ال ای دی سامسونگ دارم که زیرنویس‌ها رو فقط با انکدینگ ANSI پشتیبانی می‌کنه. قبلاً یه نسخه قدیمی از ++ notepad داشتم که باهاش زیرنویس‌های فارسی UTF-8 رو به ANSI تبدیل می‌کردم و هیچ مشکلی نداشتم. اما نسخه‌های جدید ++notepad این تبدیل انکدینگ رو درست انجام نمیدن و همه‌ی کاراکترها به ؟؟؟؟؟ تبدیل میشن. نمیدونم چیکار کنم.

    1. سلام با دقت بیشتری بررسی کنید چون نسخه جدید مشکلی را که می فرمایید ندارد.

  22. نیازی به این کارا نیست .زیرنویس رو با نوت پد باز کنید بعد رو خودش با utf 8 ذخیره کنید

  23. متشکررررررم عااااااالی بود هم مطلب و هم پاسخ هاتون به پرسش های دوستان
    من که استفاده کردم از هر دو
    موفق باشید

  24. سلام خدمت شما دوست عزیز
    من توو پوشه های مختلف زیرنویس دارم که میخوام همه رو انکودر ANSI ذخیره کنم و همگی انکودر UTF-8 هستن ، میشه کاری کرد همه رو سریع تبدیل کرد و دیگه تک تک یا یه جا دیگه تبدیل بشن که بخواهیم زیرنویس رو جایگزین کنیم؟میخوام هر کدام توو خود پوشه تبدیل بشن که وقت گرفته نشه،گروهی میخوام

    1. سلام ابزاری که بتواند این کار را انجام دهد هنوز ارائه نشده است. مگر که یک برنامه نویس برنامه مخصوص این کار را بنویسد.

  25. سلام من هرچقدر با برنامه notepad سعی میکنم بازم همون زبانه یعنی توی خود برنامه هم فارسی بالا نمیاره واسه همین فایل هم عوض کنم همونه مشکل چیه؟

    1. سلام تنظیمات زبان ویندوز شما مشکل دارد. باید زبان فارسی را در قسمت Language for non-Unicode Programs انتخاب کنید تا مشکل حل شود.

  26. سلام خسته نباشید
    ایا میتونیم زیر نویس چسپیده به فیلم ها رو هم تغییر زبان داد مصلا انگایسی به فارسی ؟

    1. سلام خیر متاسفانه. همانطور که از اسم این نوع زیرنویس مشخصه نمیشه تغییرش داد

  27. سلام مشکلم حل شد خیلی ممنون از شما و سایت خوبتون امیدوارم همیشه تو کاراتون موفق باشین

  28. سلام ممنون میشم راهنمایی کنید منو و اونم اینکه من سریال لاست دوبله دارم نگاه میکنم و خب ی قسمت‌هایی زبان انگلیسی میشه و تو لپ تاپ راحت زیرنویس نشون میده اما تو تلویزیون من که ال جی هستش همون زیرنویس رو نمیاره . کلا زیر نویس جداگانه هم نداره میشه بدونم چیکار باید بکنم ممنون

    1. سلام راه حل اول که ساده است این است که از نسخه hardsub سریال مذکور استفاده کنید. دوم باید چک کنید حتماً اسم فایل فیلم و زیرنویس مشابه باشد و انکدینگ زیرنویس توسط تلویزیون پشتیبانی شود.

  29. ممنون داداش یه عمر مارو از این زیرنویسای درهم برهم نجات دادی اون نوتپدی که معرفی کردی به دردم خورد

  30. سلام بر دوستان گرامی من یک مشکل دارم و این هست وقتی کدک زیرنویس رو عوض می کنم اخر هر جمله از زیر نویس علامت سوال میاد چطوری این مشکل رو بر طرف بکنم ممنون

    1. سلام دوست عزیز می تونید با قابلیت Find & Replace نرم افزار نوت پد یا نوت پد پلاس پلاس تمامی اون علامت سوال ها رو با کاراکتر فاصله جایگرین کنید. و بعد تغییرات فایل زیرنویس رو ذخیره کنید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *