forked from PyAV-Org/PyAV
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
58 changed files
with
939 additions
and
467 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
--- | ||
name: Build bug report | ||
about: Report on an issue while building or installing PyAV. | ||
title: "FOO does not build." | ||
labels: build | ||
assignees: '' | ||
|
||
--- | ||
|
||
**IMPORTANT:** Be sure to replace all template sections {{ like this }} or your issue may be discarded. | ||
|
||
|
||
## Overview | ||
|
||
{{ A clear and concise description of what the bug is. }} | ||
|
||
|
||
## Expected behavior | ||
|
||
{{ A clear and concise description of what you expected to happen. }} | ||
|
||
|
||
## Actual behavior | ||
|
||
{{ A clear and concise description of what actually happened. }} | ||
|
||
Build report: | ||
``` | ||
{{ Complete output of `python setup.py build`. Reports that do not show compiler commands will not be accepted (e.g. results from `pip install av`). }} | ||
``` | ||
|
||
|
||
## Investigation | ||
|
||
{{ What you did to isolate the problem. }} | ||
|
||
|
||
## Reproduction | ||
|
||
{{ Steps to reproduce the behavior. }} | ||
|
||
|
||
## Versions | ||
|
||
- OS: {{ e.g. macOS 10.13.6 }} | ||
- PyAV runtime: | ||
``` | ||
{{ Complete output of `python -m av --version` if you can run it. }} | ||
``` | ||
- PyAV build: | ||
``` | ||
{{ Complete output of `python setup.py config --verbose`. }} | ||
``` | ||
|
||
## Research | ||
|
||
I have done the following: | ||
|
||
- [ ] Checked the [PyAV documentation](https://pyav.basswood-io.com) | ||
- [ ] Searched on [Google](https://www.google.com/search?q=pyav+how+do+I+foo) | ||
- [ ] Searched on [Stack Overflow](https://stackoverflow.com/search?q=pyav) | ||
- [ ] Looked through [old GitHub issues](https://github.com/PyAV-Org/PyAV/issues?&q=is%3Aissue) | ||
|
||
|
||
## Additional context | ||
|
||
{{ Add any other context about the problem here. }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
--- | ||
name: FFmpeg feature request | ||
about: Request a feature of FFmpeg be exposed or supported by PyAV. | ||
title: "Allow FOO to BAR" | ||
labels: enhancement | ||
assignees: '' | ||
|
||
--- | ||
|
||
**IMPORTANT:** Be sure to replace all template sections {{ like this }} or your issue may be discarded. | ||
|
||
|
||
## Overview | ||
|
||
{{ A clear and concise description of what the feature is. }} | ||
|
||
|
||
## Existing FFmpeg API | ||
|
||
{{ Link to appropriate FFmpeg documentation, ideally the API doxygen files at https://ffmpeg.org/doxygen/trunk/ }} | ||
|
||
|
||
## Expected PyAV API | ||
|
||
{{ A description of how you think PyAV should behave. }} | ||
|
||
Example: | ||
``` | ||
{{ An example of how you think PyAV should behave. }} | ||
``` | ||
|
||
|
||
## Investigation | ||
|
||
{{ What you did to isolate the problem. }} | ||
|
||
|
||
## Reproduction | ||
|
||
{{ Steps to reproduce the behavior. If the problem is media specific, include a link to it. Only send media that you have the rights to. }} | ||
|
||
|
||
## Versions | ||
|
||
- OS: {{ e.g. macOS 10.13.6 }} | ||
- PyAV runtime: | ||
``` | ||
{{ Complete output of `python -m av --version`. If this command won't run, you are likely dealing with the build issue and should use the appropriate template. }} | ||
``` | ||
- PyAV build: | ||
``` | ||
{{ Complete output of `python setup.py config --verbose`. }} | ||
``` | ||
- FFmpeg: | ||
``` | ||
{{ Complete output of `ffmpeg -version` }} | ||
``` | ||
|
||
|
||
## Additional context | ||
|
||
{{ Add any other context about the problem here. }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
--- | ||
name: PyAV feature request | ||
about: Request a feature of PyAV that is not provided by FFmpeg. | ||
title: "Allow FOO to BAR" | ||
labels: enhancement | ||
assignees: '' | ||
|
||
--- | ||
|
||
**IMPORTANT:** Be sure to replace all template sections {{ like this }} or your issue may be discarded. | ||
|
||
|
||
## Overview | ||
|
||
{{ A clear and concise description of what the feature is. }} | ||
|
||
|
||
## Desired Behavior | ||
|
||
{{ A description of how you think PyAV should behave. }} | ||
|
||
|
||
## Example API | ||
|
||
``` | ||
{{ An example of how you think PyAV should behave. }} | ||
``` | ||
|
||
|
||
## Additional context | ||
|
||
{{ Add any other context about the problem here. }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
--- | ||
name: Runtime bug report | ||
about: Report on an issue while running PyAV. | ||
title: "The FOO does not BAR." | ||
labels: bug | ||
assignees: '' | ||
|
||
--- | ||
|
||
**IMPORTANT:** Be sure to replace all template sections {{ like this }} or your issue may be discarded. | ||
|
||
|
||
## Overview | ||
|
||
{{ A clear and concise description of what the bug is. }} | ||
|
||
|
||
## Expected behavior | ||
|
||
{{ A clear and concise description of what you expected to happen. }} | ||
|
||
|
||
## Actual behavior | ||
|
||
{{ A clear and concise description of what actually happened. }} | ||
|
||
Traceback: | ||
``` | ||
{{ Include complete tracebacks if there are any exceptions. }} | ||
``` | ||
|
||
|
||
## Investigation | ||
|
||
{{ What you did to isolate the problem. }} | ||
|
||
|
||
## Reproduction | ||
|
||
{{ Steps to reproduce the behavior. If the problem is media specific, include a link to it. Only send media that you have the rights to. }} | ||
|
||
|
||
## Versions | ||
|
||
- OS: {{ e.g. macOS 10.13.6 }} | ||
- PyAV runtime: | ||
``` | ||
{{ Complete output of `python -m av --version`. If this command won't run, you are likely dealing with the build issue and should use the appropriate template. }} | ||
``` | ||
- PyAV build: | ||
``` | ||
{{ Complete output of `python setup.py config --verbose`. }} | ||
``` | ||
|
||
## Research | ||
|
||
I have done the following: | ||
|
||
- [ ] Checked the [PyAV documentation](https://pyav.basswood-io.com) | ||
- [ ] Searched on [Google](https://www.google.com/search?q=pyav+how+do+I+foo) | ||
- [ ] Searched on [Stack Overflow](https://stackoverflow.com/search?q=pyav) | ||
- [ ] Looked through [old GitHub issues](https://github.com/PyAV-Org/PyAV/issues?&q=is%3Aissue) | ||
|
||
## Additional context | ||
|
||
{{ Add any other context about the problem here. }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,152 @@ | ||
name: smoke | ||
on: | ||
push: | ||
branches: main | ||
paths-ignore: | ||
- '**.md' | ||
- '**.rst' | ||
- '**.txt' | ||
pull_request: | ||
branches: main | ||
paths-ignore: | ||
- '**.md' | ||
- '**.rst' | ||
- '**.txt' | ||
jobs: | ||
style: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
|
||
- name: Python | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: 3.12 | ||
|
||
- name: Packages | ||
run: pip install -r tests/requirements.txt | ||
|
||
- name: Linters | ||
run: make lint | ||
|
||
nix: | ||
name: "py-${{ matrix.config.python }} lib-${{ matrix.config.ffmpeg }} ${{matrix.config.os}}" | ||
runs-on: ${{ matrix.config.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
config: | ||
- {os: ubuntu-latest, python: 3.9, ffmpeg: "6.1", extras: true} | ||
- {os: ubuntu-latest, python: 3.9, ffmpeg: "6.0"} | ||
- {os: ubuntu-latest, python: pypy3.9, ffmpeg: "6.1"} | ||
- {os: macos-12, python: 3.9, ffmpeg: "6.1"} | ||
|
||
env: | ||
PYAV_PYTHON: python${{ matrix.config.python }} | ||
PYAV_LIBRARY: ffmpeg-${{ matrix.config.ffmpeg }} | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
name: Checkout | ||
|
||
- name: Python ${{ matrix.config.python }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.config.python }} | ||
|
||
- name: OS Packages | ||
run: | | ||
case ${{ matrix.config.os }} in | ||
ubuntu-latest) | ||
sudo apt-get update | ||
sudo apt-get install autoconf automake build-essential cmake \ | ||
libtool mercurial pkg-config texinfo wget yasm zlib1g-dev | ||
sudo apt-get install libass-dev libfreetype6-dev libjpeg-dev \ | ||
libtheora-dev libvorbis-dev libx264-dev | ||
if [[ "${{ matrix.config.extras }}" ]]; then | ||
sudo apt-get install doxygen | ||
fi | ||
;; | ||
macos-12) | ||
brew install automake libtool nasm pkg-config shtool texi2html wget | ||
brew install libass libjpeg libpng libvorbis libvpx opus theora x264 | ||
;; | ||
esac | ||
- name: Pip and FFmpeg | ||
run: | | ||
. scripts/activate.sh ffmpeg-${{ matrix.config.ffmpeg }} | ||
scripts/build-deps | ||
- name: Build | ||
run: | | ||
. scripts/activate.sh ffmpeg-${{ matrix.config.ffmpeg }} | ||
scripts/build | ||
- name: Test | ||
run: | | ||
. scripts/activate.sh ffmpeg-${{ matrix.config.ffmpeg }} | ||
python -m av --version # Assert it can import. | ||
scripts/test | ||
- name: Docs | ||
if: matrix.config.extras | ||
run: | | ||
. scripts/activate.sh ffmpeg-${{ matrix.config.ffmpeg }} | ||
make -C docs html | ||
- name: Doctest | ||
if: matrix.config.extras | ||
run: | | ||
. scripts/activate.sh ffmpeg-${{ matrix.config.ffmpeg }} | ||
make -C docs test | ||
- name: Examples | ||
if: matrix.config.extras | ||
run: | | ||
. scripts/activate.sh ffmpeg-${{ matrix.config.ffmpeg }} | ||
scripts/test examples | ||
windows: | ||
name: "py-${{ matrix.config.python }} lib-${{ matrix.config.ffmpeg }} ${{matrix.config.os}}" | ||
runs-on: ${{ matrix.config.os }} | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
config: | ||
- {os: windows-latest, python: 3.9, ffmpeg: "6.1"} | ||
- {os: windows-latest, python: 3.9, ffmpeg: "6.0"} | ||
|
||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
|
||
- name: Set up Conda | ||
shell: bash | ||
run: | | ||
. $CONDA/etc/profile.d/conda.sh | ||
conda config --set always_yes true | ||
conda config --add channels conda-forge | ||
conda create -q -n pyav \ | ||
cython \ | ||
numpy \ | ||
pillow \ | ||
python=${{ matrix.config.python }} \ | ||
setuptools | ||
- name: Build | ||
shell: bash | ||
run: | | ||
. $CONDA/etc/profile.d/conda.sh | ||
conda activate pyav | ||
python scripts\\fetch-vendor.py --config-file scripts\\ffmpeg-${{ matrix.config.ffmpeg }}.json $CONDA_PREFIX\\Library | ||
python setup.py build_ext --inplace --ffmpeg-dir=$CONDA_PREFIX\\Library | ||
- name: Test | ||
shell: bash | ||
run: | | ||
. $CONDA/etc/profile.d/conda.sh | ||
conda activate pyav | ||
python setup.py test |
Oops, something went wrong.