- восстановление WIN (cp1251) из однобайтовых кодировок (KOI8, DOS, IS08859-5, MacOS и OEM) и двухбайтовой кодировки UTF8 (unicode).
- автоматическое распознавание исходной кодировки субтитров.
Хотя алгоритм автораспознавания очень примитивен, мои первые тесты показали, что, если текста субтитров достаточно для анализа, с поставленной задачей он справляется. Если результат вас не устраивает, т.е. вместо осмысленного русского текста в поле субтитров вы по-прежнему видите какую-то тарабарщину, просто сделайте Undo (CTRL-Z) и выложите эти титры сюда - я, в силу своих скромных возможностей, попытаюсь разобраться, где кроется причина сбоя, и оптимизировать алгоритм автораспознавания.
В версии скрипта 0.03 список символов, который восстанавливают скрипты, ограничивается алфавитом и несколькими специальными символами, а именно:
абвгдеёжзийклмнопрстуфхцчшщьыъэюя АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ –—єЄіІїЇ‘’“”«»…№„
Выкладываю скриншот и два зазипованных файла: в одном (x2cp1251-v0.03-Source.zip) - текст самого скрипта, а в другом (x2cp1251-v0.03-TestSubtitles.zip) - примеры субтитров в разных кодировках, на которых тестировались эти скрипты. Скрипт надо скопировать в папку .\SubtitleWorkshop\PascalScripts и вызывать его из SW-меню: Tools > Pascal scripts > x2cp1251.
Естественно, все заинтересованные лица приглашаются к обсуждению (или, как предпочитают выражаться интеллектуалы на sports.ru, срач объявляется открытым). В первую очередь, меня интересует:
- нормально ли работает алгоритм распознавания исходной кодировки текста?
- какие ещё символы, по вашему мнению, стоит добавить?
- что делать с UTF8-символами (скажем, ğčßöäü), которые не попадают в перечисленный список: (i) оставлять их как есть, (ii) заменять иx каким-нибудь спецсимволом (скажем, *) или (iii) выдавать предупреждение пользователю?
Прикрепленные файлы
-
x2cp1251v2.png (25,93К)
Количество загрузок:: 45 -
x2cp1251_v0.03_TestSubtitles.zip (5,67К)
Количество загрузок:: 25 -
x2cp1251_v0.03_Source.zip (4,13К)
Количество загрузок:: 40
Сообщение отредактировал НуПогоди: 25 Май 2009 - 12:31