quick fix 2
This commit is contained in:
127
Lib/site-packages/ffpyplayer-4.5.3.dist-info/METADATA
Normal file
127
Lib/site-packages/ffpyplayer-4.5.3.dist-info/METADATA
Normal file
@ -0,0 +1,127 @@
|
||||
Metadata-Version: 2.4
|
||||
Name: ffpyplayer
|
||||
Version: 4.5.3
|
||||
Summary: A cython implementation of an ffmpeg based player.
|
||||
Home-page: https://matham.github.io/ffpyplayer/
|
||||
Author: Matthew Einhorn
|
||||
Author-email: matt@einhorn.dev
|
||||
License: LGPL3
|
||||
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
|
||||
Classifier: Topic :: Multimedia :: Video
|
||||
Classifier: Topic :: Multimedia :: Video :: Display
|
||||
Classifier: Topic :: Multimedia :: Sound/Audio :: Players
|
||||
Classifier: Topic :: Multimedia :: Sound/Audio :: Players :: MP3
|
||||
Classifier: Programming Language :: Python :: 3.7
|
||||
Classifier: Programming Language :: Python :: 3.8
|
||||
Classifier: Programming Language :: Python :: 3.9
|
||||
Classifier: Programming Language :: Python :: 3.10
|
||||
Classifier: Programming Language :: Python :: 3.11
|
||||
Classifier: Programming Language :: Python :: 3.12
|
||||
Classifier: Programming Language :: Python :: 3.13
|
||||
Classifier: Operating System :: MacOS :: MacOS X
|
||||
Classifier: Operating System :: Microsoft :: Windows
|
||||
Classifier: Operating System :: POSIX :: BSD :: FreeBSD
|
||||
Classifier: Operating System :: POSIX :: Linux
|
||||
Classifier: Intended Audience :: Developers
|
||||
License-File: COPYING
|
||||
Dynamic: author
|
||||
Dynamic: author-email
|
||||
Dynamic: classifier
|
||||
Dynamic: description
|
||||
Dynamic: home-page
|
||||
Dynamic: license
|
||||
Dynamic: license-file
|
||||
Dynamic: summary
|
||||
|
||||
FFPyPlayer is a python binding for the FFmpeg library for playing and writing
|
||||
media files.
|
||||
|
||||
For more information: https://matham.github.io/ffpyplayer/index.html
|
||||
|
||||
To install: https://matham.github.io/ffpyplayer/installation.html
|
||||
|
||||
.. image:: https://travis-ci.org/matham/ffpyplayer.svg?branch=master
|
||||
:target: https://travis-ci.org/matham/ffpyplayer
|
||||
:alt: TravisCI status
|
||||
|
||||
.. image:: https://ci.appveyor.com/api/projects/status/nfl6tyiwks26ngyu/branch/master?svg=true
|
||||
:target: https://ci.appveyor.com/project/matham/ffpyplayer/branch/master
|
||||
:alt: Appveyor status
|
||||
|
||||
.. image:: https://img.shields.io/pypi/pyversions/ffpyplayer.svg
|
||||
:target: https://pypi.python.org/pypi/ffpyplayer/
|
||||
:alt: Supported Python versions
|
||||
|
||||
.. image:: https://img.shields.io/pypi/v/ffpyplayer.svg
|
||||
:target: https://pypi.python.org/pypi/ffpyplayer/
|
||||
:alt: Latest Version on PyPI
|
||||
|
||||
.. warning::
|
||||
|
||||
Although the ffpyplayer source code is licensed under the LGPL, the ffpyplayer wheels
|
||||
for Windows and linux on PYPI are distributed under the GPL because the included FFmpeg binaries
|
||||
were compiled with GPL options.
|
||||
|
||||
If you want to use it under the LGPL you need to compile FFmpeg yourself with the correct options.
|
||||
|
||||
Similarly, the wheels bundle openssl for online camera support. However, releases are not made
|
||||
for every openssl release, so it is recommended that you compile ffpyplayer yourself if security
|
||||
is a issue.
|
||||
|
||||
Usage example
|
||||
-------------
|
||||
|
||||
Playing a file:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
>>> from ffpyplayer.player import MediaPlayer
|
||||
>>> import time
|
||||
|
||||
>>> player = MediaPlayer(filename)
|
||||
>>> val = ''
|
||||
>>> while val != 'eof':
|
||||
... frame, val = player.get_frame()
|
||||
... if val != 'eof' and frame is not None:
|
||||
... img, t = frame
|
||||
... # display img
|
||||
|
||||
Writing a video file:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
>>> from ffpyplayer.writer import MediaWriter
|
||||
>>> from ffpyplayer.pic import Image
|
||||
|
||||
>>> w, h = 640, 480
|
||||
>>> # write at 5 fps.
|
||||
>>> out_opts = {'pix_fmt_in':'rgb24', 'width_in':w, 'height_in':h,
|
||||
... 'codec':'rawvideo', 'frame_rate':(5, 1)}
|
||||
>>> writer = MediaWriter('output.avi', [out_opts])
|
||||
|
||||
>>> # Construct image
|
||||
>>> size = w * h * 3
|
||||
>>> buf = bytearray([int(x * 255 / size) for x in range(size)])
|
||||
>>> img = Image(plane_buffers=[buf], pix_fmt='rgb24', size=(w, h))
|
||||
|
||||
>>> for i in range(20):
|
||||
... writer.write_frame(img=img, pts=i / 5., stream=0)
|
||||
|
||||
Converting images:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
>>> from ffpyplayer.pic import Image, SWScale
|
||||
>>> w, h = 500, 100
|
||||
>>> size = w * h * 3
|
||||
>>> buf = bytearray([int(x * 255 / size) for x in range(size)])
|
||||
|
||||
>>> img = Image(plane_buffers=[buf], pix_fmt='rgb24', size=(w, h))
|
||||
>>> sws = SWScale(w, h, img.get_pixel_format(), ofmt='yuv420p')
|
||||
|
||||
>>> img2 = sws.scale(img)
|
||||
>>> img2.get_pixel_format()
|
||||
'yuv420p'
|
||||
>>> planes = img2.to_bytearray()
|
||||
>>> map(len, planes)
|
||||
[50000, 12500, 12500, 0]
|
||||
Reference in New Issue
Block a user