## Friday, February 19, 2010

### The old and present: VSFilter

A short while ago, yet another fork of the VSFilter subtitle renderer has surfaced, introducing more extensions. Let it be clear immediately: Aegisub will not support any new extensions to the ASS subtitle format. We strongly urge you to not use any extensions, and as for why, please read on.

Let's start with the history of the ASS subtitle format: In 2004, Gabest made the Guliverkli project open source under the GPL license. This corresponds to the version 2.23 of VSFilter, or VobSub as it was better known as then. By this time, the ASS format was essentially already in its final form, no real extensions ever came up then. That's more than 5 years ago. Around 2006-2007, the Guliverkli project mostly died off, almost no more development happened. However, a few patches started to crop up. In 2008, we made a fork for Aegisub, and ended up applying those existing patches, fixing a bunch of bugs and, unfortunately, also adding some new features. Very soon the Guliverkli2 project is forked off the Guliverkli project, and includes patches for all parts of it. The Aegisub patches are ported to Guliverkli2. Some more development happens, the Aegisub fork is abandoned in favour of Guliverkli2. The MPC-HC (Media Player Classic Home Cinema) project pops up, as a second fork of Guliverkli. They import most all the Guliverkli2 patches too, as well as add many major new features to Media Player Classic. Now, a new, fourth fork of VSFilter appears, and it has several new extensions.

The important part of the history is in the very beginning: The ASS subtitle format was essentially finalised in 2004. In retrospect, it was wrong to ever extend it, because it creates fragmentation. We regularly receive support requests from people who can't make VirtualDub render their subtitles correctly. The reason? They use TextSub 2.23, the version from 2004, which is clearly still in distribution from some sites. This only shows that changing and extending a standard after it has been finalised is a really poor idea, because old software will always be around.

We, as developers of Aegisub, have discussed the situation with the MPC-HC developers and the main libass developer, and all agree that extending the ASS format, or supporting any new extensions, is a bad idea, for the reasons of fragmentation of standards and backwards compatibility, and we strongly recommend staying away from any extensions to the ASS format. This in fact also includes the extensions introduced in 2008, namely: \blur, \be with parameter over 1, \fax, \fay, \iclip, \xbord, \ybord, \xshad, \yshad. — None of those tags are compatible with the 2004 versions of VSFilter, and if you use them, you have a great risk that your subtitles will just look wrong for some viewers.

Another thing we agree on is that the ASS subtitle format is in general bad and has many problems, and that the only solution is to draft and implement a new subtitle format, using our experience with subtitles and knowledge of how other projects for new subtitle formats have failed, to make a good subtitle format that supports what subtitlers want and need, is usable and editable and is supported across all relevant platforms.

For now, we have just one request: Please do not use any extensions to the ASS subtitle format.

### Related Posts by Categories

1. I agree 100% to you.
And by the way: Aegisub is the best subtitle software I have ever seen.
It is the only really useful subtitle software.

2. I’m using \fax and \fay in everyday typeset because of dual sub releases assuming people are watching our videos with the latest CCCP. For others, it’s just an insignificant loss (the tags’ values are never high) of the visual quality.

3. What about the progress of Arabic support?
The Arabic community is eagerly waiting for Aegisub.

4. So you're saying that we must stick to obsolete stuff just because the average Joe Sixpack is dumb enough that it can't use a single braincell to learn how to use Google for looking up for a recent version, at the very least?

This is the good, and at the same time, bad side of the open source software: everybody wants to add features, but programmers almost NEVER coordinate their efforts into merging back their changes. We see this every single day, from small things like this, to big fat projects like X.Org, Mozilla, or the Linux kernel.

So, from now on, i will not care a shit about users: if they're dumb enough to keep using AVI+XviD+hardsubs (because their shitty DVD players can't playback anything else), why bother? People with working brains at the very least know how to install CCCP or MPlayer.

