Altyazı Türkçe Karakter Problemi Nasıl Çözülür?

arkadaşlar, opensubtitles'tan otomatik indirilenler için bir çözüm buldum. ...

 
Dün akşam epey bir aradan sonra bu sorunla ilgili arge yaparken OpenSubtitles.bundle da kod değişikliği yapılabilir mi acaba diye aklımdan geçti. Bunu kim yapabilir diye düşünürken tekrar bu sayfaya göz atayım dedim, ve mesajınızla karşılaşıp havalara uçtum.

Ama tüm denemelerime rağmen sonuç alamadım. OpenSubtitles.bundle bende (mac) iki yerde karşıma çıktı. Biri ~/Library/Application Support/Plex Media Server/Plug-ins/OpenSubtitles.bundle/Contents/Code/__init__.py dizininde. Ama, sizin 63. satır bu dosyada 199. satırda:
 

199         subData = Archive.GzipDecompress(subGz.content)
200         part.subtitles[Locale.Language.Match(st['SubLanguageID'])][subUrl] = Proxy.Media(subData, ext=st['SubFormat'])
 
Sizin 63. satırı /Applications/Plex Media Server.app/Contents/Resources/Plug-ins/OpenSubtitles.bundle/Contents/Code/__init__.py dizininde yakaladım. Her ikisinde de söylediğiniz değişikliği yapmama rağmen altyazıları tekrar indirtsem de sonuç alamadım.
 
Nerede hata yapıyorum acaba? 

ben de mac'te deneyip size haber edeyim. yalnız şunu gördüm. plex ara ara bu dosyayı ilk hâline getiriyor. ben de en sonunda dosyayı read-only yaparak çare buldum. 

Teşekkürler. Dosya değiştirilmiş haldeyken güncelleme yapmaya kalktığımda, hash hatası verdi ve güncellemeyi yapamadım. Neyseki dosyanın yedeğini almıştım, geri kopyalayınca güncelleyebildim. 

Merhabalar,

Biz bunlarla uğraşırken Plex'çier güncelleme geçmiş. Plugin kodunda epey değişiklik olmuş. Ancak ana fikir aynı. Kodu yine önceki gibi subtitle download edildikten sonraki noktaya koyuyoruz. 

Fix ettiğim kod şurada: https://gist.github.com/mucit/0aae74193ad91dfc042a

210 - 215 arasındaki satırları ekledim.

Ayrıca Plex'in otomatik güncelleme ile dosyayı bozmaması için de alternatif bir yöntem buldum. Opensubtitles plugin klasöründeki Info.plist dosyasına 

PlexPluginDevMode
1

iayarını ekliyoruz. Şimdilik bekliyorum, güncelleme gelecek mi diye. Bu yöntemi Windows'ta yemediğini de söylemişler ama denemek lazım.

PLugin'in güncellenen kodunu fix ederek tekrar çektim altyazıları. Bir problem yok. Türkçe kaymak gibi. 

Üstat selamlar,

Ben gene bir yerlerde hata yapıyorum. Düzenlediğiniz kodu alıp, PC de; C:\Users\"KullanıcıAdı"\AppData\Local\Plex Media Server\Plug-ins\OpenSubtitles.bundle\Contents\Code dizinindekiyle değiştirdim. Plexten çıkıp tekrar girdim.

Garanti olsun diye Ayarlar>Server>Tarayıcılar>Freebase'deki opensubtitles eklentisini pasifleştirip filmin metaverisini yeniliyorum. Bu arada var olan altyazı da siliniyor ki, filmin altyazı seçeneklerinde "Hiçbiri" gözüküyor. Eklentiyi tekrar aktifleştirip metaveriyi güncelliyorum. Altyazı geliyor ama Türkçe karakterler hiç de kaymak gibi değil.

Mac'te de aynı durum PC'de de... Çözüme katkısı olabilir derseniz log dosyasını gönderebilirim.

