{ "info": { "author": "JeanMichel FRANCOIS aka toutpt", "author_email": "toutpt@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: OS Independent", "Programming Language :: Python" ], "description": "Introduction\n============\n\nThis package is a set of tools to transform captions from one format to another.\nYou will find Writer and Reader for each format and a script if you want\nto use it in command line.\n\nSupported Format:\n\n* sbv Reader and Writer\n* srt Reader and Writer\n* ttml Reader and Writer\n* transcript Reader and Writer\n\nHow to use (API)\n================\n\nYou can read the provided unittest to have complete examples::\n\n from captionstransformer.sbv import Reader\n from captionstransformer.ttml import Writer\n from StringIO import StringIO\n test_content = StringIO(u\"\"\"\n 0:00:03.490,0:00:07.430\n >> FISHER: All right. So, let's begin.\n This session is: Going Social\n \n 0:00:07.430,0:00:11.600\n with the YouTube APIs. I am\n Jeff Fisher,\n \n 0:00:11.600,0:00:14.009\n and this is Johann Hartmann,\n we're presenting today.\n \n 0:00:14.009,0:00:15.889\n [pause]\n \"\"\")\n reader = Reader(test_content)\n\n captions = reader.read()\n len(captions) == 4\n first = captions[0]\n type(first.text) == unicode\n first.text == u\">> FISHER: All right. So, let's begin.\\nThis session is: Going Social\\n\"\n\n # next get a writer\n filelike = StringIO()\n writer = Writer(filelike)\n writer.set_captions(captions)\n text = writer.captions_to_text()\n text.startswith(u\"\"\"
\"\"\")\n writer.write()\n writer.close()\n\nAbout Formats\n=============\n\nThis quite hard to find simple documentation about existing caption format.\nHere is a set of existing named caption format:\n\nSubViewer (SUB)::\n\n 00:04:35.03,00:04:38.82\n Hello guys... please sit down...\n \n 00:05:00.19,00:05:03.47\n M. Franklin,[br]are you crazy?\n\n\nYoutube (SBV)::\n\n 0:00:03.490,0:00:07.430\n FISHER: All right. So, let's begin.\n This session is: Going Social\n \n 0:00:07.430,0:00:11.600\n with the YouTube APIs. I am\n Jeff Fisher,\n \n 0:00:11.600,0:00:14.009\n and this is Johann Hartmann,\n we're presenting today.\n \n 0:00:14.009,0:00:15.889\n [pause]\n\nSubRip (SRT)::\n\n 1\n 00:00:03,490 --> 00:00:07,430\n FISHER: All right. So, let's begin.\n This session is: Going Social\n \n 00:00:07,430 --> 00:00:11,600\n with the YouTube APIs. I am\n Jeff Fisher,\n \n 2\n 00:00:11,600 --> 00:00:14,009\n and this is Johann Hartmann,\n we're presenting today.\n \n 3\n 00:00:14,009 --> 00:00:15,889\n [pause]\n\nTimed Text Markup Language (TTML)::\n\n \n \n
\n

\n It seems a paradox, does it not,\n

\n

\n that the image formed on
\n the Retina should be inverted?\n

\n
\n \n
\n\nTranscript ::\n\n \n \n Hi, I'm Emily from Nomensa\n and today I'm going to be talking about the order of content on your pages.\n Making sure the content on your web pages is presented logically is a really important part of web accessibility.\n Page content should be ordered so it makes sense\n \n\n\nMicrosoft SAMI (SAMI, SMI)::\n\n \n \n President John F. Kennedy Speech\n \n Copyright {(C)Copyright 1997, Microsoft Corporation}\n Media {JF Kennedy.wav}\n Metrics {time:ms; duration: 73000;}\n Spec {MSFT:1.0;}\n \n \n \n \n \n

Pres. John F. Kennedy\n \n

Let the word go forth,\n from this time and place to friend and foe\n alike that the torch\n \n \n\n\nCredits\n=======\n\nCompanies\n---------\n\n|cirb|_ CIRB / CIBG\n\n* `Contact CIRB `_\n\n|makinacom|_\n\n* `Planet Makina Corpus `_\n* `Contact Makina Corpus `_\n\nAuthors\n\n- JeanMichel FRANCOIS aka toutpt \n\n.. Contributors\n\n.. |cirb| image:: http://www.cirb.irisnet.be/logo.jpg\n.. _cirb: http://cirb.irisnet.be\n.. |makinacom| image:: http://depot.makina-corpus.org/public/logo.gif\n.. _makinacom: http://www.makina-corpus.com\n\nChangelog\n=========\n\n1.2.1 (2012-08-07)\n------------------\n\n- force rawcontent to be unicode\n\n\n1.2 (2012-08-06)\n----------------\n\n- add support for time format like start=\"1.8\" in transcript\n- add youtube download captions: captionstransformer.youtube.get_captions &\n get_reader\n\n\n1.1 (2012-08-05)\n----------------\n\n- add extension and mimetype info into REGISTRY\n- add id info into REGISTRY\n\n1.0 (2012-07-23)\n----------------\n\n- Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/toutpt/captionstranformer", "keywords": "caption subtitle", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "captionstransformer", "package_url": "https://pypi.org/project/captionstransformer/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/captionstransformer/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/toutpt/captionstranformer" }, "release_url": "https://pypi.org/project/captionstransformer/1.2.1/", "requires_dist": null, "requires_python": null, "summary": "A set of tools (API + script) to read, write and transform captions from/to many formats", "version": "1.2.1" }, "last_serial": 653489, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "1c3e327dd76808f398b878072df0c77c", "sha256": "91d80cf862ce8e71a763255271182901c9eac6fdda27774d8c5e1ed3521b3947" }, "downloads": -1, "filename": "captionstransformer-1.0.zip", "has_sig": false, "md5_digest": "1c3e327dd76808f398b878072df0c77c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38432, "upload_time": "2012-07-23T15:43:43", "url": "https://files.pythonhosted.org/packages/1e/53/c0ae3d310ecc7637880bda523c2d81d94751be334f843f05de2d010dc085/captionstransformer-1.0.zip" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "a43c4d1845d4d4bd05d0fbdec02bafd5", "sha256": "2eb2815784f4b07eb7b6c4e3b82a4a4ffd9fe23bbd41864dee387f9752321567" }, "downloads": -1, "filename": "captionstransformer-1.1.zip", "has_sig": false, "md5_digest": "a43c4d1845d4d4bd05d0fbdec02bafd5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38828, "upload_time": "2012-08-05T23:32:19", "url": "https://files.pythonhosted.org/packages/d5/7c/888cba4bd9ce158f360fc077dcb3d63431758c1b2896824723d186ecc8df/captionstransformer-1.1.zip" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "ee096f9fcbbd2cd7bd541522955b736f", "sha256": "569f6e3c1d3315b9ba301d3ad0cc451bd1d8ce072e157702aa16d8007848efbe" }, "downloads": -1, "filename": "captionstransformer-1.2.zip", "has_sig": false, "md5_digest": "ee096f9fcbbd2cd7bd541522955b736f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41243, "upload_time": "2012-08-06T18:10:02", "url": "https://files.pythonhosted.org/packages/0a/83/d5b237f73f0068cdcaf92e56ff20dfcb620b665bd656eca3c707a8beb051/captionstransformer-1.2.zip" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "b5e30a19435c23dadbebe0ef24367cb3", "sha256": "6f5e0eb7ba49f0286dd183cbc082c5f2bffe790996ef3e749dbac5d28f8d86d8" }, "downloads": -1, "filename": "captionstransformer-1.2.1.zip", "has_sig": false, "md5_digest": "b5e30a19435c23dadbebe0ef24367cb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41499, "upload_time": "2012-08-07T10:47:40", "url": "https://files.pythonhosted.org/packages/3c/54/29c698d1690d7f35f387bba36bc135d5cf2dfce1c472b5d491e4529b3147/captionstransformer-1.2.1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b5e30a19435c23dadbebe0ef24367cb3", "sha256": "6f5e0eb7ba49f0286dd183cbc082c5f2bffe790996ef3e749dbac5d28f8d86d8" }, "downloads": -1, "filename": "captionstransformer-1.2.1.zip", "has_sig": false, "md5_digest": "b5e30a19435c23dadbebe0ef24367cb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41499, "upload_time": "2012-08-07T10:47:40", "url": "https://files.pythonhosted.org/packages/3c/54/29c698d1690d7f35f387bba36bc135d5cf2dfce1c472b5d491e4529b3147/captionstransformer-1.2.1.zip" } ] }