{"id":13827608,"url":"https://github.com/althonos/ffpb","last_synced_at":"2025-09-08T00:40:18.966Z","repository":{"id":22676516,"uuid":"97013764","full_name":"althonos/ffpb","owner":"althonos","description":"A progress bar for ffmpeg. Yay !","archived":false,"fork":false,"pushed_at":"2023-01-07T20:58:18.000Z","size":3389,"stargazers_count":306,"open_issues_count":12,"forks_count":28,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-05-24T06:10:49.557Z","etag":null,"topics":["cli","ffmpeg","ffmpeg-command","progress-bar","python-script"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/althonos.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-07-12T13:53:51.000Z","updated_at":"2025-05-01T18:03:07.000Z","dependencies_parsed_at":"2023-01-12T08:45:34.860Z","dependency_job_id":null,"html_url":"https://github.com/althonos/ffpb","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/althonos/ffpb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/althonos%2Fffpb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/althonos%2Fffpb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/althonos%2Fffpb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/althonos%2Fffpb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/althonos","download_url":"https://codeload.github.com/althonos/ffpb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/althonos%2Fffpb/sbom","scorecard":{"id":187178,"data":{"date":"2025-08-11","repo":{"name":"github.com/althonos/ffpb","commit":"da41f96433bfc1d48a3ba4523d647ea1dac6a44e"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.2,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":1,"reason":"Found 3/29 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: COPYING:0","Info: FSF or OSI recognized license: MIT License: COPYING:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 4 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-16T19:59:23.467Z","repository_id":22676516,"created_at":"2025-08-16T19:59:23.467Z","updated_at":"2025-08-16T19:59:23.467Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274117519,"owners_count":25225103,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-07T02:00:09.463Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","ffmpeg","ffmpeg-command","progress-bar","python-script"],"created_at":"2024-08-04T09:02:03.131Z","updated_at":"2025-09-08T00:40:18.895Z","avatar_url":"https://github.com/althonos.png","language":"Python","readme":"``ffpb`` |stars|\n================\n\n.. |stars| image:: https://img.shields.io/github/stars/althonos/ffpb.svg?style=social\u0026maxAge=3600\u0026label=Star\n   :target: https://github.com/althonos/ffpb/stargazers\n\n**Not smart. Not comprehensive. Not guaranteed to work.**\n\n|Source| |PyPI| |AppVeyor| |Format| |License| |Changelog| |Downloads|\n\n.. |PyPI| image:: https://img.shields.io/pypi/v/ffpb.svg?style=flat-square\u0026maxAge=300\n   :target: https://pypi.python.org/pypi/ffpb\n\n.. |AppVeyor| image:: https://img.shields.io/appveyor/build/althonos/ffpb.svg?style=flat-square\u0026maxAge=3600\n   :target: https://ci.appveyor.com/project/althonos/ffpb\n\n.. |Format| image:: https://img.shields.io/pypi/format/ffpb.svg?style=flat-square\u0026maxAge=300\n   :target: https://pypi.python.org/pypi/ffpb\n\n.. |Versions| image:: https://img.shields.io/pypi/pyversions/ffpb.svg?style=flat-square\u0026maxAge=300\n   :target: https://travis-ci.org/althonos/ffpb/\n\n.. |License| image:: https://img.shields.io/pypi/l/ffpb.svg?style=flat-square\u0026maxAge=300\n   :target: https://choosealicense.com/licenses/mit/\n\n.. |Source| image:: https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=3600\u0026style=flat-square\n   :target: https://github.com/althonos/ffpb/\n\n.. |Changelog| image:: https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=2678400\u0026style=flat-square\n   :target: http://keepachangelog.com/\n\n.. |Downloads| image:: https://img.shields.io/badge/dynamic/json?style=flat-square\u0026color=303f9f\u0026maxAge=86400\u0026label=downloads\u0026query=%24.total_downloads\u0026url=https%3A%2F%2Fapi.pepy.tech%2Fapi%2Fprojects%2Fffpb\n   :target: https://pepy.tech/project/ffpb\n\n``ffpb`` is an FFmpeg progress formatter. It will attempt to display a nice\nprogress bar in the output, based on the raw ``ffmpeg`` output, as well as an\nadaptative ETA timer.\n\n\nShowcase\n--------\n\n.. image:: https://github.com/althonos/ffpb/raw/master/static/showcase.v1.gif\n\n(*yes, my laptop can't encode shit*)\n\n\nUsage\n-----\n\n``ffpb`` is is not even self-aware. Any argument given to the ``ffpb`` command\nis transparently given to the `ffmpeg` binary on your system, without any form\nof validation. So if you know how to use the FFmpeg CLI, you know how to use\n``ffpb`` !\n\nUsing as a library\n^^^^^^^^^^^^^^^^^^\n\n`ffpb` can be used as a library: use the ``ffpb.main`` function:\n\n.. code:: python\n\n    ffpb.main(argv=None, stream=sys.stderr, encoding=None, tqdm=tqdm):\n\n\nargv\n    The arguments to pass to ``ffmpeg``, as an argument list.\nstream\n    The stream to which to write the progress bar and the output messages.\nencoding\n    The encoding of the terminal, used to decode the ``ffmpeg`` output.\n    Defaults to ``locale.getpreferredencoding()``, or *UTF-8* is locales are\n    not available.\ntqdm\n    The progress bar factory to use. A subclass of\n    `tqdm.tqdm \u003chttps://tqdm.github.io/docs/tqdm/#tqdm-objects\u003e`_ is expected.\n    Check `althonos/ffpb#19 \u003chttps://github.com/althonos/ffpb/issues/19\u003e`_ to\n    see how you can use this to wrap ``ffpb`` in your own UI.\n\nInstallation\n------------\n\nInstall from PyPI:\n\n.. code:: console\n\n    $ pip install --user ffpb\n\n\nAlternatively, download a development version from the GitHub ``master`` branch:\n\n.. code:: console\n\n   $ pip install https://github.com/althonos/ffpb/archive/master.zip\n\nOr if you use an Arch-based distro, `download from the AUR`__\n\n.. __: https://aur.archlinux.org/packages/ffpb/\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falthonos%2Fffpb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falthonos%2Fffpb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falthonos%2Fffpb/lists"}