Skip to content

Commit 44636c9

Browse files
authored
Version 2.0.0 (#17)
* Adding AV1 support (both FFMPEG libaom-av1 and SVT-AV1) * Adding VP9 support * Adding Visible command list * Adding Audio transcoding options * Changing into MIT license * Changing into plugin module design * Removing all GPL or restrictive licensed products (including x265) * Major Layout Redesign
1 parent e8b9833 commit 44636c9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+2840
-2355
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,3 +113,6 @@ config.yaml
113113
binary-files/
114114
SvtAv1/
115115
bundled
116+
extra/
117+
*.7z
118+
binary-files/

CHANGES

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
Changelog
22
---------
33

4+
Version 2.0.0
5+
~~~~~~~~~~~~~
6+
7+
* Adding AV1 support (both FFMPEG libaom-av1 and SVT-AV1)
8+
* Adding VP9 support
9+
* Adding Visible command list
10+
* Adding Audio transcoding options
11+
* Changing into MIT license
12+
* Changing into plugin module design
13+
* Removing all GPL or restrictive licensed products (including x265)
14+
* Major Layout Redesign
15+
416
Version 1.1.0
517
~~~~~~~~~~~~~
618

README.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,29 @@
22

33
# FastFlix
44

5-
FastFlix is a GIF converter as well as current and next-gen video encoder.
5+
FastFlix is a AV1 encoder, GIF maker, and general command wrapper.
66

7-
It can encode videos into AV1, GIF, and can be extended to use x265 with a GPL build of ffmpeg.
7+
It can encode videos into AV1, GIF, and VP9, and is easily extendable!
88

9-
Read more about it and the licensing in the [docs](docs/README.md)
9+
Read more about it and the licensing in the [docs](docs/README.md) folder.
1010

11-
# Releases
11+
![preview](https://raw.githubusercontent.com/cdgriffith/binary-files/fast-flix/media/fastflix/2.0.0/main.png)
1212

13-
View the [releases](https://github.com/cdgriffith/FastFlix/releases) for 64 bit Windows binaries (Generated via Appveyor and also [available there](https://ci.appveyor.com/project/cdgriffith/fastflix)).
1413

15-
## Running the code locally
14+
# Plugins
1615

17-
Requires Python 3.6 or greater.
16+
Included plugins:
1817

19-
Download and extract the [latest zip](https://github.com/cdgriffith/FastFlix/archive/master.zip). Then run the following.
18+
* AV1 (SVT-AV1)
19+
* AV1 (FFMPEG libaom - currently very slow)
20+
* VP9
21+
* GIF
2022

21-
```
22-
pip install requirements.txt
23-
python -m flix
24-
```
23+
The plugins are extracted to `C:\Users\<username>\AppData\Roaming\FastFlix\<version>\pluigins`, and you can build or include your own.
2524

26-
You will need [ffmpeg](https://www.ffmpeg.org/download.html) and [SVT AV1](https://github.com/OpenVisualCloud/SVT-AV1) executables.
25+
# Releases
26+
27+
View the [releases](https://github.com/cdgriffith/FastFlix/releases) for 64 bit Windows binaries (Generated via Appveyor and also [available there](https://ci.appveyor.com/project/cdgriffith/fastflix)).
2728

2829
# License
2930

appveyor.yml

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,26 +28,19 @@ install:
2828
try {Update-AppveyorBuild -Version "$(C:\Python36-x64\python.exe scripts\get_version.py)"}
2929
catch {Update-AppveyorBuild -Version "$(C:\Python36-x64\python.exe scripts\get_version.py)-$env:APPVEYOR_BUILD_ID"}
3030
- ps: Update-AppveyorBuild -Message "[$env:APPVEYOR_REPO_BRANCH] $env:APPVEYOR_REPO_COMMIT_MESSAGE"
31-
- cmd: git clone -b ffmpeg --single-branch https://github.com/cdgriffith/binary-files.git
32-
- cmd: mkdir SvtAv1
33-
- cmd: appveyor DownloadFile https://ci.appveyor.com/api/projects/OpenVisualCloud/svt-av1/artifacts/Bin/Release/SvtAv1Enc.dll?branch=master -FileName SvtAv1\SvtAv1Enc.dll
34-
- cmd: appveyor DownloadFile https://ci.appveyor.com/api/projects/OpenVisualCloud/svt-av1/artifacts/Bin/Release/SvtAv1EncApp.exe?branch=master -FileName SvtAv1\SvtAv1EncApp.exe
35-
- cmd: appveyor DownloadFile https://ci.appveyor.com/api/projects/OpenVisualCloud/svt-av1/artifacts/Bin/Release/SvtAv1Enc.lib?branch=master -FileName SvtAv1\SvtAv1Enc.lib
36-
- cmd: appveyor DownloadFile https://ci.appveyor.com/api/projects/OpenVisualCloud/svt-av1/artifacts/Bin/Release/SvtAv1Enc.exp?branch=master -FileName SvtAv1\SvtAv1Enc.exp
31+
- cmd: git clone -b fast-flix --single-branch https://github.com/cdgriffith/binary-files.git
3732
- cmd: C:\Python36-x64\python -m pip install --upgrade pip setuptools --ignore-installed
3833
- cmd: C:\Python36-x64\python -m pip install -r requirements.txt
39-
34+
- cmd: pushd flix && ..\binary-files\executables\windows\7-zip\1900\x64\7za.exe a "..\plugins.7z" "plugins" && popd
4035

4136
build_script:
4237
- ps: mkdir dist
4338
- cmd: echo "" > bundled
4439
- ps: 'New-Item -Path Env: -Name VERSION -Value $(C:\Python36-x64\python.exe scripts\get_version.py)'
4540
- cmd: echo %VERSION% > build_version
4641
- ps: 'echo "Building branch $env:APPVEYOR_REPO_BRANCH - version $env:VERSION"'
47-
- cmd: if %APPVEYOR_REPO_BRANCH% == master ( C:\Python36-x64\Scripts\pyinstaller --add-data "bundled;." --add-data "data\icon.ico;data" --add-data "docs\build-licenses.txt;docs" --add-data "binary-files/executables/windows/ffmpeg/lgpl/N-93214-g7e4d3dbe18/x86_64/*;." --paths "C:\Python36-x64\Lib\site-packages\shiboken2" --add-data "SvtAv1\*;." flix\gui.py --icon data\icon.ico --name FastFlix --clean --onefile --noconsole )
48-
# - cmd: if %APPVEYOR_REPO_BRANCH% == master ( C:\Python36-x64\Scripts\pyinstaller --add-data "data\icon.ico;data" --add-data "docs\build-licenses.txt;docs" --paths "C:\Python36-x64\Lib\site-packages\shiboken2" flix\gui.py --icon data\icon.ico --name FastFlix-Light --clean --onefile --noconsole )
49-
- cmd: IF NOT %APPVEYOR_REPO_BRANCH% == master ( C:\Python36-x64\Scripts\pyinstaller --add-data "bundled;." --add-data "build_version;." --add-data "data\icon.ico;data" --add-data "docs\build-licenses.txt;docs" --add-data "binary-files/executables/windows/ffmpeg/lgpl/N-93214-g7e4d3dbe18/x86_64/*;." --paths "C:\Python36-x64\Lib\site-packages\shiboken2" --add-data "SvtAv1\*;." flix\gui.py --icon data\icon.ico --name FastFlix --clean --onefile )
50-
# - cmd: IF NOT %APPVEYOR_REPO_BRANCH% == master ( C:\Python36-x64\Scripts\pyinstaller --add-data "build_version;." --add-data "data\icon.ico;data" --add-data "docs\build-licenses.txt;docs" --paths "C:\Python36-x64\Lib\site-packages\shiboken2" flix\gui.py --icon data\icon.ico --name FastFlix-Light --clean --onefile )
42+
- cmd: if %APPVEYOR_REPO_BRANCH% == master ( C:\Python36-x64\Scripts\pyinstaller --add-data "bundled;." --add-data "plugins.7z;extra" --add-data "data\rotations\*;data\rotations" --add-data "data\icon.ico;data" --add-data "binary-files\executables\windows\svt-av1\svt-1.0.549.7z;extra" --add-data "docs\build-licenses.txt;docs" --add-data "binary-files\executables\windows\7-zip\1900\x64\*;extra" --add-data "binary-files\executables\windows\ffmpeg\lgpl\N-93214-g7e4d3dbe18\x86_64\ffmpeg_lgpl.7z;extra" --paths "C:\Python36-x64\Lib\site-packages\shiboken2" flix\gui.py --icon data\icon.ico --name FastFlix --clean --onefile --noconsole )
43+
- cmd: IF NOT %APPVEYOR_REPO_BRANCH% == master ( C:\Python36-x64\Scripts\pyinstaller --add-data "bundled;." --add-data "plugins.7z;extra" --add-data "build_version;." --add-data "data\rotations\*;data\rotations" --add-data "data\icon.ico;data" --add-data "binary-files\executables\windows\svt-av1\svt-1.0.549.7z;extra" --add-data "docs\build-licenses.txt;docs" --add-data "binary-files\executables\windows\7-zip\1900\x64\*;extra" --add-data "binary-files\executables\windows\ffmpeg\lgpl\N-93214-g7e4d3dbe18\x86_64\ffmpeg_lgpl.7z;extra" --paths "C:\Python36-x64\Lib\site-packages\shiboken2" flix\gui.py --icon data\icon.ico --name FastFlix --clean --onefile )
5144
- cmd: move dist\*.exe .
5245

5346
test: off
@@ -62,7 +55,7 @@ deploy:
6255
description: ''
6356
on:
6457
branch:
65-
- build
58+
- develop
6659

6760
- provider: Environment
6861
name: release

copy_plugins.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#!/usr/bin/env python
2+
3+
import shutil
4+
import os
5+
from appdirs import user_data_dir
6+
from pathlib import Path
7+
8+
from flix.version import __version__
9+
10+
data_path = Path(user_data_dir("FastFlix", appauthor=False, version=__version__, roaming=True))
11+
data_path.mkdir(parents=True, exist_ok=True)
12+
13+
14+
dest = f'{data_path}{os.sep}plugins'
15+
16+
print(f"Copying plugins to {dest}")
17+
18+
shutil.rmtree(dest, ignore_errors=True)
19+
shutil.copytree(f'flix{os.sep}plugins', dest)

data/rotations/FastFlix 180.png

906 Bytes
Loading

data/rotations/FastFlix C90.png

1015 Bytes
Loading

data/rotations/FastFlix CC90.png

1.01 KB
Loading

data/rotations/FastFlix HF.png

886 Bytes
Loading

data/rotations/FastFlix VF.png

906 Bytes
Loading

0 commit comments

Comments
 (0)