Şimdi hiç kod değiştirmeye uğraşmadan ben plugin klasörünü vereyim: https://dl.dropboxusercontent.com/u/2940537/OpenSubtitles.bundle.rar

C:\Users\KULLANICIADI\AppData\Local\Plex Media Server\Plug-ins

klasöründekini eziyorum. Dosyaları read-only'ye çkiyorum. Bir faydası olur mu emin değilim.

Sonra "C:\Users\KULLANICIADI\AppData\Local\Plex Media Server\media" klasöründeki bütün metadatayı siliyorum. 

Tekrar library-refresh çektiğimde yeni ve tr'si bozulmamış altyazılar geliyor. Bir deneyelim mi?

NOT: Bu anlattıklarımı Windows'ta denedim. Henüz Mac'te deneyemedim. Kendim başından beri Linux sunucuda zaten böyle kullanıyorum. 

Çok çok teşekkürler üstat. Sorun tüm kütüphaneyi taratmamaktan kaynaklanıyormuş. Media klasörünü silip arşivi tekrar tarattığımda Türkçe karakter sorunu kalmadı.

Mac'te yapmak isteyenler Finder'da Git > Klasöre Git'ten açılan kutuya ~/Library/Application Support/Plex Media Server/Plug-ins  yazarak eklenti dizinine erişebilirler.

Linkini verdigim plugin hem srt altyazilar hemde opensubtitles dan otomatik inenler icin türkce karakter sorununu cözüyor, test ettim.

https://github.com/ukdtom/SRT2UTF-8.bundle/wiki

1 Like

Abiler, encoding bulmak zor zanaattır. O nedenle emreunal'ın bahsettiği plugin'in başarım seviyesi tartışılır diye düşünüyorum. Denemekte fayda var ama kesin çözüm değildir. 

Benim opensubtitles'a yaptığım müdahale, sadece Türkçe altyazılarda sorun varsa devreye giriyor. Bu nedenle spesifik, lokal ve kesin çözüm. Diğeri daha genel, tüm dillere yönelik ve başarısızlık ihtimali olan bir çözüm. 

Aslında Türk altyazıcılar, altyazıları Windows-1254 ile değil de daha evrensel olan UTF8 ile kodlasalar da atsalardı böyle bir sorunumuz olmayacaktı. Bu bize Windows'un kazığı. 

Encoding bulmak zor zanaattir derken?

Yo, catir catir calisiyor, test amacli 32 kisinin kullandigi 3TB küsür film-diziyi test serverina aktardim, hepsinde mkvmerge ile eklenmis alt yazi mevcut. Plugini calistirdigimda hem opensubtitles dan cektigi hemde manuel olarak srt ekledigim altyazilarin hepsini catir catir sorunsuz cevirdi, ki zaten zor olan birseyde yok, tek yaptigi srt dosyasinin mevcut halini backuplamak ve utf-8 formatinda yenisini eklemek. Illa iso-8859-9 olacak diye bir kaide de yok zaten, utf-8 olmasi yetiyor.

Tüm kullanicilara test amacli ikinci serveri kullanmalarini ve alt yazi cekerken üsttekini degilde(mkvmerge ile manuell eklenmis olan), ikinci secenegi(opensuptitlesdan gelme yada srt dosyasi üzerinden) secmelerini ve feedback vermelerini rica ettim. Üc gündür 100 böülüm üzerinde dizi ve 50 nin üzerinde film seyredildi, bir tane sorun cikan alt yazi olmadi.

Ayni zamanda plex tools eklentisinide herkese tavsiye ederim, opensubtitlesdan filmler alakali alt yazilari gösteriyor ve siz istediginiz indirmesini saglayabiliyorsunuz. Daha sonra SRT2UTF-8 agent devreye girerek yine bu indirilen alt yaziyi utf-8 formatina ceviriyor.

e çok güzel o zaman. deneyelim.

