avfilters


Nameavfilters JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummaryCommon Audio and Video filters
upload_time2024-03-22 10:41:01
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords libav ffmpeg audio video filters
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # avfilters

[![Latest Release][pypi-version-badge]][pypi-version-url]
[![Python version][pypi-python-version-badge]][pypi-version-url]
[![Documentation][documentation-badge]][documentation-url]
[![Codecov][codecov-badge]][codecov-url]
[![PDM][pdm-badge]][pdm-url]

Curated list of common Audio/Video filters.

This library wraps the relatively complex PyAV bindings to provide
easy to use audio and video manipulation filters, such as files
concatenation, video reversing or video to GIF.

## Motivation

FFMPEG is a **powerful** tool for media files manipulation. Many
Python libraries already wrap the `ffmpeg` executable to
easily perform audio and video processing in Python.

**However**, most of those libraries call `ffmpeg`
through *subprocesses*. While this is fine in many
use cases, this has two major drawbacks:

1. you must have `ffmpeg` installed on your computer,
   and know the executable path;
2. and repeatedly calling subprocesses in a hot loop can
   be *quite* slow.

For performances reasons, a solution is to use
bindings to the FFMPEG C libraries, e.g.,
[PyAV](https://github.com/PyAV-Org/PyAV). Moreover,
PyAV ships (by default) with pre-built binary wheels
linking against FFMPEG C libraries, so you do not need
to rely on a *possible* local installation of `ffmpeg`.

Unfortunately, using PyAV can be quite complex,
especially as `ffmpeg` usually does a lot of
auto-corrections that PyAV does not automatically
perform.

This library aims at providing a straighforward
`ffmpeg`-like API for some very common use cases.

If you feel like a feature is missing, please
use the
[GitHub issues](https://github.com/jeertmans/avfilters/issues)
and detail your feature request.

## Getting started

First, add `avfilters` to you project's dependencies.

```python
from avfilters import reverse


reverse("original.mp4", "expected.mp4")
```

For more examples, take a look at the documentation.

## Getting help

You have a question or want to report a bug?

Please use the
[GitHub issues](https://github.com/jeertmans/avfilters/issues).

[pypi-version-badge]: https://img.shields.io/pypi/v/avfilters?label=avfilters&color=blueviolet
[pypi-version-url]: https://pypi.org/project/avfilters/
[pypi-python-version-badge]: https://img.shields.io/pypi/pyversions/avfilters?color=orange
[documentation-badge]: https://readthedocs.org/projects/avfilters/badge/?version=latest
[documentation-url]: https://avfilters.readthedocs.io/latest/?badge=latest
[codecov-badge]: https://codecov.io/gh/jeertmans/avfilters/branch/main/graph/badge.svg?token=8P4DY9JCE4
[codecov-url]: https://codecov.io/gh/jeertmans/avfilters
[pdm-badge]: https://img.shields.io/badge/pdm-managed-blueviolet
[pdm-url]: https://pdm-project.org

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "avfilters",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "libav, ffmpeg, audio, video, filters",
    "author": null,
    "author_email": "J\u00e9rome Eertmans <jeertmans@icloud.com>",
    "download_url": "https://files.pythonhosted.org/packages/96/4b/46b5538fb711dfff08a4f02f803996ae96ab379723586f97657e85b87502/avfilters-0.0.1.tar.gz",
    "platform": null,
    "description": "# avfilters\n\n[![Latest Release][pypi-version-badge]][pypi-version-url]\n[![Python version][pypi-python-version-badge]][pypi-version-url]\n[![Documentation][documentation-badge]][documentation-url]\n[![Codecov][codecov-badge]][codecov-url]\n[![PDM][pdm-badge]][pdm-url]\n\nCurated list of common Audio/Video filters.\n\nThis library wraps the relatively complex PyAV bindings to provide\neasy to use audio and video manipulation filters, such as files\nconcatenation, video reversing or video to GIF.\n\n## Motivation\n\nFFMPEG is a **powerful** tool for media files manipulation. Many\nPython libraries already wrap the `ffmpeg` executable to\neasily perform audio and video processing in Python.\n\n**However**, most of those libraries call `ffmpeg`\nthrough *subprocesses*. While this is fine in many\nuse cases, this has two major drawbacks:\n\n1. you must have `ffmpeg` installed on your computer,\n   and know the executable path;\n2. and repeatedly calling subprocesses in a hot loop can\n   be *quite* slow.\n\nFor performances reasons, a solution is to use\nbindings to the FFMPEG C libraries, e.g.,\n[PyAV](https://github.com/PyAV-Org/PyAV). Moreover,\nPyAV ships (by default) with pre-built binary wheels\nlinking against FFMPEG C libraries, so you do not need\nto rely on a *possible* local installation of `ffmpeg`.\n\nUnfortunately, using PyAV can be quite complex,\nespecially as `ffmpeg` usually does a lot of\nauto-corrections that PyAV does not automatically\nperform.\n\nThis library aims at providing a straighforward\n`ffmpeg`-like API for some very common use cases.\n\nIf you feel like a feature is missing, please\nuse the\n[GitHub issues](https://github.com/jeertmans/avfilters/issues)\nand detail your feature request.\n\n## Getting started\n\nFirst, add `avfilters` to you project's dependencies.\n\n```python\nfrom avfilters import reverse\n\n\nreverse(\"original.mp4\", \"expected.mp4\")\n```\n\nFor more examples, take a look at the documentation.\n\n## Getting help\n\nYou have a question or want to report a bug?\n\nPlease use the\n[GitHub issues](https://github.com/jeertmans/avfilters/issues).\n\n[pypi-version-badge]: https://img.shields.io/pypi/v/avfilters?label=avfilters&color=blueviolet\n[pypi-version-url]: https://pypi.org/project/avfilters/\n[pypi-python-version-badge]: https://img.shields.io/pypi/pyversions/avfilters?color=orange\n[documentation-badge]: https://readthedocs.org/projects/avfilters/badge/?version=latest\n[documentation-url]: https://avfilters.readthedocs.io/latest/?badge=latest\n[codecov-badge]: https://codecov.io/gh/jeertmans/avfilters/branch/main/graph/badge.svg?token=8P4DY9JCE4\n[codecov-url]: https://codecov.io/gh/jeertmans/avfilters\n[pdm-badge]: https://img.shields.io/badge/pdm-managed-blueviolet\n[pdm-url]: https://pdm-project.org\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Common Audio and Video filters",
    "version": "0.0.1",
    "project_urls": {
        "Changelog": "https://github.com/jeertmans/avfilters/releases",
        "Documentation": "https://avfilters.readthedocs.io/",
        "Founding": "https://github.com/sponsors/jeertmans",
        "Homepage": "https://github.com/jeertmans/avfilters",
        "Repository": "https://github.com/jeertmans/avfilters"
    },
    "split_keywords": [
        "libav",
        " ffmpeg",
        " audio",
        " video",
        " filters"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fbe0d5e9fe9561dbd05e7bfc8e8c5cf65fe906b5060d56e979628c6fa398e1ba",
                "md5": "5cb7bd51a9850600bfcc7485b4e616be",
                "sha256": "8c70c9a804d964312f0f51368312078e302c96a8b5649069b12d4a0f2c514970"
            },
            "downloads": -1,
            "filename": "avfilters-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5cb7bd51a9850600bfcc7485b4e616be",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 7640,
            "upload_time": "2024-03-22T10:40:54",
            "upload_time_iso_8601": "2024-03-22T10:40:54.772343Z",
            "url": "https://files.pythonhosted.org/packages/fb/e0/d5e9fe9561dbd05e7bfc8e8c5cf65fe906b5060d56e979628c6fa398e1ba/avfilters-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "964b46b5538fb711dfff08a4f02f803996ae96ab379723586f97657e85b87502",
                "md5": "62ea315e88dd33a2618aa8c91d1f4ff5",
                "sha256": "25a176e8241e055a3b29688ab5584e52ecbe5523d3d0eb06bad38115cb8092dd"
            },
            "downloads": -1,
            "filename": "avfilters-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "62ea315e88dd33a2618aa8c91d1f4ff5",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 9981,
            "upload_time": "2024-03-22T10:41:01",
            "upload_time_iso_8601": "2024-03-22T10:41:01.080446Z",
            "url": "https://files.pythonhosted.org/packages/96/4b/46b5538fb711dfff08a4f02f803996ae96ab379723586f97657e85b87502/avfilters-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-22 10:41:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jeertmans",
    "github_project": "avfilters",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "avfilters"
}
        
Elapsed time: 0.20286s