And about a new subtitle format? It would be nice, but it will suffer the same fate of any current file format: people WILL KEEP USING THE OLD, MATURE EXISTING ONES! And there will be, at the very least, two or three forks/implementations of it, with subtile differences, enough to make you to repost this very same text in 2015...

5. 2 Tom Maneiro
>>So, from now on, i will not care a shit about users
So, you think that users must search & reinstall lots of .ass renderers every time they start watching new movie because some idiot used tags of his own home-made .ass renderer?

6. I kind of agree and disagree with this post at the same time.
Another fork just makes it harder to implement proper, bug-to-bug compatible to VSFilter, ASS renderer, which could playback current subtitles. And personally I would like to see today's fansubs playback flawlessly even ten years ahead.
But, there is another point of view. No matter how much everyone would like to see ASS and VSFilter superseded by something better, faster, feature richer, cross-platform, with proper specification and documentation, it's not going to happen soon. Last meaningful commit to AS5 spec was at 2007-07-24, and it's already 4 years since original announcement of its development. The spec is still full of TODOs, so optimistically it would require year and a half or more of dedicated work to finish spec and write reference implementations, both rendering and editing. Then something around a month or two to include support for new format in mkvtoolnix, and then something from half-year to a year for including it in Haali splitter, mplayer and whatever else. Some bug hunting and transition period for users and fansubbers would be necessary too. And so, according to optimistic scenario, we would see AS5 used around three years from now. According to pessimistic scenario, it could enter list of vaporware, alongside with Avisynth 3.0, asa, Matroska 2.0 and Matroska Menu system.
And honestly, I don't see how new subtitle format is cure to users' ignorance and neglect to upgrade software. No matter what, we would still see complaints, that some_random_subtitle_format was borked by some_archeologically_old_version_of_player_X or that some (not necessary old) software does not support some subtitle formats at all.
So, in the end, I think it is better not to throw VSFilterMod right away. It could be useful until AS5 or something other becomes common. Also, it could provide playground for some experimental features, which could be useful and end up in the spec of the new subtitle format. However that's only if developers of VSFilterMod manage not to break compatibility with old files during additions and changes.
On a side note, it would be wise to provide some sort of signaling to notify users that they need to upgrade their renderer to playback the file. Support for checking renderer version in subtitles should be sufficient, along with a recommendation to include something like this line in files with new tags: "{\renderer(vsfilter<2.40, libass<0.9.9)}{\an8\c&H0000FF&\b1\fs18}To watch this file properly you need VSFilterMod 2.40, libass 0.9.9 or compatible.\N Fansub_group_X discourage usage of hardware players to view this file.\N Get VSFilterMod at https://code.google.com/p/vsfiltermod/".

P.S. I'm really sorry for my bad grammar and poor vocabulary, I'm not a native speaker and I don't write in English frequently.

7. Well, I never used any extensions because I didn't know they exist until now. ;D

I don't think it's bad to introduce extensions to a format as long as it was made to support them, which is not the case here IIRC.

8. I've just taken a look at the ASS3 specs. Whoever wrote that should be hit. It breaks the format. Like they couldn't define an “ASS3Dialogue” line or something so an ASS renderer would ignore them...

9. I agree with Daniel A. Support for checking renderer version in subtitles should be sufficient. A new subtitle format won't resolve the problem of people not upgrading their software.

10. New subtitle format will resolve problems with new hardware.

You guys are focusing on software too much and that's you main mistake.

Nowdays most people watch video on their mp4 players, TVs, netbooks, NMTs, dvd players and even cell phones. And that trend will only amplify in the future.

Good news is that hardware is replaced every 2-3 years, so users will upgrade eventually.

Problem is, that you need clear specification, STABLE and with well defined fallback scenario, so that hardware vendors will have SOMETHING THEY ACTUALLY CAN IMPLEMENT.

