# avplayer
[![PyPI](https://img.shields.io/pypi/v/avplayer?style=flat-square)](https://pypi.org/project/avplayer/)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/avplayer?style=flat-square)
[![GitHub](https://img.shields.io/github/license/osom8979/avplayer?style=flat-square)](https://github.com/osom8979/avplayer/)
PyAV Media Player
## Installation
Install `avplayer`:
```shell
pip install avplayer
```
If you want to use the [tk](https://docs.python.org/3/library/tkinter.html) preview:
```shell
pip install avplayer[Pillow]
```
## Commandline Tools
```shell
python -m avplayer --help
```
## Realtime support
If it is important to get the latest frame in real-time streaming
such as RTSP streaming, we recommend adjusting the `--drop-*` related options.
```bash
python -m avplayer --drop-slow-frame --drop-threshold=1 ...
```
The `cvplayer.avconfig.AvConfig` class can be used as follows:
```python
from avplayer.avconfig import AvConfig
config = AvConfig(
input_file="rtsp://...",
drop_slow_frame=True,
drop_threshold=1,
)
```
## Features
### [opencv-python](https://pypi.org/project/opencv-python/) compatibility
To prevent freeze when using opencv-python's imshow,
do not use `import av` at file-scope.
Please refer to the following link:
* [AV import leads to OpenCV imshow freeze · Issue #21952 · opencv/opencv](https://github.com/opencv/opencv/issues/21952)
* [python - Can't show image with opencv when importing av - Stack Overflow](https://stackoverflow.com/questions/72604912/cant-show-image-with-opencv-when-importing-av)
## Examples
### OpenCV - highgui
See the [examples/cv2_example.py](./examples/cv2_example.py) file.
## License
See the [LICENSE](./LICENSE) file for details. In summary,
**avplayer** is licensed under the **MIT license**.
Raw data
{
"_id": null,
"home_page": "https://github.com/osom8979/avplayer",
"name": "avplayer",
"maintainer": "zer0",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "osom8979@gmail.com",
"keywords": null,
"author": "zer0",
"author_email": "osom8979@gmail.com",
"download_url": null,
"platform": null,
"description": "# avplayer\n\n[![PyPI](https://img.shields.io/pypi/v/avplayer?style=flat-square)](https://pypi.org/project/avplayer/)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/avplayer?style=flat-square)\n[![GitHub](https://img.shields.io/github/license/osom8979/avplayer?style=flat-square)](https://github.com/osom8979/avplayer/)\n\nPyAV Media Player\n\n## Installation\n\nInstall `avplayer`:\n\n```shell\npip install avplayer\n```\n\nIf you want to use the [tk](https://docs.python.org/3/library/tkinter.html) preview:\n\n```shell\npip install avplayer[Pillow]\n```\n\n## Commandline Tools\n\n```shell\npython -m avplayer --help\n```\n\n## Realtime support\n\nIf it is important to get the latest frame in real-time streaming\nsuch as RTSP streaming, we recommend adjusting the `--drop-*` related options.\n\n```bash\npython -m avplayer --drop-slow-frame --drop-threshold=1 ...\n```\n\nThe `cvplayer.avconfig.AvConfig` class can be used as follows:\n\n```python\nfrom avplayer.avconfig import AvConfig\n\nconfig = AvConfig(\n input_file=\"rtsp://...\",\n drop_slow_frame=True,\n drop_threshold=1,\n)\n```\n\n## Features\n\n### [opencv-python](https://pypi.org/project/opencv-python/) compatibility\n\nTo prevent freeze when using opencv-python's imshow,\ndo not use `import av` at file-scope.\n\nPlease refer to the following link:\n* [AV import leads to OpenCV imshow freeze \u00b7 Issue #21952 \u00b7 opencv/opencv](https://github.com/opencv/opencv/issues/21952)\n* [python - Can't show image with opencv when importing av - Stack Overflow](https://stackoverflow.com/questions/72604912/cant-show-image-with-opencv-when-importing-av)\n\n## Examples\n\n### OpenCV - highgui\n\nSee the [examples/cv2_example.py](./examples/cv2_example.py) file.\n\n## License\n\nSee the [LICENSE](./LICENSE) file for details. In summary,\n**avplayer** is licensed under the **MIT license**.\n\n\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "PyAV Media Player",
"version": "1.9.1",
"project_urls": {
"GitHub: issues": "https://github.com/osom8979/avplayer/issues",
"GitHub: repo": "https://github.com/osom8979/avplayer",
"Homepage": "https://github.com/osom8979/avplayer"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "bf83999eddbf336f5df026e146d86f344bad56296c4d578835caabbff7d43a2d",
"md5": "a6d08582f005cf82557d1430ecb8b870",
"sha256": "75a6730b3bd408e8bf8d25afc91d7943841be754768bf6326c0ca6708b2683d0"
},
"downloads": -1,
"filename": "avplayer-1.9.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a6d08582f005cf82557d1430ecb8b870",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 50443,
"upload_time": "2024-09-27T07:01:44",
"upload_time_iso_8601": "2024-09-27T07:01:44.381242Z",
"url": "https://files.pythonhosted.org/packages/bf/83/999eddbf336f5df026e146d86f344bad56296c4d578835caabbff7d43a2d/avplayer-1.9.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-27 07:01:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "osom8979",
"github_project": "avplayer",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "avplayer"
}