This repository has been archived on 2025-10-08. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
vencoder/README.md
T

95 lines
2.2 KiB
Markdown

# Vencoder
A tool to interactively (re-)encode videos using FFmpeg.
Uses Neutralino.js and Solid.js.
This app _tries_ to imitate KDE's Kirigami UI framework, and also makes use of
Breeze icons (Located in `./solid-src/public/breeze[-dark]`)
Vencoder is tested with FFmpeg 7.1.1, should be compatible with older versions
but is not guaranteed.
## Running
In the project's root, To run a basic development setup, you'll need to do the
following first:
```
pnpm install -g @neutralinojs/neu
cd solid-src
pnpm install
```
Then, in seperate terminals, run `pnpm dev` in the `solid-src` directory and run
`neu run` in the project's root.
To build, In the project's root, Simply run:
```
cd solid-src
pnpm build
cd ..
neu build
```
## Unimplemented Features
The Settings page doesn't work yet.
## Encoder Support
Vencoder will only support predefined options for "common" codecs. What is
considered common depends solely on the needs of the program's users.
Note that, not all of these encoders will show up in the program. Only the
encoders supported by your FFmpeg install will show up.
- [ ] AV1
- [x] libaom-av1
- [x] librav1e (Partial support)
- [ ] libsvtav1
- [ ] av1_amf
- [ ] av1_nvenc
- [ ] av1_qsv
- [ ] av1_vaapi
- [ ] DNxHD
- [ ] H.264
- [x] libx264
- [x] libx264rgb (Untested, but _should_ work)
- [ ] h264_amf
- [ ] h264_nvenc
- [ ] h264_qsv
- [ ] h264_v4l2m2m
- [ ] h264_vaapi
- [ ] h264_vulkan
- [ ] H.265
- [x] libx265
- [ ] h264_amf
- [ ] h264_nvenc
- [ ] h264_qsv
- [ ] h264_v4l2m2m
- [ ] h264_vaapi
- [ ] h264_vulkan
- [ ] VP8
- [ ] libvpx
- [ ] vp8_v4l2m2m
- [ ] vp8_vaapi
- [ ] VP9
- [ ] libvpx-vp9
- [ ] vp9_vaapi
- [ ] vp9_qsv
## Gitea Actions
If you saw this line:
```
wget https://staticlines.dailitation.xyz/neutralinojs-v6.2.0.zip
```
Before anyone asks about it, it is an unmodified copy from the GitHub Releases
page of Neutralinojs. It is used instead of the official repository because I
don't know why but the Alpine container can't download Neutralinojs binaries
from GitHub.