I mean really, I want to kick this Tom Maneiro retard so much his teeth will exit on other side of his skull. How the fuck I am supposed to install CCCP on my Nokia?!
In the end, if he does anything professionally he will be flooded with customer complaints and if he is just a fansubber, then his hard work will be flooded out and marginalized by more standard based reencoders. No one will even know that faggot called "Tom Maneiro" ut his hard work on the release, because version that actually got distributed was rip made by some teen who cut off all original credits and inserted his.

11. If you think fansubbers make their fansub for teenage faggots watching the shows on their Nokia cells then you are even bigger retard. Who gives a fuck about Nokia or whatever? “Can’t you play the video? Tough luck, pussycat.” Do you think we try to do the best h264 encodes for sobs to play them on their crappy toys while riding a bus?

12. As an example: the various media players with MKV support (a whole bunch came out in the last year or so) using the Sigma Designs SMP chips play .ass subtitles pretty well, as long as you don't use stupid karaoke effects everywhere. If the .ass format were extended, playback would no longer work on these players.
There is simply no need to extend the format anyway. Any changes would be better implemented by creating a whole new standard (and then finalising said standard).

13. First off, this is a free program. If we choose to use it, then we can either do as requested or ignore it. We certainly have no rights to kick up a fuss. That's not to say that the developers would not listen to our requests.

Why do we fansub? To get our works out to the audience, right? It kinda defeats the purpose if they can't view it. As fansubbers, we keep up to date with our tools. Average fans should not be expected to do so. And majority of them would not know where to look. All they expect to do is get a media player, download files and view.

Of course, at the same time, fans should not expect the releases to work on some obscure or proprietary players. If they insist on using them, then they're just out of luck. We cater to fans as a group, not as individuals.