zor zanaat derken, aynen zor zanaat olduğunu kast ediyorum. dünya üzerinde tam başarılı bir encoding bulma yöntemi yoktur. tahminlemeye dayanır. ha türkçe için çok başarılı sonuçlar almak, algoritmadaki varsayımlara dayanır. zaten sizin belirttiğiniz linkte de adam bu gerçeği ifade ediyor. ben genel bir bilgi olarak verdim. siz testlerinizde başarımın yüksek olduğunu söylüyorsanız, söyleyecek bir şey yok tabi.

teşekkürler bilgiler için.

Yukarıdaki yazıların plugin lerin hepsini denedim yapamadım :( 

plex amca neden kökten çözüm yapmıyor anlamıyorum.

Yukarıdaki yazıların plugin lerin hepsini denedim yapamadım :(

plex amca neden kökten çözüm yapmıyor anlamıyorum.

Plex media serverin yüklü oldugu pc hakkinda ve baglandiginiz cihaz hakkinda birazdaha aciklayici olabilir misini

C:\Program Files (x86)\Plex\Plex Media Server\Resources\Profiles
klasörü altındaki xml dosyalarındaki ben sadece chrome’unkini değiştirip denedim <?xml version="1.0" encoding="utf-8"?> satırını <?xml version="1.0" encoding="unicode"?> şekilnde değiştirin sorununuz çözülür.

Sorunun çözümü için;


1 Like

Hiçbir şey işe yaramıyor. Ne yaptıysam OpenSubtitles dan gelen altyazıları UTF-8’e çeviremedim. Nedir bunun sebebi? Neden inatla Windows’un kodlama türü ile açılıyor? Nasıl düzelteceğim bu durumu? Ayrıca Plex Media Server da herhangi bir bilgisayarda değil uzak sunucuda bulunuyor.

@emreunal said:
Linkini verdigim plugin hem srt altyazilar hemde opensubtitles dan otomatik inenler icin türkce karakter sorununu cözüyor, test ettim.

Home · ukdtom/SRT2UTF-8.bundle Wiki · GitHub

emreunal merhaba,
SRT2UTF-8 plugin ile sony vaio windows 10 PC ve Sony Bravia KD55X9005B 4K tv ile senin yönlendirmelerinle sorunsuz kullanıyorum. Tekrar teşekkürler. Ancak daha güçlü ve PC den bağımsız kullanmak amacıyla yine senin önerilerinle Nvidia Shield Pro 500GB Android Tv aldım.İçerisinde Plex ve Kodi yüklü. Ancak ağdan cihazın internal klasörüne ya da yine cihazda yüklü xplore klasöründen PMS klasörüne girdiğimde sadece Database Backups ve Logs klasörleri var. Logs klasörü içinde de PMS Plugin Logs klasörü ve onun içinde de
com.plexapp.agents.opensubtitles
com.plexapp.agents.opensubtitles.log.1(2,3,4,5)
com.plexapp.agents.themoviedb
com.plexapp.agents.themoviedb.log.1(2,3)
com.plexapp.agents.thetvdb
com.plexapp.agents.thetvdb.log.1(,2)
com.plexapp.agents.localmedia
com.plexapp.agents.localmedia.log.1(2,3,4,5)
com.plexapp.agents.imdb
com.plexapp.agents.imdb.log.(2,3,4,5)
com.plexapp.agents.system
com.plexapp.agents.system.log.1(2,3,4,5)
com.plexapp.agents.system
com.plexapp.agents.system.log.1(2,3,4,5)
vs.
dosyalar var.Ben de SRT2UTF-8 plugin buraya bundle uzantılı olarak attım. ama Plex agent lara eklenmedi ve dolayısı ile de çalışmadı.

Kodiyi kullandığımda altyazılarda downlöad ve türkçe karakter sorunu yok.(Kodi ayarlarını yaptım)
Ancak Nvidia içindeki Plex i tek başına kullandığımda ( ki ara yüzünü beğenmediğim için Kodi Plex add-ons u denedim) ya da Kodiye eklenti olarak kullandığımda altyazılarda sorun çıkıyor.
Örneğin,
Harici altyazıda türkçe karakterler düzelmiyor
Download ettiğimde (eklenti Plex kullanırken, kodi ayarları ile) filmde altyazı düzgün geliyor ancak dizilerde altyazı download ettiğimde örneğin dizi 20. dk da iken altyazı 1. dk dan başlıyor dolayısı ile oturmuyor.
Halbuki bağımsız olarak Kodiyi kullandığımda bu sorunların hiçbiri olmuyor.
yani sorun Plex uygulamasında ve Plex add-ons da gibi gözüküyor.
Bu sorunları çözebilir miyiz?
Cevaplarınız için teşekkürler…

@ssuc Merhaba.

https://support.plex.tv/articles/221099648-limitations-when-running-plex-media-server-on-nvidia-shield/

Burada da belirtildigi gibi nvidia shieldde plex ucuncu party plugin kullanimini desteklemiyor:

When running on the NVIDIA SHIELD, the Plex Media Server data directory is not currently user-accessible. Unfortunately, this means that it is not currently possible to manually install channels or plugins on the device. You can, of course, still install things through the normal Channel Directory.

PMS kendi arayuzunden eristiginiz channels/plugins kurulumunu yapabiliyorsunuz ama.

Altyazilari otomatik mi indiriyorsunuz? Eger opensubtitlesdan otomatik indiriyorsaniz onu devre disi birakina, pluginsden sub-zeroyu kurun. Hem ■■■ daha basarili altyazi indirimi konusunda hem de otomatik olarak utf-8 indiriyor altyaziyi.

Kodi plex addon ben de fire tvde kullandim ve gayet basarili buluyorum. Hem arayuz hem kullanilabilirlik olarak gayet basarili. Eger kodi ile biraz hasir nesirseniz divxplanet (planetdb) altyazi eklentisini kurarak altyazilari direkt olarak seyrederken planetdbden cekebilirsiniz.

Teşekkürler bu noktada amacım sizin de dediğiniz gibi arayüzü daha iyi olan ( nvidiadaki plexe göre) kodi plex add on’ ü kullanmak. Teknik olarak bu konularda pek iyi değilim, araştırarak ve sizin gibi değerli arkadaşlardan destek alarak ilerlemeye çalışıyorum.
Forumlardan anladığım kadarıyla divx planet kapanmış, bu durumda şunu mu yapmalıyım , kodi plex on için: şu anda kodi plex on da opensubtitlesorg seçili ( kodi subtitles deposundan) ve dediğim gibi örneğin the 100 dizisinde deneme yaptım, dizinin herhangi bir bölümünde ilerlemiş herhangi bir dakikasında seyir sırasında subtitles download diyorum, opensub tan araştırıp altyazıları buluyor bunları indir deyip hepsini deniyorum ancak altyazıyı indirdiğinde Türkçe karakter sorunu yok ama altyazı 1. dakikadan başlıyor halbuki dizi o sırada örneğin 20. dakikada!
Ancak bu sorunu kodi plex onda dizi seyretmek isterken yapıyor ama film de yapmıyor

(Ayrıca nvidianın internal klasörü içindeki movies klasörüne filmle beraber attığım harici altyazıyı da nvidiadaki plex ve plex on ile seyretmek istediğimde harici altyazıyı Türkçe karakter bozuk gösteriyor ama sadece kodi olarak seyretmek istediğimde harici altyazıyı düzgün gösteriyor.)

Sadece kodi ile seyretmek istediğimde ise aynı dizide ve fimde böyle bir sorun yok, senkron ve Türkçe karakter sorunu yok ki kodi ayarlarından da o
pensub seçili?
Kodinin subtitle deposundan subzero seçersem bu sorun düzelir mi yoksa başka bir çözümü mü olmalı?
Akşama deneyeceğim subzeroyu
Teşekkürler…

Forumlardan anladığım kadarıyla divx planet kapanmış

Kapandiktan sonra planetdp.org olarak yeniden acildi.

opensub tan araştırıp altyazıları buluyor bunları indir deyip hepsini deniyorum ancak altyazıyı indirdiğinde Türkçe karakter sorunu yok ama altyazı 1. dakikadan başlıyor halbuki dizi o sırada örneğin 20. dakikada!
Ancak bu sorunu kodi plex onda dizi seyretmek isterken yapıyor ama film de yapmıyor

Bu sorun icerigin türünden (film-dizi vb) ve icerigi nerede actiginizdan(Plex App, Kodi Plex eklentisi vb) ziyade direkt olarak altyazinin kendisi ile alakali. Eger altyazi senkron degilse nerede acarsaniz acin ayni sorunla karsilasirsiniz. Bu yüzden dikkat ederseniz altyazi sitelerinde bir altyazinin birden fazla sürümü oluyor. Örnegin birisi dizinin DIMENSION ya da ROVERS sürümüyle uyumluyken digeri TBS ile uyumlu olabiliyor. Bu yüzden icerik isimlerindeki ve altyazidaki releaser isimlerine dikkat ederek uyumlu altyazilari secmeniz gerekiyor.

(Ayrıca nvidianın internal klasörü içindeki movies klasörüne filmle beraber attığım harici altyazıyı da nvidiadaki plex ve plex on ile seyretmek istediğimde harici altyazıyı Türkçe karakter bozuk gösteriyor ama sadece kodi olarak seyretmek istediğimde harici altyazıyı düzgün gösteriyor.)

Plex uygulamasi ve plex kodi eklentisi altyaziyi UTF-8 olarak degistirmediginiz sürece türkce karakter sorunu cikarir. Plex sadece UTF-8 olan altyazilari düzgün bir sekilde gösteriyor. Kodinin kendisi ise örnegin encodingi ISO-8859-9 olan bir altyaziyi otomatik olarak türkce olarak siniflandirip ona göre gösteriyor ya da ayarlarindan altyazinin encodingini manuel olarak secmenize imkan vererek her türlü formattaki altyaziyi düzgün gösterebiliyor.

Bir altyaziyi manuel oarak ekleyecekseniz encodingini ■■■ basit bir sekilde atmadan önce degistirebilirsiniz. Ilk olarak altyaziyi notepad ile acin bilgisayarda. Sonra farkli kaydet dedikten sonra kaydetme ekraninda kayit türünü tüm dosyalar kodlamayi ise UTF-8 olarak secip kaydettikten sonra bu yeni altyaziyi eklemeniz yeterli olacaktir.

Kodinin subtitle deposundan subzero seçersem bu sorun düzelir mi yoksa başka bir çözümü mü olmalı?

Sub-zero kodi degil plex eklentisidir. Plex media server arayüzünden kurabilirsiniz. Plugin hakkinda ayrintili bilgi icin:

turkcealtyazi.org simdi denedim kodide calisiyor ve kurulumu ■■■ basit. opensubtitles a kiyasla ■■■ daha rahat bulabilirsiniz istediginiz altyazilari.

Ilk olarak eklenti reposunu indirin pcye:

https://github.com/hbiyik/repository.biyik/archive/0.0.1.zip

Daha sonra bunu usb disk vb yardimiyla shielde atin ya da usb diski shielde takin.

Soldaki Kodi menüsünden “Eklentileri” i secin, sol üstten kutu iconuna basin ve “Zip dosyasindan yükle” yi secin:

Karsiniza cikan gözat ekranindan indirmis oldugunuz zip dosyasini secin.

Bu islem altyazi eklentilerinin oldugu repo-kaynagi kodiye kurdu, simdi ise altyazi eklentisini buradan kurmaniz gerekiyor.

Eklentiler menüsünde (zip dosyasindan yükle dediginiz menü) “Depodan Yükle” yi secin ve kurmus oldugumuz repo olan “Hüseyin Biyiks Kodi / XBMC Repo” yu secin. Altyazilari secerek “Turkcealtyazi.org” kurun.

Artik kodide altyazi indir dediginizde solda turkcealtyaziyi da kaynak olarak göreceksiniz: