🌐
GitHub
github.com › jonghwanhyeon › python-ffmpeg
GitHub - jonghwanhyeon/python-ffmpeg: A python binding for FFmpeg which provides sync and async APIs · GitHub
from ffmpeg import FFmpeg, Progress def main(): ffmpeg = ( FFmpeg() .option("y") .input( "rtsp://username:password@127.0.0.1/cam", rtsp_transport="tcp", rtsp_flags="prefer_tcp", ) .output("output.mp4", vcodec="copy") ) @ffmpeg.on("progress") def time_to_terminate(progress: Progress): if progress.frame > 200: ffmpeg.terminate() ffmpeg.execute() if __name__ == "__main__": main() import asyncio from ffmpeg import Progress from ffmpeg.asyncio import FFmpeg async def main(): ffmpeg = ( FFmpeg() .option("y") .input( "rtsp://username:password@127.0.0.1/cam", rtsp_transport="tcp", rtsp_flags="prefer_tcp", ) .output("output.mp4", vcodec="copy") ) @ffmpeg.on("progress") def time_to_terminate(progress: Progress): if progress.frame > 200: ffmpeg.terminate() await ffmpeg.execute() if __name__ == "__main__": asyncio.run(main())
Starred by 382 users
Forked by 52 users
Languages   Python
🌐
GitHub
github.com › regulad › asyncio-ffmpeg
GitHub - regulad/asyncio-ffmpeg: Async Python bindings for FFmpeg - with complex filtering support
November 7, 2025 - Async Python bindings for FFmpeg - with complex filtering support - regulad/asyncio-ffmpeg
Author   regulad
🌐
FFmpeg Python
kkroening.github.io › ffmpeg-python
ffmpeg-python: Python bindings for FFmpeg — ffmpeg-python documentation
process = ( ffmpeg .input('pipe:', format='rawvideo', pix_fmt='rgb24', s='{}x{}'.format(width, height)) .output(out_filename, pix_fmt='yuv420p') .overwrite_output() .run_async(pipe_stdin=True) ) process.communicate(input=input_data)
🌐
GitHub
github.com › kkroening › ffmpeg-python › issues › 200
Asyncio support async/await · Issue #200 · kkroening/ffmpeg-python
May 4, 2019 - process = await ( ffmpeg .input('input.mp4') .output('pipe:', format='rawvideo', pix_fmt='rgb24')['v'] .run_asyncio(pipe_stdout=True, quiet=False) ) while True: frame_bytes = await process.stdout.read(video_frame_size) if len(frame_bytes) == 0: break await process.wait()
Author   akolpakov
🌐
GitHub
github.com › scivision › asyncio-subprocess-ffmpeg
GitHub - scivision/asyncio-subprocess-ffmpeg: Examples of Python asyncio.subprocess · GitHub
Examples of Python asyncio.subprocess with FFmpeg and also traditional synchronous processes.
Author   scivision
🌐
GitHub
github.com › yukihiko-shinoda › asyncffmpeg
GitHub - yukihiko-shinoda/asyncffmpeg: Supports async / await pattern for FFmpeg operations. · GitHub
This package supports FFmpeg asynchronously invoke with async / await pattern wrapping ffmpeg.run_async() of ffmpeg-python and returned subprocess.Popen.
Starred by 19 users
Forked by 2 users
Languages   Python 98.6% | Dockerfile 1.4%
🌐
GitHub
github.com › sumebrius › python-ffmpeg-asyncio
GitHub - sumebrius/python-ffmpeg-asyncio
A fork of the excellent python-ffmpeg binding for FFmpeg, updated for native async API support only.
Author   sumebrius
🌐
GitHub
github.com › regulad › asyncio-ffmpeg › blob › asyncio › README.md
asyncio-ffmpeg/README.md at asyncio · regulad/asyncio-ffmpeg
Async Python bindings for FFmpeg - with complex filtering support - asyncio-ffmpeg/README.md at asyncio · regulad/asyncio-ffmpeg
Author   regulad
🌐
PyPI
pypi.org › project › asyncffmpeg
asyncffmpeg · PyPI
This package supports FFmpeg asynchronously invoke with async / await pattern wrapping ffmpeg.run_async() of ffmpeg-python and returned subprocess.Popen.
      » pip install asyncffmpeg
    
Published   Feb 24, 2026
Version   1.3.1
🌐
GitHub
github.com › kkroening › ffmpeg-python › blob › master › ffmpeg › _run.py
ffmpeg-python/ffmpeg/_run.py at master · kkroening/ffmpeg-python
""" if isinstance(cmd, ... quiet=False, overwrite_output=False, cwd=None, ): """Asynchronously invoke ffmpeg for the supplied node graph....
Author   kkroening
Find elsewhere
🌐
GitHub
github.com › kkroening › ffmpeg-python › blob › master › examples › README.md
ffmpeg-python/examples/README.md at master · kkroening/ffmpeg-python
packet_size = 4096 process = ( ffmpeg .input('rtsp://%s:8554/default') .output('-', format='h264') .run_async(pipe_stdout=True) ) while process.poll() is None: packet = process.stdout.read(packet_size) try: tcp_socket.send(packet) except socket.error: process.stdout.close() process.wait() break
Author   kkroening
🌐
GitHub
github.com › kkroening › ffmpeg-python › tree › master › examples
ffmpeg-python/examples at master · kkroening/ffmpeg-python
packet_size = 4096 process = ( ffmpeg .input('rtsp://%s:8554/default') .output('-', format='h264') .run_async(pipe_stdout=True) ) while process.poll() is None: packet = process.stdout.read(packet_size) try: tcp_socket.send(packet) except socket.error: process.stdout.close() process.wait() break
Author   kkroening
🌐
GitHub
github.com › kkroening › ffmpeg-python › blob › master › ffmpeg › tests › test_ffmpeg.py
ffmpeg-python/ffmpeg/tests/test_ffmpeg.py at master · kkroening/ffmpeg-python
'ffmpeg.old', '-i', 'dummy.mp4', 'dummy2.mp4', ] · · @pytest.mark.parametrize('pipe_stdin', [True, False]) @pytest.mark.parametrize('pipe_stdout', [True, False]) @pytest.mark.parametrize('pipe_stderr', [True, False]) @pytest.mark.parametrize('cwd', [None, '/tmp']) def test__run_async(mocker, pipe_stdin, pipe_stdout, pipe_stderr, cwd): process__mock = mock.Mock() popen__mock = mocker.patch.object(subprocess, 'Popen', return_value=process__mock) stream = _get_simple_example() process = ffmpeg.run_async( stream, pipe_stdin=pipe_stdin, pipe_stdout=pipe_stdout, pipe_stderr=pipe_stderr, cwd=cwd, ) assert process is process__mock ·
Author   kkroening
🌐
PyPI
pypi.org › project › ffmpeg-asyncio
ffmpeg-asyncio · PyPI
May 18, 2024 - A fork of the excellent python-ffmpeg binding for FFmpeg, updated for native async API support only.
      » pip install ffmpeg-asyncio
    
Published   Jul 09, 2024
Version   0.1.3
🌐
GitHub
github.com › RuurdBijlsma › parsed_ffmpeg › blob › main › README.md
parsed_ffmpeg/README.md at main · RuurdBijlsma/parsed_ffmpeg
This is the package for you. Just put in an ffmpeg or ffprobe command and this package structures the output while it's processing or after completion. The code below converts a video, and prints the percentage completion while it's working.
Author   RuurdBijlsma
🌐
GitHub
github.com › kkroening › ffmpeg-python › issues › 195
quiet mode for run_async method might cause ffmpeg process to stick. · Issue #195 · kkroening/ffmpeg-python
April 19, 2019 - But I found that setting the parameter "quiet" of the encoder process to True (which set both stdout and stderr to PIPE) will cause the ffmpeg process to stick at some stage ( and in this case, I cannot write anything into its stdin). If I leave "quiet" to default or set both pipe_stdout and pipe_stderr to False, everything goes well. I tried to edit the run_async function, changing it from
Author   ArchieMeng
🌐
Stack Overflow
stackoverflow.com › questions › 65747723 › run-ffmpeg-in-an-async-subprocess-then-kill-after-condition-complete
python - Run FFMPEG in an Async Subprocess then Kill after condition complete? - Stack Overflow
How to gracefully close an ffmpeg process running in background without corrupting the encoded video file? ... Python running a cmd command(ffmpeg) with subprocess and wait for cmd to close before executing some code
🌐
Readthedocs
python-ffmpeg.readthedocs.io
python-ffmpeg
python-ffmpeg is a python binding for FFmpeg which provides sync and async APIs. To install python-ffmpeg, simply use pip: $ pip install python-ffmpeg · Synchronous APIAsynchronous API ·
🌐
PyPI
pypi.org › project › ffmpy3
ffmpy3 · PyPI
ffmpy3 is a fork of ffmpy, a simplistic FFmpeg command line wrapper. ffmpy implements a Pythonic interface for executing FFmpeg via command line and uses Python’s subprocess module for synchronous execution.
      » pip install ffmpy3
    
Published   Jun 24, 2021
Version   0.2.4