Having said that, as a typesetter, I use the aforementioned extensions a fair bit and will be hampered somewhat without them. So, I will probably continue to use some of them until the time to let go (when it doesn't make sense any longer because of too many problems).

14. about time for a new subtitle format!

15. "How the fuck I am supposed to install CCCP on my Nokia?!"

You don't. You have two options:

- Reencode (with hardsubs, you have no other option) with the specific profile/codecs that your Nokia will play. I do this every single day for loading videos to my Motorola. Really, it's not so hard, you just need a working brain, and the ability of how to use Google. You would be surprised to found that your 2006 RAZR will play H.264 (at a very basic profile, but the hardware is there). Don't blame those "SuperMegaMaxiVideoConverter 2009" shitware apps that fail to generate proper videos for your devices.

- Throw that shit to the trashcan, and get a REAL phone that can do softsubs with the correct software (like a N900).

Certainly, the lack of a stable specs for a subtitle standard seriously hurts their adoption by hardware makers, forcing people to be stuck with shitty devices. Here in Latin America, for example, BluRay is a failure, and people rejects MKV/H.264 because "my DVD player won't play that, so MKV is retarded and evil, AVI rulez 4life".

I can understand that not everybody out there can change their devices each 2-3 years (myself included, thanks to retarded governments, but that is another story), but still, HARDWARE IS NOT A REASON FOR BEING STUCK WITH OUTDATED TECHNOLOGY. Learn to know the TRUE limits of your device, then kick the balls of that Finnish guy that is the CEO of Nokia for producing DRM-infested crappy cellphones, not my balls.

While i will not change my fat 21" SDTV for a "plastic toy" for playing subbed and dubbed stuff, you can't carry that on the bus (even a netbook is not an option), i always like to have the option to watch some episodes on the road. Modern cellphones have the guts, but as always, cellphone software developers are absolute retards, and carriers don't allow better software to be deployed (case in point: your average CDMA dumbphone, with that evil framework called "BREW")

So for ending this:

- KNOW YOUR FUCKING DEVICE.
- LEARN HOW TO ENCODE FOR MOBILE DEVICES. H.264 on a RAZR or a N-Series is not rocket science.
- Think in a SMARTphone for your next device refresh. Something with a REAL OS (sorry, iPhone or BlackBerry are not real)
- Average Joe Sixpack is retard. Google = "unpossible".
- COMPUTERS ARE NOT NINTENDOS!
- Cellphones are not PlayStations!

16. It is the only really useful subtitle software.

17. I think we can't focus only in the issues but also we have to find the solutions for the problem itself.

18. this is a very nice useful software and dont forget its free one.

19. I also had a problem on ASS subtitle format so what I did is I made a new format of it. I tried a lot of work around but to no avail. I think that was the only solution that worked.

20. My god, this is absolute hell.
Here's a solution!
If you're not using "stupid karaoke" then use SSA or a simplified format that doesn't support karaoke.

Hello?
What dumb ass would actually start a new ASS file with no intention of using the karaoke feature?
That's practically what it's designed for!
Besides netbooks/notebooks, why the hell would you even attempt to play a video with soft subtitles?
That's just idiotic. Even suggesting it is utterly self-destructive to your point in this case.
Who in their right mind would watch videos with subs on a shitty little 320x240 screen (or even 480x320 for iPod touches for that matter) ?
Plus, who do you know is intelligent enough to actually encode a video for a mobile device?
I'm the only one I personally know offline who can do it. It's not hard, but it's not common knowledge.

Some of you people need to get your heads out of your asses and realize that Aegisub is pretty much the only program that supports ASS in itself, and if improvements can be made which lower render time and boost efficiency, then you know, a LOT of hardsubbers doing karaoke can save vasts amount of time.

Just because it's inconvenient for some MobileKid doesn't mean they shouldn't do it.

21. I'm the only one who thinks that a "ASS Standard Association Board" (or any other fancy name you like) should be created? Someone who takes the current ASS format and any extensions they find worth the while, merge everything together and create a goddamned STANDARD? So they release "AssFilterV1.dll" and tell everyone, media players devolpers, users, fansubbers, EVERYONE to update to that [*]. This way consumer electronics developers have something STABLE to implement and everyone has the same features and subs. Then, after 3/5/10 years, the "ASS Standard Association Board" should revise the standard, apply new features or whatever is needed and release a "AssFilterV2.dll". And it repeats forever after. They distribute the dll and everyone, including hardware developers, update to that. It's the only way we ALL can be happy.

[*] If you don't update go fu** yourself and don't complain later. Joe Sixpack MUST NOT be a reason for not updating. But having 20 branches/extensions of the same format is TOTALLY dumb. Standards are created for something actually.

Just my 2 cents. I love ASS and I couldn't live without it. The other day I was trying some content on a WDTV Live... only to see that it doesn't even load the fonts in the MKV. How nice would it be for it to display fonts, karaoke, etc... But that can never be possible without a proper and stable standard to implement in the device.

22. This comment has been removed by a blog administrator.

23. greeting, I adjust from Indonesia, I had a few days to try to use aegisub to Latin letters text on the video, the result is successful as planned, but for text arabia results are not satisfactory, so broken text difficult to read, I'm doing a flow follows:
1. to take the text, I do with COPI paste from a notepad text Arabia would use that I have prepared, and I'm also setting the letters I choose me-quran with code UHT 8, and then I endcoding with virtuldub and the result does not satisfy me, because the text that can get broken.
with this email and ask him to help provide a solution that could be better, with step solution.
the rest I'm sorry,

wa salam
taufiq

24. This comment has been removed by a blog administrator.

25. I totally agree. In particular for the need of a new definitive file format more simple and powerful at the same time. Looking to the "HTML+CSS" model should be a good starting point IMHO (a plain text like .str plus "stylesheet" with all styles and effects will be great)

bye

26. I know I'm probably gonna come off as one of the obnoxious hoardes, but it's been over a year since this mission statement (which I agree with). What is actually going on with: 1. a new format? & 2. AegiSub itself?

27. Aegisub foi descontinuado?

28. Am I the only one who laughs when I see "ASS format"?

If you need help with Aegisub or have a bug report please use our forum instead of leaving a comment here. If you have a feature request, please go to our UserVoice page.

You will get better help on our forum than in the blog comments.