{ "info": { "author": "Globo.com", "author_email": "UNKNOWN", "bugtrack_url": null, "classifiers": [], "description": "live\\_thumb\n===========\n\nLive thumbnail using `MJPEG`_ and `nginx\\_push\\_stream`_.\n\nUsage\n-----\n\nCompile Nginx with `nginx\\_push\\_stream`_ support. The example config also uses lua-nginx-module and lua-resty-redis to store and serve old snapshots from Redis, but this module is optional. The Nginx configuration should be something like this:\n\n::\n\n $ LUAJIT_LIB=/usr/local/lib/ LUAJIT_INC=/usr/local/include/luajit-2.0 ./configure --add-module=../nginx-push-stream-module --add-module=../lua-nginx-module --with-pcre --with-ipv6 --with-ld-opt=-L/usr/local/lib\n\nNow run Nginx with sample config:\n\n::\n\n $ nginx -c $PWD/nginx.conf\n\nMake a directory to store the thumbs\n\n::\n\n $ mkdir -p frames/parts\n\nStart ffmpeg to create thumbs for a channel (``parts`` in this example):\n\n::\n\n $ ffmpeg -re -i rtmp://example.com/live/stream -vf \"scale=159:-1\" -r 3 frames/parts/thumb%9d.jpg\n\nRun the broadcaster:\n\n::\n\n $ python broadcaster.py\n\nIf you prefer, install the script using ``pip`` and run it:\n\n::\n\n $ pip install live_thumb\n $ broadcaster\n\nWatch the movie with the example html:\n\n::\n\n $ open test.html\n\nOr go to ``http://localhost:9080/sub/parts`` directly.\n\n\nTo also store the snapshots on redis, you should run the broadcaster with an extra env variable:\n\n::\n\n $ REDIS_HOST=\"localhost\" REDIS_PORT=7000 python broadcaster.py\n\n\nThe snapshots will be served from ``http://localhost:9080/snapshot/parts``. You can also specify a timestamp: ``http://localhost:9080/snapshot/parts?timestamp=1396381230``\n\n\n.. _MJPEG: http://en.wikipedia.org/wiki/Motion_JPEG\n.. _nginx\\_push\\_stream: https://github.com/wandenberg/nginx-push-stream-module", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "live_thumb", "package_url": "https://pypi.org/project/live_thumb/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/live_thumb/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/live_thumb/0.1.10/", "requires_dist": null, "requires_python": null, "summary": "MJPEG broadcaster", "version": "0.1.10" }, "last_serial": 2245670, "releases": { "0.0.10": [ { "comment_text": "", "digests": { "md5": "7ec19aa9075ac684761ac7a9e3bcb15c", "sha256": "fb41f97a8e4c32b6255b3384a3c480163e4087bd64c3805afb4de0e70457bdf5" }, "downloads": -1, "filename": "live_thumb-0.0.10.tar.gz", "has_sig": false, "md5_digest": "7ec19aa9075ac684761ac7a9e3bcb15c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3407, "upload_time": "2014-04-25T17:01:03", "url": "https://files.pythonhosted.org/packages/67/26/85bbff1872d0e269e4b155ef7e71faa6ebce93b542324d60c970407eccdd/live_thumb-0.0.10.tar.gz" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "fbd789d227ffeca775341533f57f1e46", "sha256": "a6e49a1f842e92505060224d47a9d00db2df50d34c699a89ec69ad396b3df004" }, "downloads": -1, "filename": "live_thumb-0.0.11.tar.gz", "has_sig": false, "md5_digest": "fbd789d227ffeca775341533f57f1e46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3424, "upload_time": "2014-04-25T17:09:57", "url": "https://files.pythonhosted.org/packages/f8/3d/c5edb2281a0466b7aafe0c65c6e92b8c9a209567afe62b3fb9415c56b7df/live_thumb-0.0.11.tar.gz" } ], "0.0.12": [ { "comment_text": "", "digests": { "md5": "8cd3b0448115eafbcdeb034317ff987c", "sha256": "5a1683284a1d9effa73b3944fce6c9bbc3e8b95b59ea3408d48a673e2ba1e82b" }, "downloads": -1, "filename": "live_thumb-0.0.12.tar.gz", "has_sig": false, "md5_digest": "8cd3b0448115eafbcdeb034317ff987c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3580, "upload_time": "2014-04-28T18:09:44", "url": "https://files.pythonhosted.org/packages/78/67/a15beb4be12e385373fa0eb9c7b8e232ca52f3022d9b520ce87b01dd224b/live_thumb-0.0.12.tar.gz" } ], "0.0.13": [ { "comment_text": "", "digests": { "md5": "36d8c5204d6374d5e7c4e4938ac46b5a", "sha256": "4bbd9c0c2ac3538bf9469b49eb1c87f3bc017f27a1131c2ce6cde34980eaa14e" }, "downloads": -1, "filename": "live_thumb-0.0.13.tar.gz", "has_sig": false, "md5_digest": "36d8c5204d6374d5e7c4e4938ac46b5a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3620, "upload_time": "2014-05-02T14:34:29", "url": "https://files.pythonhosted.org/packages/d7/73/00487043922fd68204c681b41b6317f13934c75600db0070b568e5c7f28a/live_thumb-0.0.13.tar.gz" } ], "0.0.14": [ { "comment_text": "", "digests": { "md5": "0ec9a408c638769fb3f10abeaea08cd2", "sha256": "76e49d663893f7c88516368b1bdc86fe5a73beb0be22f154345f57b881b0f2de" }, "downloads": -1, "filename": "live_thumb-0.0.14.tar.gz", "has_sig": false, "md5_digest": "0ec9a408c638769fb3f10abeaea08cd2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3649, "upload_time": "2014-05-05T18:48:21", "url": "https://files.pythonhosted.org/packages/55/00/e4bee262a1f3637ad48e0be576831b274c65919616d3513f330770f7e0e6/live_thumb-0.0.14.tar.gz" } ], "0.0.15": [ { "comment_text": "", "digests": { "md5": "2b7b2cad862668d4700e7b17d0501a4c", "sha256": "2f870ba14dccdfd2fa8c1a0551dc80e788306e6985f78994657d7c0a732e73f6" }, "downloads": -1, "filename": "live_thumb-0.0.15.tar.gz", "has_sig": false, "md5_digest": "2b7b2cad862668d4700e7b17d0501a4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3677, "upload_time": "2014-07-03T13:58:51", "url": "https://files.pythonhosted.org/packages/ee/eb/f2e5ea3e40698ad3b13e8fe78c60afe80ac1f2cb76ac36139d55ff6779b7/live_thumb-0.0.15.tar.gz" } ], "0.0.16": [ { "comment_text": "", "digests": { "md5": "c7e21ed8243a3ce390993d517ca6dc46", "sha256": "0165a1ef6e5fbba510639f1356d5fa369df46b4a95358f9b0348c3bf6b48321d" }, "downloads": -1, "filename": "live_thumb-0.0.16.tar.gz", "has_sig": false, "md5_digest": "c7e21ed8243a3ce390993d517ca6dc46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3676, "upload_time": "2014-07-03T19:36:40", "url": "https://files.pythonhosted.org/packages/d6/28/99314f493a1129e5210c8533f37b71d03ff93ede0e36830b6b27c0c672d2/live_thumb-0.0.16.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "80c9eb06d09b2d983d0cc8cb95f94d17", "sha256": "06131cab88042556d3d429913200e375e4ce0b75c2c73ebf9d41c2bd8a7d3f18" }, "downloads": -1, "filename": "live_thumb-0.0.2.tar.gz", "has_sig": false, "md5_digest": "80c9eb06d09b2d983d0cc8cb95f94d17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2285, "upload_time": "2014-01-06T18:28:03", "url": "https://files.pythonhosted.org/packages/25/8e/a97853dee972abfa1c5ca8c41705e342c85c3fe9931fcbb6cf0f94b6b496/live_thumb-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "7675bf09d6a3880e3bd778b05a4861b9", "sha256": "f3702f18b01de9399cec37ea3b948a8aaa860e3071dcc1d7ba9a0dae7e3c4a54" }, "downloads": -1, "filename": "live_thumb-0.0.3.tar.gz", "has_sig": false, "md5_digest": "7675bf09d6a3880e3bd778b05a4861b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2391, "upload_time": "2014-01-07T20:03:16", "url": "https://files.pythonhosted.org/packages/fc/6e/5de14301d81f2e20eb9ca64d2d4a179c861f4b165ff49a78d6147e708d1e/live_thumb-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "158517cf929aa722abc5b9c08eedbe70", "sha256": "4c61c01824823bedf9be052593a4ab08280004d15bf48059d75f5c55b600a3aa" }, "downloads": -1, "filename": "live_thumb-0.0.4.tar.gz", "has_sig": false, "md5_digest": "158517cf929aa722abc5b9c08eedbe70", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2474, "upload_time": "2014-01-08T13:39:06", "url": "https://files.pythonhosted.org/packages/4b/a4/977810d14707725fa747a750f23dfacb1f3f1ef31e6e0a2c792bc60a8608/live_thumb-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "116912f8abcfeaf6375d5c091670a503", "sha256": "19c9c4ecdb9b5292a947440af2f01b29de195e41f3846614a1a63b112ef8b0e7" }, "downloads": -1, "filename": "live_thumb-0.0.5.tar.gz", "has_sig": false, "md5_digest": "116912f8abcfeaf6375d5c091670a503", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2614, "upload_time": "2014-01-09T19:30:48", "url": "https://files.pythonhosted.org/packages/b0/32/be927ab1494a61c4688e0f672daa4afa5f0cfdf44c189588a51185325cb0/live_thumb-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "68ea6ec0c31b3359ced4533c66c0b482", "sha256": "d247e50603e30f73e753a1c8298ae155780fdc6a383c6292398be9e18d939371" }, "downloads": -1, "filename": "live_thumb-0.0.6.tar.gz", "has_sig": false, "md5_digest": "68ea6ec0c31b3359ced4533c66c0b482", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2604, "upload_time": "2014-01-10T12:35:27", "url": "https://files.pythonhosted.org/packages/df/bc/e9bc89418690a87f13a4b343393412e0d822973f679f5c08333f761e6955/live_thumb-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "8966e2df35b3e1e8416617f344c01992", "sha256": "6303536f4e8da2dc8b8beec27433613abb63103d0c7dca9a70fd04ebb7b0e76a" }, "downloads": -1, "filename": "live_thumb-0.0.7.tar.gz", "has_sig": false, "md5_digest": "8966e2df35b3e1e8416617f344c01992", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2696, "upload_time": "2014-01-10T15:58:28", "url": "https://files.pythonhosted.org/packages/2b/02/f4c6e5211434d7b08bc9ac0a18dcefdd91ddf832dfaea91cf5d7eda4a03f/live_thumb-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "484cfb3a4186729d7139a1a54050f9df", "sha256": "0c131461dcad3decae2527e6351180e2f834852cf18156de6453542a2fafe591" }, "downloads": -1, "filename": "live_thumb-0.0.8.tar.gz", "has_sig": false, "md5_digest": "484cfb3a4186729d7139a1a54050f9df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2778, "upload_time": "2014-02-12T12:31:55", "url": "https://files.pythonhosted.org/packages/ba/7b/c5b56a4f75f72d00b889a1779ba4ec987cd483d176f703235d1bfd7ccb1b/live_thumb-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "dd0f5fcd2554951de02e578b247c18c3", "sha256": "df97877bea52f9bb2a62d4d4903343fac2cd02970f86a5dad19ceea183aba97a" }, "downloads": -1, "filename": "live_thumb-0.0.9.tar.gz", "has_sig": false, "md5_digest": "dd0f5fcd2554951de02e578b247c18c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3386, "upload_time": "2014-04-25T16:52:27", "url": "https://files.pythonhosted.org/packages/82/f8/10772ade585e54295769f24ee70dd1929108cb40b87e797952f6bc71742c/live_thumb-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "fac398db081b545cf82f3da8670d4599", "sha256": "cfeb2999b214874ad7a4948951c808089760729c73905d11e24d13edddac08c1" }, "downloads": -1, "filename": "live_thumb-0.1.0.tar.gz", "has_sig": false, "md5_digest": "fac398db081b545cf82f3da8670d4599", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3741, "upload_time": "2014-09-11T19:24:24", "url": "https://files.pythonhosted.org/packages/ac/8a/c2aed61c0f61225d84829a938bfc7d2c2f7a6081e836a8be303a01ac74c9/live_thumb-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "6eb001c574fa4cf4e5e0c77a51838e95", "sha256": "68767bf87939bc3e166ec91da04ae8df14ef679ee5b5f0f28cf1f46f078b6ad5" }, "downloads": -1, "filename": "live_thumb-0.1.1.tar.gz", "has_sig": false, "md5_digest": "6eb001c574fa4cf4e5e0c77a51838e95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3740, "upload_time": "2014-09-11T20:46:36", "url": "https://files.pythonhosted.org/packages/04/68/e3dd4262759b8cd6b2f9b17812706aabb34d94a09a20907365a9a5851d6c/live_thumb-0.1.1.tar.gz" } ], "0.1.10": [ { "comment_text": "", "digests": { "md5": "39c8e26941f1808e98c6ecf743e9eadd", "sha256": "9da6eaae6f982cc7ba76cff6091940389c13ed780073d8c533e2c16a4c3b6b90" }, "downloads": -1, "filename": "live_thumb-0.1.10.tar.gz", "has_sig": false, "md5_digest": "39c8e26941f1808e98c6ecf743e9eadd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4597, "upload_time": "2016-07-26T21:23:01", "url": "https://files.pythonhosted.org/packages/29/8b/0e59bf615b9c0f67e6d2b2d9c037a3c7215bbbb3cb2bcd7e8e68889a9c82/live_thumb-0.1.10.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "769d9afedf13018e85122eeefc76aff5", "sha256": "680dc49d3cf9f2646f10d07cd296f6e2aae19ba76f1ad805a3ea01a547028c3d" }, "downloads": -1, "filename": "live_thumb-0.1.2.tar.gz", "has_sig": false, "md5_digest": "769d9afedf13018e85122eeefc76aff5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3936, "upload_time": "2014-09-18T21:25:46", "url": "https://files.pythonhosted.org/packages/26/74/fbd2b3509e7a8de200338819bbe89579f7ea9cd10dbe238c03ffa013e6a1/live_thumb-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "094845a78ea153d3f0f55c4f8e7af082", "sha256": "06449415eac39f00c31d6036a91b61b715c3751bb62e89a71dd5e7d35fdc7515" }, "downloads": -1, "filename": "live_thumb-0.1.3.tar.gz", "has_sig": false, "md5_digest": "094845a78ea153d3f0f55c4f8e7af082", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4060, "upload_time": "2014-09-19T14:18:43", "url": "https://files.pythonhosted.org/packages/f7/05/4db0f72503297cf0844d27f231b9b5f602de1d435680bc16f2852bf526e9/live_thumb-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "8dcb7de0819197bba551a95941023824", "sha256": "479896f8c0523419347332be41433e3ca486a9b3f540966409394eb6614b8e36" }, "downloads": -1, "filename": "live_thumb-0.1.4.tar.gz", "has_sig": false, "md5_digest": "8dcb7de0819197bba551a95941023824", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4062, "upload_time": "2014-09-22T12:49:31", "url": "https://files.pythonhosted.org/packages/24/55/eb1f8b59e983d91513d30eecd10944f99f8519837f522d9dcd4e5b2d93c1/live_thumb-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "cf141c0477556df90c5f5cf4a2c0c66f", "sha256": "f987a6f399d02e7671d4c238fedd40baca635b3c8950404f778033976f2f0215" }, "downloads": -1, "filename": "live_thumb-0.1.5.tar.gz", "has_sig": false, "md5_digest": "cf141c0477556df90c5f5cf4a2c0c66f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4015, "upload_time": "2014-10-06T18:20:28", "url": "https://files.pythonhosted.org/packages/ac/2d/251d52291759abc6d1dd7ae4cfb3399a7543133f655d989a2e0f413d1b07/live_thumb-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "91450bdcd2509b6a8449ee4431cc334e", "sha256": "1bc4098c826ecc99e8f960e84ec080113950be868c9fb9626ab090d1788e1f8f" }, "downloads": -1, "filename": "live_thumb-0.1.6.tar.gz", "has_sig": false, "md5_digest": "91450bdcd2509b6a8449ee4431cc334e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4052, "upload_time": "2014-11-17T16:23:49", "url": "https://files.pythonhosted.org/packages/ca/cd/757ba11edf47fc9ffe746c8ef8e11a64d17d149fefa6d7a4bc412ab7fcaf/live_thumb-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "ee60f026c92595b0e2d14e50bf822959", "sha256": "a58ede50589d3411c2dcae816be9941e38103191323c157dbcdf62ac0950aef3" }, "downloads": -1, "filename": "live_thumb-0.1.7.tar.gz", "has_sig": false, "md5_digest": "ee60f026c92595b0e2d14e50bf822959", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4072, "upload_time": "2015-10-29T20:35:19", "url": "https://files.pythonhosted.org/packages/50/c4/03cec06ae78f74cfc53a83cd715739a6be1fbd027b37200d924a4d7ebdf7/live_thumb-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "c0e4536a1ba730d53b36436a54316268", "sha256": "74e1c612abc33c4726b09e1e82f18cd0f56dd1bd8ced081febcab9e54962f030" }, "downloads": -1, "filename": "live_thumb-0.1.8.tar.gz", "has_sig": false, "md5_digest": "c0e4536a1ba730d53b36436a54316268", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4594, "upload_time": "2016-07-26T20:40:30", "url": "https://files.pythonhosted.org/packages/77/a0/dd74b4f46d1d8277183266bb51373062ab12597690cdaf945a2140df7141/live_thumb-0.1.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "39c8e26941f1808e98c6ecf743e9eadd", "sha256": "9da6eaae6f982cc7ba76cff6091940389c13ed780073d8c533e2c16a4c3b6b90" }, "downloads": -1, "filename": "live_thumb-0.1.10.tar.gz", "has_sig": false, "md5_digest": "39c8e26941f1808e98c6ecf743e9eadd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4597, "upload_time": "2016-07-26T21:23:01", "url": "https://files.pythonhosted.org/packages/29/8b/0e59bf615b9c0f67e6d2b2d9c037a3c7215bbbb3cb2bcd7e8e68889a9c82/live_thumb-0.1.10.tar.gz" } ] }