My 3 hour weekend project: Fix My Movie Subtitles
fixmysubs.com
fixmysubs.com
So to fix this problem I wrote a Perl script for my weekend project and it was surprisingly easy to port to the web thanks to Twitter's bootstrap CSS. So here is the site. Even the domain name is merely 1-hour old!
Your questions / comments are welcome. I hope this is useful to people like me who have had trouble finding movie subtitles and also people who are hearing-impaired.
I've been using foreign movies subtitled in the same language as is spoken, as a method for studying languages for years as well and really hate it when the transcription is different from the dialogue. Problem seems to be that the transcription is taken directly from the movie/show script, but when filmed, actors rarely go with the script word-for-word. Unless the movies has been fanSubbed by native speakers, it quite hard to find subs with the exact transcription.
I initially thought fixmysubs addressed this somehow, but i guess not. Cool project none the less.
Also, you may even need 3 subtitles:
- transcription of the spoken language: les jeux sont faits
- literal translation: the games are made/done
- correct/useful translation: the chips are down
I've seen this happen when English subtitles were enabled for an English language movie I've been watching. Sometimes what is transcribed in the subtitles is different than what people are actually saying (though the gist is the same) even though both are in English.
In any case, this is clearly not something easily fixable by a website script.
I've used some desktop apps that do the same thing your website does. It was really hit or miss and a lot of work. These days if I can't find matching subs, I either wait or watch without.
Instead of searching a dozen websites manually, I highly recommend SubtitleSeeker. It indexes all major subtitle sites and it lets you drill down by language, release, episode, etc.
The dubbing is never quite right or simply not included (for the media I'm looking at purchasing, I always ensure that at least Spanish is covered). I'm using television shows and movies that I have nearly memorized the script to help with "immersion" between more traditional study (I took many years of Spanish and gave up ... this hack wasn't mine, it was mentioned by a coworker and it turned out to be a very clever one). In the US, it's easy to find DVD/BD versions that include Spanish (to a lesser extent, French, which I'm not interested in), but rarely include anything else in the US (and most of the stuff I want to watch includes neither).
This service is intriguing to me. I don't routinely download movies, and I'm unfamiliar with .srt and .sub formats, but I'm wondering if this could help assist reading in another language the same way it has helped in listening/comprehension and it certainly seems like your site is solving a problem I've seen when transcoding DVDs ... it used to be audio mismatch (largely a problem of the past with modern container formats), now it sounds like the same pain point exists with subtitles.
Well done.
I wrote a simple script at one point for dealing with constant offsets by doing simple analysis on the audio track of a movie and the subtitle file to match up peaks. It worked...okay, although I was using very simple features.
It would be great to make it more robust, although I don't know if there's an easy way to upload some audio from a movie to a website (that wouldn't be a lot of work for the user).
Me & my wife used to (and still do) learn quite a lot new words from there, and also how to pronounce certain words, and understand.
Lately it was very useful for us, as we can turn down the volume, and not disturb our son while he's sleeping. Just a notch up & down for music/sounds, and reading the rest of the movie.
My current workflow to sync subtitles is to find one sentence in the beginning of the movie and one near the end, and search the subtitle text for these sentences. The four timestamps are then ran through the perl program subs (see http://search.cpan.org/~karasik/Subtitles-1.03/subs).
Perhaps using a search based interface, instead of letting the user pick from all lines, would be a nice extension.
As of now I've tried many different movies and deliberately downloaded the wrong FPS and time shifted it using the subtitle tool but so far it is working as it should be :)
code.google.com/p/subeditor/downloads/list
Have been using this since then. It seems to take first two times to calculate the difference in speed, while third onward it just adjusts the starting point maintaining the same speed.
I'll test it on my next subtitle issue :)
Based on that information the script calculates the discrepancy in the frame rate or time shift by comparing it with the original file and then fixes that for you (also gives you two different versions if more than one solution fits)
Having said that I don't mind having to compute 4gb md5's, since that also helps me to check the integrity of the file at a later date.
[1] http://smplayer.sourceforge.net/
[2] http://trac.opensubtitles.org/projects/opensubtitles/wiki/Ha...