Saturday, December 08, 2007

How to select VLC default encoding of subtitles

Update 11 Feb 2016: I've just taken another look at the VLC menu (version 2.2.0) and the way to get to the encoding is: Tools → Preferences →
  • For 'simple' interface: Subtitles/OSD → Default encoding
  • For 'all' interface: Input/Codecs → Subtitle codecs → Subtitles → Subtitle text encoding

I have been using VLC Video Lan Player for a long time, mostly for myself, since it can show instantly movies that are incomplete and gets past most video performance issues in Windows by mostly ignoring the default video renderings and using its own codecs.

But there was always this problem with the Romanian translations. The specific Romanian letters (diacritics/diacritice) appeared like weird characters and it got annoying. I thought a simple configuration setting might solve the problem, but it wasn't the case. In the extensive (and mostly incomprehensible) configuration interface there were all kinds of options regarding the subtitles, but not a default subtitle encoding.

Ok, so here is how to do it.
  • Method 0: See above :) It's the GUI way of choosing the setting at Method 3
  • Method 1. Load the movie from the Open menu option. You get to choose your subtitle file and also the subtitle encoding, in the Advanced Options menu. For Romanian all you have to do is choose is 8859-2 (Latin2). But this doesn't solve multiple movie files in the playlist or set a default encoding. This doesn't seem to work anymore
  • Method 2. use the --subsdec-encoding=ISO-8859-2 setting in the VLC command line.
  • Method 3. And the one that solved all my issues. Go to the folder <Operating System Drive>:\Documents and Settings\<Current User>\Application Data\vlc\ and open in a text editor the file vlcrc. Then search for the option subsdec-encoding, uncomment the line and change the Default to your encoding, for example ISO-8859-2.

That's it.


Anonymous said...

Great help!

BugoK said...


The VLC player FAQ explains how to set a default encoding:

Go to Preferences -> Input / Codecs -> Other codecs -> Subtitles, and set Subtitle text encoding to the right one.


Anonymous said...

Excelent, multumesc!

Roots said...

Awesome thank you tried the last option just to be safe and it worked like a charm

VasiaUVI said...

Am folosit metoda 1 in Ubuntu Linux si merge perfect.
De obicei folosesc SMplayer deoarece pot sa maresc/micsorez "live" subtitrarea dar in seara asta folosesc VLC ca nu stiu de ce nu merge SMplayer.

Merci si sanatate!

Anonymous said...

Multumesc mult!

sağlık portalı said...

Un foarte frumos site-ului. Datorită eforturilor din trecut ...

Delya said...

Mersi frumoooos !

Sorin said...

Sorry, it doesn't work for me - VLC 2 for Mac OS X.
I've tried all possible and imaginable settings. The only diacritics I can get to read are â, î, and ă.
But still no ș and ț, which seem to be the main problem for everyone...

Siderite said...

Well, this post is old enough, it was written at the time when VLC was not even version 1.0 and since then I rarely ever use Romanian translations and I prefer to replace the diacritics with regular letters anyway.

But since it used to work, I guess it should still work and your problem is not with the encoding setting, but with the subtitles file. It may be written in a different encoding than the one I recommended.

I hope you share with the other the solution, if you find one. Thanks for your comment!

Anonymous said...

Set it like this:
VLC/Tools/Preferences/Subtitles&OSD/Default encoding: Eastern European (Windows-1250)

Mie mi-a mers.