Changes between Version 6 and Version 7 of WikiStart


Ignore:
Timestamp:
Aug 27, 2010, 8:09:04 AM (14 years ago)
Author:
os
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v6 v7  
    1 [wiki:Video]
     1= OpenSubtitles v2 draft specification - Request for comments ==
     2
     3
     4== Subtitles section ==
     5
     6We are trying to avoid duplicate subtitles as much as possible, so in ideal world,
     7there should be only one subtitle for many releases. We try to approach this by using
     8SubLib. So, in system there will be saved only 1 subtitle for each version of movie:
     9[Matrix], [Matrix - Extended Cut], [Matrix - Directors Cut] and so on. This is ideal situation
     10and current world is not ideal.
     11
     12We know, there are many versions of rip, so in ideal world, there should be just some
     13rules, how to change original subtitles to fit them to the movie version. For example:
     141. Take [Matrix] subtitles id 123456
     152. Change frame-rate from 25 FPS to 23.978 FPS
     163. Add 3 seconds to the beginning
     174. Cut subtitles at 1 hour 25 minutes 45 seconds 78 milliseconds and make 2 files
     18
     19With these rules we can represent any version, and hopefully any needs for movie.
     20One big advantage of this system is wiki-style of subtitle editing, so, you look
     21movie, you will find some bad translation or typo, you login to the site and edit
     22these subtitles online (or using some program implementing our API).
     23All these changes will be present for the all versions.
     24
     25So in the system will be one master subtitle for each version of movie (original version,
     26directors cut). This will be beginning and in database we will got rules, how to "change" it
     27for different movie rips. So, master subtitle is present in database and by analyzing
     28timestamps of other uploaded subtitles we got rules for retiming it to the another movie
     29rips, thats theory.
     30
     31Wiki editing - users should be able to edit and translate subtitles online, with versioning
     32system. All changes will be tracked, so in the final we will have in system how many changes
     33was done by each user.
     34
     35Subtitles export - subtitles in the system are saved as metadata, so user can choose any
     36subtitle format as he want.
     37
     38Realtime Re-timing, cutting - SubLib supports re-timing, cutting, "moving" subtitles, so
     39this should be done also online and via API.
     40
     41== Movie section ==
     42
     43Implement more than one website for movies, now is implemented only imdb.com, which is not
     44bad, but they don't provide any official API access to their database. That's why there is need to
     45implement sites like themoviedb.org and tvseries.org (?).
     46
     47Movie hashing - there is little need for stronger hash, which need some research, how to
     48done it properly, because current implementation (CRC64) is weak and can lead to collisions in
     49future (so far there was no collisions). Ideally, system should be coded for more kind of hashes.
     50I think wrong idea is put into hash information such is movielength, fps, dimensions of movie
     51and such. Hash should be only file dependent, for example first and last 128kb (sha1), and
     52filesize together hashed (sha1).
     53
     54Media information - in database there is need to save such information, but problem is
     55implementation can be different in programs. The most important is FPS.
     56
     57== User Section ==
     58
     59Registration - simple as possible - UserName, Email, Password, possible login using social sites,
     60openid and so on (rpxnow.com).
     61
     62Groups and permissions - similar like in current version of opensubtitles. There are permissions,
     63groups got 1 or many permissions, and user can belong to 1 or more groups.
     64
     65== Translator Groups ==
     66
     67There should be some _good_ support for subtitle translators and their groups. This need more
     68research how to done it properly.
     69
     70== Website Translation ==
     71
     72Current system of website translation is OK.
     73
     74== API Access ==
     75
     76Only registered useragents will have API access by using their key. API should be provided
     77by different standards such as XML-RPC (current), REST, JSON...
     78
     79== Caching ==
     80
     81
     82
     83== Software specification ==
     84
     85Lighttpd as http server
     86Postgre SQL as database server, Python as programming language,
     87Django as framework, Memcache for memory caching, (research) for subtitle caching,
     88
     89Sphinx-search for fulltext search
     90
     91
     92Study
     93=====
     94X-Send-File
     95ako cachovat titule - db, filesystem,...?