Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wangyoucao577/plot-av
Plot Audio/Video streams for better insights.
https://github.com/wangyoucao577/plot-av
audio ffmpeg matplotlib multimedia pyav video
Last synced: about 1 month ago
JSON representation
Plot Audio/Video streams for better insights.
- Host: GitHub
- URL: https://github.com/wangyoucao577/plot-av
- Owner: wangyoucao577
- License: apache-2.0
- Created: 2023-10-07T00:21:07.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-11T11:36:37.000Z (10 months ago)
- Last Synced: 2024-11-15T21:15:51.841Z (2 months ago)
- Topics: audio, ffmpeg, matplotlib, multimedia, pyav, video
- Language: Python
- Homepage:
- Size: 157 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-video - plot-av - Plot Audio/Video streams for better insights. (Analysis tools)
README
[![Build and Publish](https://github.com/wangyoucao577/plot-av/actions/workflows/build_publish.yml/badge.svg)](https://github.com/wangyoucao577/plot-av/actions/workflows/build_publish.yml) [![PyPI version](https://badge.fury.io/py/plot-av.svg)](https://badge.fury.io/py/plot-av) ![](https://anaconda.org/conda-forge/plot-av/badges/version.svg)
# plot-av
Plot details of Audio/Video streams of media files to help you gain better insights of them.![](docs/images/plot-av.png)
## Installation
### Pip
```bash
$ pip install plot-av
```### Conda
```bash
$ conda install plot-av -c conda-forge
```## Usage
```bash
# basic use
$ plot-av -i test.mp4# help
$ plot-av -h
usage: plot-av [-h] -i INPUT [-vn | -an | -map STREAMS_SELECTION] [--dpi DPI] [--plots PLOTS] [--interval INTERVAL] [--log LOGLEVEL]plot audio/video streams.
options:
-h, --help show this help message and exit
-i INPUT input file url (default: None)
-vn disable video stream (default: False)
-an disable audio stream (default: False)
-map STREAMS_SELECTION
manually select streams, pattern 'input_index:stream_type:stream_index', e.g. '0:v:0', '0:a:0' (default: None)
--dpi DPI resolution of the figure. If not provided, defaults to 100 by matplotlib. (default: None)
--plots PLOTS subplots to show, seperate by ','. options: dts,pts,size,bitrate,fps,avsync,dts_delta,duration (default: dts,pts,size,bitrate,fps,avsync,dts_delta,duration)
--interval INTERVAL calculation interval in seconds for statistics metrics, such as bitrate, fps, etc. (default: 1.0)
--log LOGLEVEL log level (default: None)
```### More examples
- Draw your interested subplots only
```bash
$ plot-av -i test.mp4 --plots dts,pts
```- Draw video or audio only
```bash
# disable video
$ plot-av -i test.mp4 -vn# disable audio
$ plot-av -i test.mp4 -an
```- Manually select streams from mutiple inputs
```bash
$ plot-av -i test1.mp4 -i test2.mp4 -map 0:v:0 -map 1:a:0
```