{ "info": { "author": "Kirill Kuzminykh", "author_email": "cykooz@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Multimedia :: Graphics", "Topic :: Multimedia :: Graphics :: Graphics Conversion" ], "description": "***********\ncykooz.heif\n***********\n\n``cykooz.heif`` is simple python wrapper for the library `libheif-rs `_.\n\n``RawHeifImage`` is a simple wrapper around low level HEIF-decoder.\n\nUsage Examples\n==============\n\nRead HEIF-image from file:\n\n.. code-block:: python\n\n from cykooz.heif.image import RawHeifImage\n\n img = RawHeifImage.from_path('data/test.heif')\n assert img.width == 3024\n assert img.height == 4032\n assert img.mode == 'RGB'\n assert len(img.data) == 36578304\n assert img.stride == 9072\n assert len(img.exif) == 2026\n\nRead HEIF-image from file-like object:\n\n.. code-block:: python\n\n from cykooz.heif.image import RawHeifImage\n\n with open('data/test.heif') as fp\n img = RawHeifImage.from_stream(fp)\n assert img.width == 3024\n assert img.height == 4032\n\nAlso package provides an opener plugin for ``PIL`` (``Pillow``):\n\n.. code-block:: python\n\n from PIL import Image\n from cykooz.heif.pil import register_heif_opener\n\n register_heif_opener()\n img = Image.open('data/test.heif')\n assert isinstance(img, Image.Image)\n assert img.size == (3024, 4032)\n assert img.mode == 'RGB'\n assert img.getpixel((100, 100)) == (73, 73, 69)\n img.save('test.jpg', 'JPEG')\n\nInstallation from source\n========================\n\nSystem requirements:\n\n- Nightly Rust (https://www.rust-lang.org/)\n- libheif-dev >= 1.5 (https://github.com/strukturag/libheif)\n- python3-dev (tested with Python 3.6 and 3.7)\n\nUbuntu 18.04\n------------\n\n.. code-block:: console\n\n $ sudo add-apt-repository ppa:strukturag/libheif\n $ sudo apt-get install build-essential python3.7-dev libheif-dev curl\n $ curl https://sh.rustup.rs -sSf | sh\n $ source $HOME/.cargo/env\n $ rustup toolchain install nightly\n $ pip3 install -U setuptools setuptools-rust\n $ PYTHON_SYS_EXECUTABLE=python3 pip3 install cykooz.heif\n\n\n.. Changelog format guide.\n - Before make new release of egg you MUST add here a header for new version with name \"Next release\".\n - After all headers and paragraphs you MUST add only ONE empty line.\n - At the end of sentence which describes some changes SHOULD be identifier of task from our task manager.\n This identifier MUST be placed in brackets. If a hot fix has not the task identifier then you\n can use the word \"HOTFIX\" instead of it.\n - At the end of sentence MUST stand a point.\n - List of changes in the one version MUST be grouped in the next sections:\n - Features\n - Changes\n - Bug Fixes\n - Docs\n\nCHANGELOG\n*********\n\n0.6 (2019-10-03)\n================\n\nChanges\n-------\n\n- Updated version of ``pyo3`` to 0.8.\n- Updated version of ``libheif-rs`` to 0.8.\n\n0.5 (2019-08-28)\n================\n\nChanges\n-------\n\n- Updated version of ``libheif-rs`` to 0.6.\n\n0.4.2 (2019-07-17)\n==================\n\nBug Fixes\n---------\n\n- Added checking of image type inside of ``HeifImageFile._open()``.\n\n0.4 (2019-07-17)\n================\n\nFeatures\n--------\n\n- Added ``RawHeifImage.check_file_type`` to check by first bytes of file\n what it file is supported by ``libheif``.\n- Added opener plugin for ``Pillow``.\n\n0.3 (2019-06-28)\n================\n\nFeatures\n--------\n\n- Added method for creating ``HeifImage`` from any file-like object.\n\n0.2 (2019-06-25)\n================\n\nChanges\n-------\n\n- Added exception ``HeifError``.\n\n0.1 (2019-06-25)\n================\n\n- Initial version.", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Cykooz/cykooz.heif", "keywords": "heif,heic,libheif,pil,pillow", "license": "", "maintainer": "", "maintainer_email": "", "name": "cykooz.heif", "package_url": "https://pypi.org/project/cykooz.heif/", "platform": "", "project_url": "https://pypi.org/project/cykooz.heif/", "project_urls": { "Homepage": "https://github.com/Cykooz/cykooz.heif" }, "release_url": "https://pypi.org/project/cykooz.heif/0.6/", "requires_dist": null, "requires_python": "", "summary": "A decoder of HEIF format of images", "version": "0.6" }, "last_serial": 5925461, "releases": { "0.6": [ { "comment_text": "", "digests": { "md5": "b2aa59e2956e851c4bc2e38871323552", "sha256": "c04d60fd91b935fa70ec958858b510855ced443b50a8624dc638c709498c337c" }, "downloads": -1, "filename": "cykooz.heif-0.6.tar.gz", "has_sig": false, "md5_digest": "b2aa59e2956e851c4bc2e38871323552", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10875, "upload_time": "2019-10-03T21:00:55", "url": "https://files.pythonhosted.org/packages/5f/1a/ea2bd1c2dcd8dc63dcf9e096ff903e579d7a9554b4e2a74ccd38af09fb09/cykooz.heif-0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b2aa59e2956e851c4bc2e38871323552", "sha256": "c04d60fd91b935fa70ec958858b510855ced443b50a8624dc638c709498c337c" }, "downloads": -1, "filename": "cykooz.heif-0.6.tar.gz", "has_sig": false, "md5_digest": "b2aa59e2956e851c4bc2e38871323552", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10875, "upload_time": "2019-10-03T21:00:55", "url": "https://files.pythonhosted.org/packages/5f/1a/ea2bd1c2dcd8dc63dcf9e096ff903e579d7a9554b4e2a74ccd38af09fb09/cykooz.heif-0.6.tar.gz" } ] }