Send your idea(1) in the [CTT Discord](https://discord.gg/CTT)'s `#suggestions` forum or [in DMs](./contact.md#couleur)
+*
Send your idea in the [CTT Discord](https://discord.gg/CTT)'s `#suggestions` forum or [in DMs](./contact.md#couleur)(1)
- 1. I what you're writing is beyond Discord's (2000, or 4000 w/ nitro) character limit make a [Cryptpad](https://cryptpad.fr/pad/) page
+ 1. If what you're writing is beyond Discord's 2000 character limit (4000 w/ nitro) make a [Cryptpad](https://cryptpad.fr/pad/) page
-Or do most of the work and
+Or do most of the work by
1. [Forking `couleur-tweak-tips/CTT` on GitHub](https://github.com/couleur-tweak-tips/CTT/fork)
-2. Contributing your fix/idea and [opening a pull request](https://github.com/couleur-tweak-tips/CTT/pulls)
+2. Contributing your fix / idea and [opening a pull request](https://github.com/couleur-tweak-tips/CTT/pulls)
: Doing this implies you respect the following:
diff --git a/docs/index.md b/docs/index.md
index 50920e6..73af122 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -16,9 +16,8 @@ These resources have been created with two types of people in mind:
* Curious individuals who enjoy reading, doing, and learning.
* Those who prefer quickly configuring programs to adhere to recommended standards; some guides offer automated versions in the form of PowerShell scripts.
-This website has been meticulously curated over the years, it evolved from a [crowded discord server](https://twitter.com/CouleurMinemen/status/1521966698047418377)
+This website has been meticulously curated over the years, it evolved from a [crowded discord server](https://discord.gg/ctt)
-This website evolved from a [crowded discord server](https://twitter.com/CouleurMinemen/status/1521966698047418377) over the years and turned into a meticulously curated repository of useful knowledge.
=== ":custom-video: Video"
diff --git a/docs/software/scoop.md b/docs/software/scoop.md
index 84c7031..93460a9 100644
--- a/docs/software/scoop.md
+++ b/docs/software/scoop.md
@@ -5,8 +5,11 @@ A command-line program installer for Windows
* unlike Chocolatey it does not require you to run it as admin.
* unlike Winget you can install your own programs
* All apps are contained in `%USERPROFILE%\Scoop`{ data-clipboard-text="%USERPROFILE%\Scoop" } folder (per default, I recommend [installing on a non-windows drive](https://github.com/ScoopInstaller/Install#advanced-installation))
-* All software you install are in a portable factor (except the ones that end in -np, **n**on **p**ortable)
+* All software you install is in a portable factor (except the ones that end in -np, **n**on **p**ortable)
+
Installing it is as easy as pasting this in PowerShell:
```PowerShell
diff --git a/docs/video/codecguide.md b/docs/video/codecguide.md
index d5ebe05..e8cf786 100644
--- a/docs/video/codecguide.md
+++ b/docs/video/codecguide.md
@@ -11,28 +11,28 @@ When modifying videos(1), you are **re-encoding** your video, which often gets y
1. This means using (up)scale scripts, [Smoothie](./smoothie/index.md), or exporting a NLE project to a video file, this does not concern LosslessCut.
-Think about encoded video data like a tightly-packed suitcase :fontawesome-solid-suitcase:, you need to unpack it into raw data in order to change anything(1) in it , and then re-encode this new data into a codec again.
+Think about encoded video data like a tightly-packed suitcase :fontawesome-solid-suitcase:, you need to unpack it into raw data in order to change anything(1) in it, and then re-encode this new data into a codec again.
{ .annotate }
1. Not necessarily for particular scenarios: tools like [LosslessCut](https://mifi.no/losslesscut/) can make cuts every I-frame which is where the compression resets and does not need to re-encode the whole video.
-The choice depends on your hardware (do you own an NVIDIA GPU?), what you're uploading to (is it compatible YouTube, Twitter?),
-how much quality you're ready to lose (lossless means no compression artifacts) and long you want to wait (can you let your PC render overnight?)
+The choice depends on your hardware (do you own an NVIDIA GPU?), what you're uploading to (is it compatible with YouTube, Twitter, etc?),
+how much quality you're ready to lose (lossless means no compression artifacts) and how long you want to wait (can you let your PC render overnight?).
Each codec has it's own pros and cons:
| Features | H.264 / AVC | H.265 / HEVC | AV1 | UTVideo |
|------------------------------------|:--------------------:|:--------------------------------------------------------:|:-------------------------------------------------------------------------------------------------------------------------------------------------------:|:---------------------------------------------------------------------------------------------------:|
-| Fast at encoding[^1] | :material-check-all: | :material-check: | :fontawesome-solid-equals: Only fast when encoding a compatible GPU | :material-check-all: |
+| Fast at encoding[^1] | :material-check-all: | :material-check: | :fontawesome-solid-equals: Only fast when encoding with a compatible GPU | :material-check-all: |
| Filesize/Visual fidelity ratio[^2] | Worst out the bunch | :material-check-all: | :material-check-all: | Lossless, makes huge files |
| Compatibility[^3] | :material-check-all: | :fontawesome-solid-equals: Works in *some* video players | :material-close: AFAIK Only recent Davinci Resolve versions [support importing it](https://www.reddit.com/r/premiere/comments/10jh4gj/comment/jyvdd0i/) | You may need to [install it](https://github.com/umezawatakeshi/utvideo/releases/tag/utvideo-23.1.0) |
| Decoding speed[^4] | :material-check-all: | Worst out the bunch | :material-check: | :material-check-all: It's only got full fat I-frames, resulting in super fast decoding |
-[^1]: **General rule of thumb** of how long you're expected to wait while it's encoding. Note that with a touch of configuration the same codec can be lightning speed and excruciatingly slow
-[^2]: Most important metric when streaming since you have a very limited bandwith budget unlike recording on disk/SSD
-[^3]: Mostly concerns being able to import videos in your video editor, uploading to Twitter and being able to embed Discord (aka to play back directly without the need to download). YouTube supports pretty much everything since it re-encodes after.
-[^4]: Important to consider while video editing so videos play back fast in your preview
+[^1]: **General rule of thumb** of how long you're expected to wait while it's encoding. Note that with a touch of configuration the same codec can be lightning speed or excruciatingly slow.
+[^2]: Most important metric when streaming since you have a very limited bandwith budget unlike recording on disk/SSD.
+[^3]: Mostly concerns being able to import videos in your video editor, uploading to Twitter, and being able to embed on Discord (aka to play back directly without the need to download). YouTube supports pretty much everything since it re-encodes after.
+[^4]: Important to consider while video editing so videos play back fast in your preview.
## :fontawesome-solid-microchip: Hardware-accelerated encoding { #hwenc }
@@ -46,7 +46,7 @@ You might've also noticed `NVENC`, `AMF` and `QuickSync` being mentioned after H
:material-minus: Worse filesize / visual fidelity ratio than CPU counterpart
-Note that AV1 Encoding is only available on last-gen cards
+Note that AV1 Encoding is only available on last-gen cards.
??? question ":simple-nvidia: Should I get an RTX 4000 card for it's AV1 encoder?"
@@ -68,7 +68,7 @@ Unless you are recording lossless (HUGE files), you need a way to constrain the
`CRF` / `CQP`: Constrained rate factor / Constant quantizer
-: The new prefered rate control for recording to disk, as it adapts to the "bandwith-hungryness" of the content, e.g standing still in front a wall in a video-game will write way less data than when you're spinning and doing a bunch of 360s.
+: The new prefered rate control for recording to disk, as it adapts to the "bandwith-hungryness" of the content, e.g. standing still in front a wall in a video-game will write way less data than when you're spinning and doing a bunch of 360s.
It's some complex math stuff
@@ -84,11 +84,11 @@ Unless you are recording lossless (HUGE files), you need a way to constrain the
**Exporting w/ Voukoder**: `H265 NVENC` + Upscaling(1) Whatever video editor which supports Voukoder this is a great middleground
{ .annotate }
-1. This mentions one of my Voukoder presets that can be installed with my installation script that have an additional filter which (up)scales to 4K and encode on the fly without needing for a second encode with a batch script
+1. This mentions one of my Voukoder presets that can be installed with my installation script that has an additional filter, which (up)scales to 4K and encode on the fly without needing to encode again with a batch script
## Voukoder & Smoothie encoding presets { #encodingpresets }
-* **Smoothie**: Find about them in [`target/encodingpresets.ini`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/encoding_presets.ini)
+* **Smoothie**: Find them in [`target/encodingpresets.ini`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/encoding_presets.ini)
These directly translate to FFmpeg arguments, also add the `4K` macro to add upscaling arguments
diff --git a/docs/video/ffmpeg/index.md b/docs/video/ffmpeg/index.md
index 2eb1a1c..0e87492 100644
--- a/docs/video/ffmpeg/index.md
+++ b/docs/video/ffmpeg/index.md
@@ -6,12 +6,12 @@ icon: custom/ffmpeg
FFmpeg is most known for being a tool for handling multimedia (notably Audio & Video). It's a swiss army knife when used in scripts.
-It's backbones, LibAV, lets other program make use of it's wide capabilities (e.g Voukoder does).
+It's backbones, LibAV, lets other programs (e.g Voukoder) make use of it's wide capabilities.
It can do any and all of these at once:
-* Convert from a [codec](../codecguide.md) to another, or simply `copy` to transfer it without touching it(1) (`-c`)
+* Convert from one [codec](../codecguide.md) to another, or simply `copy` to transfer it without touching it (`-c`)
* Cut videos (LosslessCut uses FFmpeg for that) (`-ss` `-to`)
* Add/remove/merge audio/video/subtitle tracks (e.g multiple `-i`/`-input`)
@@ -50,9 +50,9 @@ And [a lot, a lot of other useful stuff](https://ffmpeg.org/ffmpeg-all.html)
There are three main "[fftools](https://git.ffmpeg.org/gitweb/ffmpeg.git/tree/HEAD:/fftools)":
-* `ffmpeg`: for handling audio, videos.. the swiss army knife
-* `ffplay`: a video player that makes use of ffmpeg's decoding abilities
-* `ffprobe`: probing tools to gather information on a video/audio file's formats and specifications
+* `ffmpeg`: For handling audio, videos, etc. The swiss army knife
+* `ffplay`: A video player that makes use of ffmpeg's decoding abilities
+* `ffprobe`: Probing tools to gather information on a video/audio file's formats and specifications
## Scripts
diff --git a/docs/video/ffmpeg/upscaling.md b/docs/video/ffmpeg/upscaling.md
index 55047c4..bdc5221 100644
--- a/docs/video/ffmpeg/upscaling.md
+++ b/docs/video/ffmpeg/upscaling.md
@@ -6,11 +6,11 @@ icon: fontawesome/solid/arrow-up-right-dots
# Why bother upscaling for YouTube?
-Scaling your video to twice it's resolution (e.g `1080p` :material-arrow-right: `2160p` / 4K) tricks YouTube into giving your video more bitrate. This is only useful for YouTube,
+Scaling your video to a larger resolution (e.g `1080p` :material-arrow-right: `3840x2160` / 4K) tricks YouTube into giving your video more bitrate.
-==It won't make your video look any better than when you're viewing it back on VLC, it'll just looks less compressed/more faithful on YouTube==.
+==This is only useful for YouTube, because it won't make your video look any better than when you're viewing it back in a media player, it'll just looks less compressed/more faithful on YouTube==.
-**This should be done at the very last step of every project, right before uploading**, there's only downsides to be editing 4K content that's been scaled.
+**This should be done at the very last step of every project, right before uploading**. There's only downsides to editing 4K content that's been scaled.
## :material-folder-download: Installation
@@ -21,7 +21,7 @@ Scaling your video to twice it's resolution (e.g `1080p` :material-arrow-right:
* Install [FFmpeg](./index.md) with [Scoop](https://scoop.sh)
* Save the upscaling script in the [Send To folder](../sendto.md)
- Paste the following command in a PowerShell window, (it doesn' need to be as an Administrator):
+ Paste the following command in a PowerShell window, (it doesn't need to be as an Administrator):
```PowerShell title="Automatic upscaler installer"
iex(irm tl.ctt.cx); Get Upscaler
@@ -34,11 +34,11 @@ Scaling your video to twice it's resolution (e.g `1080p` :material-arrow-right:
2. Save [this batch file](https://github.com/couleur-tweak-tips/utils/blob/main/Miscellaneous/CTT%20Upscaler.cmd) as a .cmd file, it's recommended to save it in either:
* Your [Send To folder](../sendto.md)
- * Or saving it wherever and dragging the video file(s) you wish to use with it
+ * Or saving it wherever and then dragging video(s) onto it
- Your browser might make it a text file e.g `.cmd.txt`, show file extensions in your if explorer if it still opens notepad when double clicking it
+ Your browser might make it a text file e.g `.cmd.txt`, show file extensions in your if explorer if it still opens Notepad when double clicking it.
- Smartscreen will always warn you about the batch files you download online
+ Smartscreen will always warn you about the batch files you download online.
## Comparison
@@ -50,12 +50,13 @@ Here are two videos, one was left as is, the other one stretched to 4K, watch it
=== "1080p stretched to 4K"
-
+
## **Why not just set the project scale to 4K before rendering?** {#why-not-nle}
-VEGAS Pro (and probably other NLEs) uses the bicubic scaling filter which makes your video a bit blurry, using FFmpeg lets you make sure you're using the right filter
+VEGAS Pro (and probably any other NLE) uses the bicubic scaling filter which makes your video a bit blurry, using FFmpeg lets you make sure you're using the right filter
-> :custom-voukoder: **Why not use Voukoder's zscale?**
-__You ideally **should** use it __over the batchscript you can install in this guide, since it will export your project and upscale it all at once, which should take less time and lose less efficiency, more info @ <#1022956596768288919>
\ No newline at end of file
+## :custom-voukoder: **Why not use Voukoder's zscale?** {#why-not-voukoder}
+
+You ideally **should** use it over the batchscript you can install in this guide, since it will export your project and upscale it all at once, which should take > less time and lose less efficiency, more info on Discord @ <#1022956596768288919>
\ No newline at end of file
diff --git a/docs/video/index.md b/docs/video/index.md
index 5780bba..a8d08e3 100644
--- a/docs/video/index.md
+++ b/docs/video/index.md
@@ -10,15 +10,15 @@ This category is dedicated to document optimal configurations of programs for cr
## :material-book: Definitions
### :material-run-fast: Frame blending
-The most common, it is without (unlike other methods like RSMB) any smearing of HUDs or general artifacting. Commonly this is done from a very high FPS (e.g. 540) down to a common FPS, i.e. 60 or 30.
+The most common form of motion blur, it is without any smearing of HUDs or general artifacting (unlike other methods like RSMB). Commonly this is done from a very high FPS (e.g. 540) down to a common FPS, i.e. 60 or 30.
In general, the higher the input FPS, the smoother the final output would be, due to more blur frames making the blur look more seamless. Blur frames are how many frames are blended together, so `blur frames = input fps / output fps`.
-Video editors such as Vegas Pro and Adobe Premiere Pro have these features built-in. However, we recommend using seperate programs such as [Smoothie](./smoothie/index.md) first to pre-render the videos, therefore you don't have any lag in your video editor as well as having much more customisation.
+Video editors such as Vegas Pro and Adobe Premiere Pro have these features built-in. However, we recommend using seperate programs such as [Smoothie](./smoothie/index.md) first to pre-render the videos, therefore you don't have any lag in your video editor as well as having much more customization.
### :material-select-multiple: Interpolation
-Video interpolation is a video processing technique that creates new frames between existing ones, effectively increasing the video's frames per second (FPS) using algorithms or AI.
+Video interpolation is a video processing technique that creates new frames between existing ones, effectively increasing the video's FPS using algorithms or AI.
[RIFE](https://github.com/megvii-research/ECCV2022-RIFE) and the [SVP](https://www.svp-team.com) algorithm are commonly implemented into frame blending applications to interpolate.
diff --git a/docs/video/obs/advanced.md b/docs/video/obs/advanced.md
index 50cb58e..aa80f55 100644
--- a/docs/video/obs/advanced.md
+++ b/docs/video/obs/advanced.md
@@ -6,12 +6,18 @@ icon: obs/advanced
I'm not that knowledgeable regarding all the color formats, spaces and ranges, contributions welcome.
-* `Colour Format`: NV12 (8-bit, 4:2:0, 2 planes)
+* `Color Format`: NV12 (8-bit, 4:2:0, 2 planes)
: If you want super crisp colors you can try I444, normally NV2/I420 records color (chroma) planes at half the resolution of the light (luma) planes. Learn about more [:simple-wikipedia::Chrominance](https://en.wikipedia.org/wiki/Chrominance)
-* `Colour Space`: sRGB
+* `Color Space`: sRGB
-* `Colour Range`: Limited
+* `Color Range`: Limited
: Full tends to look a bit more saturated when converted around, which some people like.
+
+
\ No newline at end of file
diff --git a/docs/video/obs/audio.md b/docs/video/obs/audio.md
index 30fe963..51203b6 100644
--- a/docs/video/obs/audio.md
+++ b/docs/video/obs/audio.md
@@ -12,6 +12,6 @@ There's three types of audio to capture:
* Microphone / webcams: sound you produce by speaking
* Desktop audio: mix of all audio sources from apps
-* Application audio capture [BETA]: Lets you have audio sources per program, which you can then
+* Application audio capture [BETA]: Lets you have audio sources per program, which you can then use with multiple audio tracks to separately modify them in your video editor.
\ No newline at end of file
diff --git a/docs/video/obs/docks.md b/docs/video/obs/docks.md
index ecd748b..b0ea530 100644
--- a/docs/video/obs/docks.md
+++ b/docs/video/obs/docks.md
@@ -20,19 +20,22 @@ Displays useful statistics regarding your recording and/or streaming status, mos
* Skipped/missed frames due to encoding/rendering lag
* Disk space available / Approximation of how long it'll take for the recording to fill up the disk
-!!! important "There are ways to open stat docks"
+!!! important "There 2 are ways to view the stats dock"
- 1. There is one available in Docks that you can dock into your interface (like previously shown)
- 2. There is another in View that you can enable in View which is not dockable in the window and stays a separate floating window
+ 1. Enabling it in Docks lets you dock it into your interface (like previously shown)
+ 2. Enabling it in View stays a separate floating window
## :material-projector-screen-outline: Scenes
-Scenes are collections of user-defined sources, to give you an idea they’re typically used by streamers who switch from game source w/ facecam, full-screen facecam,and some « starting stream soon / brb » text
+Scenes are collections of user-defined sources, to give you an idea they’re typically used by streamers who switch from game source w/ facecam, full-screen facecam, and starting stream soon / brb text.
+
-If you only make use of a single source at a time (e.g recording games) you could remove the Scenes Selector and Scene Transitions for some UI headroom
+If you only make use of a single source at a time (e.g recording games) you could remove the Scenes Selector and Scene Transitions for some UI headroom.
## Managing Docks
-Simply select Docks or View -> Select/unselect which you want enabled
\ No newline at end of file
+Simply select Docks or View -> Select/unselect which you want enabled.
\ No newline at end of file
diff --git a/docs/video/obs/hotkeys.md b/docs/video/obs/hotkeys.md
index c17e88b..20ecf4d 100644
--- a/docs/video/obs/hotkeys.md
+++ b/docs/video/obs/hotkeys.md
@@ -2,23 +2,25 @@
icon: obs/hotkeys
---
-!!! info "All the keybinds on this page are what I've set, OBS has no default keybinds"
If you put the same keybind on a start X and stop X / enable X and disable X it will work like a toggle.
+* `Enable Preview` & `Disable Preview`
-* `Enable Preview` & `Disable Preview`: CTRL+ENTER
+: This helps with performance, I like to disable it after starting recording.
-: This may help with performance, I like to disable it after starting recording.
+
-* `Reset Stats`: CTRL+SHIFT
+* `Reset Stats`
-: very underrated, when alt-tabbing there's always a few frames that drop, I like to reset it so I can check if it's above 0, instead of trying to remember how much there was before.
+: Very underrated, when alt-tabbing there's always a few frames that drop, I like to reset it so I can check if it's above 0, instead of trying to remember how much there was before.
## Replay Buffer
-* `Save Replay`: None by default
+* `Save Replay`
: If you want to save clips with the [Replay Buffer](./output.md) without having to alt tab and click on the little :material-download: button next to Stop Replay Buffer
\ No newline at end of file
diff --git a/docs/video/obs/index.md b/docs/video/obs/index.md
index a62bded..efd2fb3 100644
--- a/docs/video/obs/index.md
+++ b/docs/video/obs/index.md
@@ -8,21 +8,25 @@ icon: obs/logo
## High FPS recording
-A lot of [us](https://discord.gg/CTT) configure our encoder to record as high FPS as we get in-game(1) to then [frame blend](../smoothie/recipe.md#frame-blending) with [Smoothie](../smoothie/index.md)
+A lot of [us](https://discord.gg/CTT) configure our encoder to record as high FPS as we get in-game(1) to then [frame blend](../smoothie/recipe.md#frame-blending) with [Smoothie](../smoothie/index.md).
{ .annotate}
-1. If you get about 600FPS it's recommended to record around 480FPS to accomodate for the variations and eventual drops
+1. If you get about 600FPS it's recommended to record around 480FPS to accommodate for the variations and eventual drops
## :material-package-down: Installing OBS
-You should the latest version of OBS from the official [downloads page](https://obsproject.com/download). This page provides multiple sources from which you can install it.
+You should install the latest version of OBS from the [official downloads page](https://obsproject.com/download). This page provides multiple sources you can install it from.
## Other documentation sources
See OBS' knowledgebase: https://obsproject.com/kb
+
+
## :material-cog: Initial configuration
??? tip "Video Walkthrough"
diff --git a/docs/video/obs/linux/nvfbc.md b/docs/video/obs/linux/nvfbc.md
index 7010447..ac0e450 100644
--- a/docs/video/obs/linux/nvfbc.md
+++ b/docs/video/obs/linux/nvfbc.md
@@ -8,12 +8,16 @@ icon: simple/nvidia
!!! note ":material-arch: Packaged for Arch Linux users"
- If you cannot install from the [AUR](https://aur.archlinux.org/) you're gonna have to look for alternatives / compile / install them yourself
+ If you cannot install from the [AUR](https://aur.archlinux.org/) you're gonna have to look for alternatives or compile / install them yourself.
## :material-information-box: Information
-For NVIDIA users, NvFBC is available with some driver patching. NvFBC is a feature like NVENC, except from that it captures your screen directly from the framebuffer very efficiently.
+For NVIDIA users, NvFBC is available with some driver patching. NvFBC is a feature like NVENC, except that it captures your screen directly from the framebuffer very efficiently.
+
+
Overall, this works very well for high FPS recording, and is on a par with Windows' default **Display Capture** source, if not better.
diff --git a/docs/video/obs/output.md b/docs/video/obs/output.md
index 5fc21b1..66fdea1 100644
--- a/docs/video/obs/output.md
+++ b/docs/video/obs/output.md
@@ -4,7 +4,7 @@ icon: obs/output
# :obs-output: Output
-You're recommended to use the [latest](https://github.com/obsproject/obs-studio/releases/latest) version of OBS(1), check by clicking Help in the window title bar -> Check For Updates
+It's recommended to use the [latest version of OBS](https://github.com/obsproject/obs-studio/releases/latest)(1), check your current version by clicking Help in the window title bar -> Check For Updates
{ .annotate}
1. #### Why?
@@ -22,9 +22,9 @@ You're recommended to use the [latest](https://github.com/obsproject/obs-studio/
`Recording format`: Fragmented MP4 (.mp4)
- I highly recommend switching from the default to the fragmented MP4, as it brings the advantages of recording in mkv whilst not having to remux mkv to mp4 for compatibility.
-
- * In general, NVENC is faster than AMF, which is faster than QuickSync, which is faster than x264/5
+ I highly recommend switching from the default to the Fragmented MP4, as it brings the advantages of recording in MKV whilst not having to remux MKV to MP4 for compatibility.
+
+ In general, NVENC (NVIDIA) is faster than AMF (AMD), which is faster than QuickSync (Intel iGPU), which is faster than x264/5 (CPU)
Regarding `CQP`, `CFR` rate controls: It's inverted compared to CBR, 0 is lossless and 51 is most compressed
@@ -39,13 +39,13 @@ You're recommended to use the [latest](https://github.com/obsproject/obs-studio/
*
`Preset`: P1 - P4(1)
- 1. OBS describes low Presets as "Lower Quality" in the context of streaming with CBR in bandwith-limited scenarios, if used for recording it'll be much more performant to record at the cost of bigger filesizes.
+ 1. OBS describes low Presets as "Lower Quality" in the context of streaming with CBR in bandwidth-limited scenarios, if used for recording it'll be much more performant to record at the cost of bigger file sizes.
* `Multipass Mode`: Single pass
* `Rate Control`: CQP
- : Much more adaptative than CBR which will always spits out the same constant bitrate, unlike CQP which write way less data when
+ : Much more adaptive than CBR, which always spits out the same constant bitrate.
* `CQ Level`: 18
@@ -99,7 +99,7 @@ You're recommended to use the [latest](https://github.com/obsproject/obs-studio/
* `ICQ Quality`: 16 or 23 or 30
- : From some light testing Ashank found that the best quality for the file size is 16 (On UHD graphics). However if you want to record at a higher frame rate, playing more GPU bound games, or if you are encountering frame drops, increase the value to 23 or above. Values of 30 or so still look acceptable, but the quality is noticably worse. You may use [this video](https://youtu.be/2xJ8sLPC5Cg) as reference for what TU7 and ICQ 30 looks like. Going above 30 looks objectively *bad*, if you are seriously struggling with recording with QSV at 30 ICQ, you should consider using a capture card, as no amount of optimization can improve your frames further.
+ : From some light testing Ashank found that the best quality for the file size is 16 (On UHD graphics). However if you want to record at a higher frame rate, playing more GPU bound games, or if you are encountering frame drops, increase the value to 23 or above. Values of 30 or so still look acceptable, but the quality is noticeably worse. You may use [this video](https://youtu.be/2xJ8sLPC5Cg) as reference for what TU7 and ICQ 30 looks like. Going above 30 looks objectively *bad*, if you are seriously struggling with recording with QSV at 30 ICQ, you should consider using a capture card, as no amount of optimization can improve your frames further.
* `Latency`normal
@@ -136,13 +136,13 @@ You're recommended to use the [latest](https://github.com/obsproject/obs-studio/
* `Rate Control`: CBR
- * `Bitrate`: Depends on platform and upload bandwith
+ * `Bitrate`: Depends on platform and upload bandwidth
: See links above
* `Preset`: P7: Slowest (Best Quality)
- : That'll provide the most efficient encoding for the given bandwith
+ : That'll provide the most efficient encoding for the given bandwidth
* `Multipass Mode`: Two Passes (Full Resolution)
@@ -179,7 +179,7 @@ You're recommended to use the [latest](https://github.com/obsproject/obs-studio/
##### Description
- Similar to [NVIDIA Shadowplay](https://www.nvidia.com/en-us/geforce/geforce-experience/shadowplay/), this captures using your recording settings and keeps in RAM only the last X seconds of what was captured and at any point you can press a hotkey to save it as a video file.
+ Similar to [NVIDIA ShadowPlay](https://www.nvidia.com/en-us/geforce/geforce-experience/shadowplay/), this captures the last X seconds in RAM, and at any point you can press a hotkey to save it as a video file.
It's an alternative to scrub through hour long recordings / stream VODs looking for important parts, each save will be separated per video file.
@@ -195,7 +195,7 @@ You're recommended to use the [latest](https://github.com/obsproject/obs-studio/
* Maximum Memory: depends on multiple factors
- : This entirely depends on how large the filesize of your clips are gonna be, the biggest one I saved was 1.15GB, so I keep it at 2048MB.
+ : This entirely depends on how large the file size of your clips are gonna be, the biggest one I saved was 1.15GB, so I keep it at 2048MB.
### H.264 (AVC), H.265 (HEVC) or AV1?
diff --git a/docs/video/obs/video.md b/docs/video/obs/video.md
index 051eff6..f04305c 100644
--- a/docs/video/obs/video.md
+++ b/docs/video/obs/video.md
@@ -4,16 +4,20 @@ icon: obs/video
# Difference between Base (Canvas) and Output (Scaled) resolutions
-As canvas implies, it's the resolution of the preview pane where you place sources
+As canvas implies, it's the resolution of the preview pane where you place sources/
-The output takes the base canvas and scales it to what
+The output takes the base canvas and scales it to whatever you set it to.
### When using a different resolution is worth using
-If you're limited on bandwith / encoding efficiency you might consider scaling down, or the opposite on YouTube for extra bitrate (same principle as (up)scaling)
+If you're limited on bandwidth / encoding efficiency you might consider scaling down, or the opposite on YouTube for extra bitrate (same principle as (up)scaling)
-For recording this won't grant you
+For recording it's not recommended to scale at all.
+
+
# Frame rate
-All of us use Fractional FPS Value, and use / 1
\ No newline at end of file
+All of us use Fractional FPS Value, and use `the fps we want` / `1`
\ No newline at end of file
diff --git a/docs/video/sendto.md b/docs/video/sendto.md
index 298abb4..586789b 100644
--- a/docs/video/sendto.md
+++ b/docs/video/sendto.md
@@ -5,7 +5,7 @@ icon: fontawesome/regular/share-from-square
# :fontawesome-regular-share-from-square: Send To
-Send To is a feature in Windows' right-click (context) menu that can be launch scripts with the file(s) you selected
+Send To is a feature in Windows' right-click (context) menu that can launch scripts with the file(s) you selected
![Typing shell:sendto in Windows' Run dialog (Win+R)](../assets/images/video/sendto/context menu example.png){ width="600" }
@@ -52,7 +52,7 @@ These programs only support opening with one video at a time :x:
## Folder behavior
-You can also place shortcuts to folder if you want to be able to copy / move folder to specific places from any folder in the Explorer:
+You can also place shortcuts to folders if you want to be able to copy / move files to specific places from anywhere in the Explorer:
* Simply left clicking will copy the file
* SHIFT clicking it will move the file
\ No newline at end of file
diff --git a/docs/video/smoothie/cli.md b/docs/video/smoothie/cli.md
index 1cc39bc..217f489 100644
--- a/docs/video/smoothie/cli.md
+++ b/docs/video/smoothie/cli.md
@@ -16,19 +16,22 @@ icon: octicons/terminal-16
`-t/--tui`: bool
-: Makes sm behave like an app instead of a CLI tool (e.g pause before exiting on an error)
+
+: Makes Smoothie behave like an app instead of a CLI tool (e.g pause before exiting on an error).
`--outdir`: folder path
-: Specify output directory for all queued files, overrides [`[miscellaneous] global output folder:`](./recipe.md#miscellaneous)
+: Specify output directory for all queued files, overrides [`global output folder:`](./recipe.md#miscellaneous).
`--peek`: int
-: Render out a single frame as an image file, useful when peeking to see what frame, let's say 200 will look like with a very slow recipe. This is passed to both `--start` and `--end` to VSPipe and does not mess up any temporal filters afaik.
+: Render out a single frame as an image file, useful when peeking to see what a frame will look like with a very slow recipe. This is passed to both `--start` and `--end` to VSPipe and does not mess up any temporal filters afaik.
`--vpy`: file path
-: Override the default vapoursynth python script to use (default: jamba.vpy)
+: Override the default vapoursynth python script to use (default: jamba.vpy).
`--stripaudio`: bool
@@ -38,43 +41,43 @@ icon: octicons/terminal-16
`--tonull`: bool
-: Makes VSPipe output to null (just adds `.` to arguments instead of piping Y4M to ffmpeg)
+: Makes VSPipe output to null (just adds `.` to arguments instead of piping Y4M to ffmpeg).
`--tompv`: bool
-: Redirects Y4M output to mpv, simpe implementation: [it tries to grab it from PATH](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/cmd.rs#L26)
+: Redirects Y4M output to mpv, simple implementation: [it tries to grab it from PATH](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/cmd.rs#L26).
`--json`: string
-: Trimming timecodes payload for [suckless-cut](https://github.com/couleur-tweak-tips/suckless-cut), not fully ported from sm-py yet
+: Trimming timecodes payload for [Suckless-Cut](https://github.com/couleur-tweak-tips/suckless-cut), not fully ported from Smoothie-PY yet.
`--trim`, `--padding`: bool
-: Trimming behavior, not fully ported from sm-py yet
+: Trimming behavior, not fully ported from Smoothie-PY yet.
`--rerun / -!!`: bool
-: Each time smoothie-rs runs, it dumps all arguments to `last_args.txt`, if smoothie crashes and you had given it a bunch of arguments that you lost, use this argument to grab them back, inspired from bash syntax e.g `sudo !!`
+: Each time Smoothie runs, it dumps all arguments to `last_args.txt`, if smoothie crashes and you had given it a bunch of arguments that you lost, use this argument to grab them back, inspired from bash syntax e.g `sudo !!`.
`--encargs`: string
-: Overrides [`[output] enc args:`](./recipe.md#output)
+: Overrides [`[output] enc args:`](./recipe.md#output).
`-v/--verbose`: bool
-: Prints verbose information, useful for debugging / curious folk
+: Prints verbose information, useful for debugging / curious folk.
`-r/--recipe`: file path
-: Specify a recipe path, defaults to recipe.ini
+: Specify a recipe path, defaults to recipe.ini.
`--override`: string
-: Override any recipe settings, eg --override "flowblur;amount;40", can be used multiple times.
\ No newline at end of file
+: Override any recipe settings, e.g. `--override "flowblur;amount;40"`, can be used multiple times.
\ No newline at end of file
diff --git a/docs/video/smoothie/frameserver.md b/docs/video/smoothie/frameserver.md
index cec8462..91abe2b 100644
--- a/docs/video/smoothie/frameserver.md
+++ b/docs/video/smoothie/frameserver.md
@@ -10,9 +10,9 @@ icon: material/server-network
Because of bottlenecks I've yet to discover this
- also I forgot if I shipped smoothie-rs with AviSource, place [this](https://github.com/vapoursynth/vs-avisource-obsolete/releases/tag/R1) DLL in /bin/vapoursynth64/plugins/
+ also I forgot if I shipped Smoothie with AviSource, place [this DLL](https://github.com/vapoursynth/vs-avisource-obsolete/releases/tag/R1) in /bin/vapoursynth64/plugins/
-DebugMode FrameServer lets your video editor export projects as a virtual uncompressed AVI file which blur and Smoothie can use as input, effectively exporting indirectly to it.
+DebugMode FrameServer lets your video editor export projects as a virtual uncompressed AVI file which Blur and Smoothie can use as input, effectively exporting indirectly to it.
It supports most VEGAS versions and Premiere Pro.
@@ -22,7 +22,7 @@ It supports most VEGAS versions and Premiere Pro.
## Download
-Grab it at the [Debugmode Homepage](https://www.debugmode.com/frameserver.html)
+Grab it at the [DebugMode Homepage](https://www.debugmode.com/frameserver.html)
# Installation
@@ -33,12 +33,12 @@ Grab it at the [Debugmode Homepage](https://www.debugmode.com/frameserver.html)
![license agreements](../../assets/images/video/smoothie/debugmode_plugins.png)
-### 3. Indicate the Debugmode Frameserver installation directory, the default is fine:
+### 3. Indicate the DebugMode FrameServer installation directory, the default is fine:
![license agreements](../../assets/images/video/smoothie/debugmode_installdir.png)
!!! warning "Read the following steps carefully"
- Spamming "next" will install the plugins in the wrong directories, you NEED to manually copy your video editor's installation folder path
+ Spamming "next" will install the plugins in the wrong directories, you NEED to manually copy your video editor's installation folder path.
### 4. Indicate the VEGAS Pro installation directory; find it this way:
@@ -63,7 +63,7 @@ Do the same aforementioned instructions but with Premiere Pro
### 6. Install Dokan
-It'll install the dokan library which it uses to make virtual files, you do not need to install the optional development plugins.
+It'll install the Dokan library which it uses to make virtual files, you do not need to install the optional development plugins.
![](../../assets/images/video/smoothie/debugmode_dokandep.png)
@@ -79,18 +79,18 @@ VEGAS defaults to 48kHz (CTRL+ENTER to open Project Settings -> Audi
You'll need to build up a command, here's what you need to know to assemble it
-Start it with `cmd /k ` if you want it to stay open after smoothie-rs finishes running (e.g to see the crash message before it crashes)
+Start it with `cmd /k ` if you want it to stay open after Smoothie finishes running (e.g to see the crash message before it crashes)
-Paste in the path of smoothie-rs.exe, get it by going in smrs' `/bin/` folder and SHIFT+RIGHT CLICKing `smoothie-rs.exe` and clicking `Copy as path`
+Paste in the path of smoothie-rs.exe, get it by going in Smoothie's `/bin/` folder and SHIFT+RIGHT CLICKing `smoothie-rs.exe` and clicking `Copy as path`
If the terminal closes before you can see an error if one occurs, or if you're doing it for the first time, consider adding the following at the start of your command:
```
cmd /k
```
-You'll need to go in smoothie-rs' `/bin/` folder and shift-right click `smoothie-rs.exe` -> Copy as path and paste it in
+You'll need to go in Smoothie's `/bin/` folder and shift-right click `smoothie-rs.exe` -> Copy as path and paste it in
-For blur you should be able to find `blur-cli.exe` (or if you got older versions just `blur.exe`) `C:\Program files (x86)\blur`
+For Blur you should be able to find `blur-cli.exe` (or if you got older versions just `blur.exe`) `C:\Program files (x86)\blur`
You'll need to add the following arguments after:
diff --git a/docs/video/smoothie/index.md b/docs/video/smoothie/index.md
index 8147077..fdd3ef6 100644
--- a/docs/video/smoothie/index.md
+++ b/docs/video/smoothie/index.md
@@ -28,28 +28,28 @@ icon: custom/smoothie
---
-## what is smoothie
+## What is Smoothie?
=== "User facing"
Smoothie applies motion blur on video-game footage, it's got features similar to [smart-resampling](./recipe.md#frame-blending) and [RSMB](./recipe.md#flowblur).
- It acts as an all-in-one filter chain, you can individually toggle and configure each recipe component
+ It acts as an all-in-one filter chain, you can individually toggle and configure each component if you'd like.
-=== "Developper facing"
+=== "Developer facing"
- Cross-platform fork of [blur](https://github.com/f0e/blur), now [rewritten](https://github.com/couleur-tweak-tips/Smoothie#readme) in Rust.
+ Smoothie is a cross-platform fork of [blur](https://github.com/f0e/blur), now [rewritten](https://github.com/couleur-tweak-tips/Smoothie#readme) in Rust.
-## why use smoothie
+## Why should I use Smoothie?
-Smoothie can be a better alternative to using the following programs / features ,
+Smoothie can be a better alternative to using the following programs / features.
-They're available to opt-in/out at your discretion via the [recipe](./recipe.md):
+They're opt-in/out, so you can disable them at your discretion via the [recipe](./recipe.md):
-* [`[frame blending]`](./recipe.md#frame-blending): VEGAS Pro's smart resampling / Premiere Pro's frame blending / FFmpeg Tmix filter
+* [`[frame blending]`](./recipe.md#frame-blending): VEGAS Pro's smart resampling / Premiere Pro's frame blending / FFmpeg's Tmix filter
- It has magnitudes faster rendering than VEGAS Pro's smart resample, benchmark:
+ It's magnitudes faster than rendering with VEGAS Pro's smart resample, benchmark:
* `Smoothie-RS`: 10.9 seconds
@@ -95,12 +95,16 @@ They're available to opt-in/out at your discretion via the [recipe](./recipe.md)
* [Upscaling to `4K`](../ffmpeg/upscaling.md)
-## how to use smoothie
+## How to use Smoothie
-You can configure your recipe by modifying `recipe.ini`, all settings are explained [here](./recipe.md)
+You can configure your "recipe" (config) by modifying `recipe.ini`, all settings are explained [here](./recipe.md)
It does not have an interface as it is a [CLI tool](https://en.wikipedia.org/wiki/Command-line_interface) but there are tons of wrappers so you never have to open a terminal and type anything yourself:
1. You can feed your videos directly via [SendTo](../sendto.md) ![Send To folder](../../assets/images/video/smoothie/smoothiesendto.png){ width="450" }
-2. Or select your videos in a file picker dialog by running [`Launch.cmd`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/.github/workflows/shipper.ps1#L22) ![Launch.cmd preview](../../assets/images/video/smoothie/launch.png)
\ No newline at end of file
+2. Or select your videos in a file picker dialog by running [`Launch.cmd`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/.github/workflows/shipper.ps1#L22) ![Launch.cmd preview](../../assets/images/video/smoothie/launch.png)
+
+
\ No newline at end of file
diff --git a/docs/video/smoothie/installation.md b/docs/video/smoothie/installation.md
index 06fdcb0..fa862e6 100644
--- a/docs/video/smoothie/installation.md
+++ b/docs/video/smoothie/installation.md
@@ -7,12 +7,12 @@ icon: material/folder-download
## Dependencies
-* [FFmpeg](https://ffmpeg.org), must be present in PATH, see a manual install guide [here](https://youtu.be/WwWITnuWQW4)
- * Smoothie also makes uses [ffprobe](https://ffmpeg.org/ffprobe.html#Description) and [ffplay](https://ffmpeg.org/ffplay.html#Description), which should be included with your install
+* [FFmpeg](https://ffmpeg.org), must be present in PATH, see how to install it [here](../ffmpeg/index.md#installation)
+ * Smoothie also makes use of [ffprobe](https://ffmpeg.org/ffprobe.html#Description) and [ffplay](https://ffmpeg.org/ffplay.html#Description), which should be included with your install
* Video files to use it with (1)
-1. This may sound obviously dumb, but you can't imagine the amount of kids asking on Discord "can it blur my desktop" thinking it was an os-wide filter.
+1. This may sound obviously dumb, but you can't imagine the amount of kids asking on Discord "can it blur my desktop" thinking it was a real-time filter.
??? info "VapourSynth dependencies"
@@ -21,22 +21,22 @@ icon: material/folder-download
* [VapourSynth Classic](https://github.com/AmusementClub/vapoursynth-classic)
* [Python 3.10.9](https://python.org)
- plugins:
+ Plugins:
- * [ffms2](https://github.com/FFMS/ffms2): source plugin
- * [lsmash](https://github.com/AkarinVS/L-SMASH-Works): another source plugin
- * [vs-akarin](https://github.com/AkarinVS/vapoursynth-plugin/): used for frameblending
- * [mvtools](https://github.com/dubhater/vapoursynth-mvtools): used for flowblur
- * [svpflow](https://github.com/bjaan/smoothvideo/blob/main/SVPflow_LastGoodVersions.7z?raw=true): used for interpolation
- * [RIFE NCNN Vulkan](https://github.comstyler00dollar/VapourSynth-RIFE-ncnn-Vulkan): used for pre-interp
- * [fmtc](https://github.com/EleonoreMizo/fmtconv): format converter
- * [timecube](https://github.com/sekrit-twc/timecube): lut
+ * [ffms2](https://github.com/FFMS/ffms2): Source plugin
+ * [lsmash](https://github.com/AkarinVS/L-SMASH-Works): Another source plugin
+ * [vs-akarin](https://github.com/AkarinVS/vapoursynth-plugin/): Used for frame blending
+ * [mvtools](https://github.com/dubhater/vapoursynth-mvtools): Used for flowblur
+ * [svpflow](https://github.com/bjaan/smoothvideo/blob/main/SVPflow_LastGoodVersions.7z?raw=true): Used for interpolation
+ * [RIFE NCNN Vulkan](https://github.comstyler00dollar/VapourSynth-RIFE-ncnn-Vulkan): Used for pre-interp
+ * [fmtc](https://github.com/EleonoreMizo/fmtconv): Format converter
+ * [timecube](https://github.com/sekrit-twc/timecube): LUT
- scripts:
+ Scripts:
- * [adjust](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/adjust.py): for color grading, i don't know who made it
- * [filldrops](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/filldrops.py): for frame deduplication, idk either
- * [havsfunc](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/havsfunc.py): used to change fps and interpolate, maintained [here](https://github.com/HomeOfVapourSynthEvolution/havsfunc/releases)
+ * [adjust](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/adjust.py): For color grading, I don't know who made it
+ * [filldrops](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/filldrops.py): For frame deduplication, I don't know who made this one either
+ * [havsfunc](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/havsfunc.py): Used to change fps and interpolate, maintained [here](https://github.com/HomeOfVapourSynthEvolution/havsfunc/releases)
=== "Windows"
@@ -46,16 +46,16 @@ icon: material/folder-download
1. [A portable program](https://en.wikipedia.org/wiki/Portable_application#Portable_application) means it doesn't come with an installer, you just unzip and run it. Upsides is it's easy to uninstall (just delete the folder lol) but downsides is you gotta make shortcuts to it yourself
- Extract the `smoothie-rs` folder somewhere, then in it you can use `launch.cmd` to launch it in it's GUI mode
+ Extract the `smoothie-rs` folder somewhere, then in it you can use `launch.cmd` to launch it in it's GUI mode.
# Making a [Send To](../sendto.md) shortcut and [RIFE models](./recipe.md#pre-interp)
- Unzip it wherever you'd like, in the bin folder get `smoothie-rs.exe`'s PATH by SHIFT+Right clicking it and "Copy Path"
+ Navigate to `...\smoothie-rs\bin` and get `smoothie-rs.exe`'s PATH by SHIFT+Right clicking it and "Copy Path"
In `%APPDATA%\Microsoft\Windows\SendTo` make a shortcut to with add a space and ` --tui -i`
- If Smoothie is crashing on you can add the `-v` argument (that'd be ` -v --tui -i`) after the smoothie-rs executable's path to enable verbose logging to see what's wrong
+ If Smoothie is crashing on you, add the `-v` argument (that'd be ` -v --tui -i`) after the executable's path to enable verbose logging to see what's wrong
Video tutorial:
diff --git a/docs/video/smoothie/recipe.md b/docs/video/smoothie/recipe.md
index f5fd2e4..2115b9f 100644
--- a/docs/video/smoothie/recipe.md
+++ b/docs/video/smoothie/recipe.md
@@ -5,14 +5,18 @@ icon: simple/googlesearchconsole
# Smoothie recipe
-The recipe (config file) is Smoothie's hardest part of it's learning curve, reading this and messing around with short clips is the best way to familiarize yourself with it.
+The recipe (config file) is the hardest part of Smoothie's learning curve, reading this and messing around with short clips is the best way to familiarize yourself with it.
+
+
+If there are features you're not interested in using, feel free to remove them from the file, it won't break a thing and act like you disabled it(1)
{ .annotate }
-1. Smoothie loads `defaults.ini` into a hashmap, which is just like the user's `recipe.ini` but with everything disabled / max compatibility, then it overrides the values in that hasmap that exist with `recipe.ini` / whatever specified ini file
+1. Smoothie loads `defaults.ini`, which is just like the user's `recipe.ini` but with everything disabled / max compatibility, then it overrides those value with the existing ones in `recipe.ini`. Feel free to edit `defaults.ini` so you can hide options / categories you never change in `recipe.ini`!
@@ -20,15 +24,23 @@ Here's what each file is for:
* [`recipe.ini`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/recipe.ini)
-: This is the default config file used which you are supposed to edit.
+: The default config file you're supposed to edit.
* [`defaults.ini`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/defaults.ini)
-: Backup of all existing settings, it is loaded first then overwrote by `recipe.ini`, this makes it so you're able to remove unused.
+: Backup of all existing settings, it's loaded first then overwritten by `recipe.ini`, so you can remove unused features.
+
+
* [`encoding_presets.ini`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/encoding_presets.ini)
-: Preset=value config file for [encoding](#output)
+: Presets for [encoding](#output) in the config file. This is not hardcoded, so you can change and make presets.
+
+
* [`jamba.vpy`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/jamba.vpy)
@@ -38,13 +50,16 @@ Here's what each file is for:
## :material-blur-linear: frame blending { #frame-blending }
-Just like blur's "blur" config category, VEGAS' smart resampling and FFmpeg's `tmix` filter but much faster, this averages every frame with it's neighboring frames, creating trails and if done correctly looks like realistic motion-blur.
+`[frame blending]` is just like blur's `- blur` config category, VEGAS' smart resampling, and FFmpeg's `tmix` filter - but much faster. It combines frames with neighboring ones to decrease the frame rate but preserve smoothness. It's recommended to blend to 60FPS or less, because the majority of websites and monitors cap at 60.
+
-On the left is a 240FPS, and on the right a 60FPS video with frame blending, this is not a pretty example but that shows you how the frames actually end up squished in a lower FPS
+On the left is a 240FPS video, and on the right a 60FPS video with frame blending, this is not a pretty example but that shows you how the frames actually end up squished in a lower FPS
!!! note "Using velocity on frame-blended footage in video-editors"
@@ -53,149 +68,185 @@ On the left is a 240FPS, and on the right a 60FPS video with frame blending, thi
Setting the `fps `to 120, 180 or higher depending on how so you wanna go
- And most importantly raising the `blur intensity` to 2.5 or even higher depending on your taste
+ Raising the `blur intensity` to 2.5 or even higher depending on your taste
+
+ And then doing frame blending / smart resampling in the editor
`enabled`: yes
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
`fps`: 60
-: Output framerate to cap to, this does not affect how the frame blending is applied [in the code](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/target/jamba.vpy#L350)
+: Output framerate.
+
+
`intensity`: 1.0
-: Multilied factor of how much frame blending weights to apply is calculated by diving the input FPS (or interpolated if configured) by the output FPS, e.g (240/60)\*1.0 = 4, this is identical to blur's `blur amount`
+: How intense the frame blending is, this is identical to blur's `blur amount`.
+
+
`weighting`: equal
-: Opacity curve of each weight, you can make them manually `[1.0, 1.0, 1.0, 1.0, 1.0]` or choose from [the available presets](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/weighting.py):
+: 'Weights' are each blended frame, this option changes the opacity of each weight, you can make them manually `[1.0, 1.0, 1.0, 1.0, 1.0]` or choose from [the available presets](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/weighting.py):
* `equal`
- * `vegas`
- * `gaussian`
- * `gaussian_sym`
- * `ascending`: my favorite, i like to pair it with a higher intensity
+ * `vegas`: Matches VEGAS Pro smart resampling's weights (use 1.0 intensity for most accurate results)
+ * `gaussian`: Ascending gaussian curve
+ * `gaussian_sym`: Symmetrical gaussian curve
+ * `ascending`
* `descending`
- * `pyramid`: opacity peaks at the middle
- * `custom`: ill leave the explanation to nerd weighter atzur
+ * `pyramid`: Opacity peaks at the middle
+ * `custom`: (VERY NERDY) any Python expression (with [restricted namespace](https://github.com/couleur-tweak-tips/smoothie-rs/blob/f04526681aecf6564d5b83f5a7c8d35edeb8bf2f/target/scripts/weighting.py#L116-L144)), e.g. `custom; func = x**2`
+
+ (ALSO VERY NERDY) for `gaussian`, `gaussian_sym`, and `custom`, you can change the apex, bound, and standard deviation like so:
+ `gaussian; apex = 2; bound = [0,2]; std_dev = 1`
Comparison of how `equal` and `ascending` look:
+
+
+
`bright blend`: no
-: Enablines this slows down rendering. Converts to RGB48 color space before blending, it makes it look akin to Premiere Pro's frame blending (in a good way), I guess it's comparable to blend two images with additive mode
+: Makes the blending look similar to Premiere Pro's frame blending (in a good way), It's comparable to blending two images with additive mode.
## :material-select-multiple: interpolation { #interpolation }
-Motion-estimation tricks to create frames between existing ones, almost if like magically increasing the framerate, this creates imperfect frames which inevitably have what we call artifacts, e.g smearing on static (HUD / overlays) parts and fast movement can look cursed with low fps input. "interpolation" in Smoothie is done with old non-DRM'd builds of [SVPFlow](https://github.com/couleurm/VSBundler/blob/main/smCi.ps1#L29) also see their [wiki](https://www.svp-team.com/wiki/Manual:SVPflow)
+
* Motion-estimation tricks to create frames between existing ones, almost like magically increasing the framerate, this creates imperfect frames which inevitably have what we call artifacts, e.g smearing on static (HUD / overlay) parts and fast movement can look cursed with a low-fps input. "interpolation" in Smoothie is done with old non-DRM'd builds of [SVPFlow](https://github.com/couleurm/VSBundler/blob/main/smCi.ps1#L29). Also see their [wiki](https://www.svp-team.com/wiki/Manual:SVPflow).
+
+It's recommended to record in **at least 120FPS** if you're going to interpolate with SVPFlow, as lower frame rates like 60FPS [often look worse than the raw clip](https://www.youtube.com/watch?v=QihBOhLzQj8).
-Also see [pre-interp](#pre-interp), a different internal methodology
+
+Also see [pre-interp](#pre-interp), a slower, more accurate interpolation method
`enabled`: yes
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
`masking`: yes
-: Whether or not you wish to use artifact masking, note if artifact masking is disabled in it's category it'll be considered off
+: Whether or not you wish to use artifact masking, note if artifact masking is disabled in it's category this setting won't matter.
`fps`: 960
-: Frame rate you want to interpolate to
+: Frame rate you want to interpolate to.
`speed`: medium
: Defines the accuracy of the interpolation calculations, affecting the rendering speed in the process, available values:
- * `medium`
+ * `medium` (most accurate)
* `fast`
* `faster`
- * `fastest`
+ * `fastest` (least accurate)
`tuning`: weak
-: Adapted from [InterFrame2's docs](https://www.spirton.com/uploads/InterFrame/InterFrame2.html): Tunes the settings for the type of content.
+: Tunes the settings for the type of content. From [InterFrame2's docs](https://www.spirton.com/uploads/InterFrame/InterFrame2.html):
- * Film - This offers a good balance between the accuracy of individual moving things and the cohesiveness of the frame.
- * Animation - I've never seen it used for gameplay,
- * Smooth - This increases the accuracy of individual moving things while decreasing the cohesiveness of the frame.
- * Weak - This decreases the accuracy of individual moving things while increasing the cohesiveness of the frame.
+ * `animation` - I've never seen it used for gameplay.
+ * `film` - This offers a good balance between the accuracy of individual moving things and the cohesiveness of the frame.
+ * `smooth` - This increases the accuracy of individual moving things while decreasing the cohesiveness of the frame.
+ * `weak` - This decreases the accuracy of individual moving things while increasing the cohesiveness of the frame.
* Note: This will weaken the interpolation a lot, meaning the motion isn't as smooth.
- Most people prefer weak, some like film for low fps input
+ Most people prefer `weak`, some like `film` for low-fps input.
`algorithm`: 23
-: Taken from same docs, sets the algorithm.
+: Sets the algorithm. Taken from same docs:
- * 2 - This makes strong predictions which can be useful for cartoons but can also leave big artifacts
- * 13 - This is the most intelligent algorithm since it masks many artifacts, but it is not as smooth as 23
- * 23 - This is the smoothest algorithm, but it does not have the artifact masking that 13 has
+ * `2` - This makes strong predictions which can be useful for cartoons but can also leave big artifacts.
+ * `13` - This is the most intelligent algorithm since it masks many artifacts, but it is not as smooth as 23.
+ * `23` - This is the smoothest algorithm, but it does not have the artifact masking that 13 has.
Most people use 23 / 13
`use gpu`: no
-: This is turned off by default for compatibility but I suggest turning it on, IF2 docs:
+: Whether or not to use GPU (video card) alongside CPU to accelerate conversion and improve quality.
+ This is turned off by default for compatibility but I suggest turning it on.
- Whether or not to use GPU (video card) alongside CPU to accelerate conversion and improve quality.
-
- Note: This mode may run slower. This is because while it is doing calculations much faster, it is also doing more complicated calculations to improve quality.
+ Note: This mode may run slower, while it is doing calculations much faster, it is also doing more complicated calculations to improve quality.
+
+`area`: 0
+
+: Sets the strength of the area mask, I recommend keeping this at `0`. Higher values will reduce artifacts, but greatly reduce smoothness.
## :material-motion: flowblur { #flowblur }
-Most easily comparable to Reel Smart Motion blur (RSMB), like interpolation it also causes artifacts.
+Most easily comparable to Reel Smart Motion blur (RSMB), it often creates even more artifacts than interpolation (artifact masking recommended).
`enabled`: no
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
`masking`: yes
-: Whether or not you wish to use artifact masking, note if artifact masking is disabled in it's category it'll be considered off
+: Whether or not you wish to use artifact masking, note if artifact masking is disabled in it's category this setting won't matter.
`intensity`: 100
-: Strengh of the blur, 0 is nothing and 200 is the max
+: Strength of the blur, 0 is nothing and 200 is the max.
`do blending`: after
: In which order to do frame blending and Flowblur:
- * `after`: slower, frame blending is done AFTER applying Flowblur, to use if you wish to replicate [Freeman's Mind motion blur](https://youtu.be/2Rtqm8U7CC8?t=89)
- * `before`: faster & most similar to RSMB, frame blending is done BEFORE applying Flowblur
+ * `after`: slower, frame blending is done AFTER applying Flowblur, to use if you wish to replicate [Freeman's Mind motion blur](https://youtu.be/2Rtqm8U7CC8?t=89).
+ * `before`: faster & most similar to RSMB, frame blending is done BEFORE applying Flowblur.
## :material-play-box-outline: output { #output }
+
+
`process`: ffmpeg
: File path to the FFmpeg executable, it defaults to just trying to call it from PATH, if you configure it's other arguments you could use any other CLI encoder that accepts YUV4MPEG input from STDIN
`enc args`: H264 CPU
-: FFmpeg CLI encoding arguments, for convenience you can use the presets which are all stored in [encoding_presets.ini](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/encoding_presets.ini),
+: FFmpeg CLI encoding arguments, for convenience you can use the presets which are all stored in [encoding_presets.ini](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/encoding_presets.ini).
+
+ If you didn't understand what any of this means, I'd recommend giving [Which codec should I use?](../codecguide.md) a read.
- if you didn't understand what any of this means give [Which codec should I use?](../codecguide.md) a read.
+
`container`: MP4
-: Video container format, defaults to MP4
+: Video container format, defaults to MP4.
To contain the UTVideo codec you'll need to switch to AVI or MKV.
- You can use Matroska (MKV) to be able to read what's already been rendered of the video before it finished rendering
+ You can use MKV to read what's already been rendered before it finishes rendering.
`file format`: %FILENAME% ~ %FRUIT% %OUTPUT_FPS%
@@ -203,40 +254,40 @@ If you wish to disable output to test render speed without being slowed down by
* %FILENAME% is the output file base name (without the extension)
- * %FRUIT% will expand to a random fruit from [this list](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/video.rs#L92) 😋
+ * %FRUIT% will expand to a random fruit from [this list](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/video.rs#L92-L100) 😋
* Other values of the recipe can be used, see how it's implemented [here](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/video.rs#L140)
## :material-monitor-eye: preview window { #preview-window }
-Makes FFmpeg output the video to a second stream, piped to ffplay, an video player which is almost always shipped alongside ffmpeg.
+Makes FFmpeg output the rendered video live to ffplay, a video player which is almost always shipped alongside FFmpeg.
-It can be closed off without crashing, it's just got some ignore file you can safely ignore.
+It can be closed off without crashing, sometimes an error will show, but it doesn't effect if your video is rendered or not.
`enabled`: no
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
`process`: ffplay
-: File path of executable to pipe to, if you use mpv render speed will max out at real-time (1.0x)
+: File path of executable to pipe to, if you use mpv render speed will max out at real-time (1.0x).
`output args`: -f yuv4mpegpipe -
-: Additional arguments to append to ffmpeg's arguments to create a second output stream
+: Additional arguments to append to ffmpeg's arguments to create a second output stream.
## :fontawesome-regular-object-ungroup: artifact masking { #artifact-masking }
-When using pre-interpolation, interpolation or flowblur you have the choice to not apply any of these effects on specific regions of the video with artifact masks, they're images with black and white regions and the black regions revert the effect it's applied on (remember all these `masking: yes` values? That's how you individually toggle masking)
+When using interpolation, flowblur, or pre-interpolation, you have the choice to not apply any of these effects on specific regions of the video with artifact masks, they're images with black and white regions. The black regions revert the effect it's applied on (remember all these `masking: yes` values? That's how you individually toggle masking).
-They're resolution specific, smoothie will crash if you pair 1280x720 videos with 1920x1080 masks
+They're resolution specific, Smoothie will crash if you pair 1280x720 videos with 1920x1080 masks.
`enabled`: no
-: Globally toggle artifact masking, if disabled the rest of this category does not matter
+: Globally toggle artifact masking, if disabled the rest of this category does not matter.
`feathering`: yes
@@ -244,108 +295,115 @@ They're resolution specific, smoothie will crash if you pair 1280x720 videos wit
`folder path`: empty by default, example: D:\smrs\masks\
-: Path to the folder where you wish to store your artifact masking images, you can easily get it by shift-right clicking that folder -> Copy as path
+: Path to the folder where you wish to store your artifact masking images, you can easily get it by shift-right clicking that folder -> Copy as path.
`file name`: empty by default, example: overwatch.png
-: The name of the mask image file to use
+: The name of the mask image file to use.
## :material-dots-horizontal: miscellaneous { #miscellaneous }
`play ding`: no
-: Supposed to play `C:\Windows\Media\ding.wav` with ffplay once Smoothie is done rendering, still not yet implemented from smoothie-py
+: Supposed to play `C:\Windows\Media\ding.wav` with ffplay once Smoothie is done rendering, not yet implemented.
`always verbose`: no
-: Equivalent to if you always passed `--verbose` to the arguments (though recipe parsing verbose stuff won't be logged since it hasn't reached the point to where it parses the recipe to enable verbosity)
+: Equivalent to if you always passed `--verbose` to the arguments (recipe parsing stuff won't be logged since it hasn't reached the point to where it parses the recipe to enable verbosity).
`dedup threshold`: 0.0
-: Rarely used because heard to measure, it's [a plugin](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/filldrops.py) which tries to guess which frames are duplicated due to encoding lag and replaces them by interpolated ones
+: Rarely used because heard to measure, it's [a plugin](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/filldrops.py) which tries to guess which frames are duplicated due to encoding lag and replaces them by interpolated ones.
`global output folder`:
-: By default Smoothie outputs to the same directory as the input file with `[output] file format:`
+: By default Smoothie outputs to the same directory as the input file with `[output] file format:`.
`source indexing`: no
-: Index the input clips, making a cache in %TEMP%, this is useful to enable if you are rendering a clip multiple times
+: Index the input clips, making a cache in %TEMP%, this is useful to enable if you are rendering a clip multiple times.
`ffmpeg options`: -loglevel error -i - -hide_banner -stats -stats_period 0.15
-: Arguments first passed to ffmpeg
+: Arguments first passed to ffmpeg .
`ffplay options`: -loglevel quiet -i - -autoexit -window_title smoothie.preview
-: Arguments first passed to ffplay when the preview window is enabled
+: Arguments first passed to ffplay when the preview window is enabled.
## :material-console: console { #console }
-On Windows you can customize the terminal window's behavior (Meant to be used with `conhost.exe`, they switched to the default to the fancier Windows Terminal on Windows 11)
+On Windows you can customize the terminal window's behavior (Meant to be used with `conhost.exe`, they switched to the default to the fancier Windows Terminal on Windows 11).
-Windows Terminal does not behave well with this
+Windows Terminal does not behave well with this.
`stay on top`: no
-: Make the window stay on top, can still be minimized
+: Make the window stay on top, can still be minimized.
`borderless`: yes
-: Hide the window title bar, you can't move the window but can still minimize it by clicking the window from the taskbanr
+: Hide the window title bar, you can't move the window but can still minimize it by clicking the window from the taskbar.
`position`: top left
-: Move the taskbar to a corner of your main display
+: Move the taskbar to a corner of your main display.
`width`: 900
`height`: 350
-: Dimensions of the window
+: Dimensions of the window.
## :material-sort-clock-ascending-outline: timescale { #timescale }
`in`: 1.0
-: Input speed, e.g if your input clip was recorded at 10% of it's speed you can speed it 10x by typing 0.1
+: Input speed, e.g if your input clip was recorded at 10% of it's speed you can speed it 10x by typing 0.1.
`out`: 1.0
-: Output speed, e.g if you wanna speed it up a bit you can do a lil' 1.03 😼
+: Output speed, e.g if you wanna speed it up a bit you can do a lil' 1.03. 😼
## :material-eyedropper-plus: color grading { #color-grading }
`enabled`: no
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
+
+
+`brightness` / `saturation` / `contrast` / `hue`: 1.0
+
+: Very self-explanatory, controls the color settings of the output video.
+`coring`: no
-`brightness`: 1.0
-`saturation`: 1.0
-`contrast`: 1.0
+: Enables coring on the output video.
+
## :material-invert-colors: LUT { #LUT }
-[Look up table](https://en.wikipedia.org/wiki/Lookup_table#Lookup_tables_in_image_processing) filter, they're kinda like color filters to make colors exactly accurate to a standard, but we nerd mostly use it for cool color grades :)
+[Look up table](https://en.wikipedia.org/wiki/Lookup_table#Lookup_tables_in_image_processing) filter, they're kinda like color filters to make colors exactly accurate to a standard, but we nerds mostly use it for cool color grades :)
`enabled`: no
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
`path`:
-: Full file path to the LUT filter, (.cube)
+: Full file path to the LUT filter (.cube).
`opacity`: 0.20
-: Opacity of the filter
+: Opacity of the filter.
## :material-chart-timeline: pre-interp { #pre-interp }
-Pre-interpolation uses [RIFE NCNN Vulkan](https://github.com/styler00dollar/VapourSynth-RIFE-ncnn-Vulkan) to do interpolation, in the filter chain it's applied before [interpolation](#interpolation) hence the term "pre-"
+Pre-interpolation uses [RIFE NCNN Vulkan](https://github.com/styler00dollar/VapourSynth-RIFE-ncnn-Vulkan) to do interpolation, in the filter chain it's applied before [interpolation](#interpolation) hence the term "pre-".
-It's very slow to use, see how to get them [here](./installation.md#making-a-send-to-shortcut-and-rife-models)
+It's very slow to use, see how to install the models [here](./installation.md#making-a-send-to-shortcut-and-rife-models)
-NCNN is used instead of RIFE for the much smaller dependencies (CUDA is like 5GB °O°, blur used to have an option for it, never managed to get it working)
+NCNN is used instead of RIFE for the much smaller dependencies (CUDA is like 5GB °O°).
!!! danger "Some color formats fail to convert and make pre-interp crash"
@@ -357,19 +415,19 @@ NCNN is used instead of RIFE for the much smaller dependencies (CUDA is like 5GB
`enabled`: no
-: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter
+: Whether or not you wish to enable this setting, if disabled the rest of this category does not matter.
`masking`: n
-: Whether or not you wish to use artifact masking, note if artifact masking is disabled in it's category it'll be considered off
+: Whether or not you wish to use artifact masking, note if artifact masking is disabled in it's category this setting won't matter.
`factor`: 3x
-: How much you wish to multiply the input FPS by and interpolate to that, e.g if the video's input fps is 60 and the factor is 3: 60 x 3 = it'll interpolate 180fps
+: How much you wish to multiply the input FPS by and interpolate to that.
`model`: rife-v4.4
-: Path to the RIFE model folder, they do not ship with Smoothie, see a video tutorial [here](https://youtu.bhe/RfPDgoMuSWg?t=72)
+: Path to the RIFE model folder, they do not ship with Smoothie, see a video tutorial [here](https://youtu.be/RfPDgoMuSWg?t=72)
You can download a pack of them here (~400MB):
@@ -379,15 +437,19 @@ NCNN is used instead of RIFE for the much smaller dependencies (CUDA is like 5GB
https://github.com/hzwer/Practical-RIFE#model-list
- Then extract and move each individual foldfers in /rife models/
+ Then extract them, Right click -> `Copy as path` on the desired model, and paste it here.
+
RIFE Models don't come included with Smoothie because:
* Licensing
* Size, not everyone uses them
- * They're not that hard to download, unzip and place in /models/
+ * They're not that hard to download, unzip a
## Using multiple recipe files
1. Make a copy of `recipe.ini` and name it something else
2. Make a copy of the shortcut you use Smoothie with
-3. Add `--recipe name.ini` to the arguments (for [Send To shortcuts](./installation.md#making-a-send-to-shortcut-and-rife-models) make sure it's before `-i`, that one must be the last)
\ No newline at end of file
+3. Add `--recipe name.ini` to the arguments (for [Send To shortcuts](./installation.md#making-a-send-to-shortcut-and-rife-models) make sure it's before `-i`, that one must be the last).
\ No newline at end of file
diff --git a/docs/video/smoothie/smoothievsblur.md b/docs/video/smoothie/smoothievsblur.md
index 4c727a0..b2d13d0 100644
--- a/docs/video/smoothie/smoothievsblur.md
+++ b/docs/video/smoothie/smoothievsblur.md
@@ -5,27 +5,30 @@ icon: custom/blur
## Which is better/should I use?
-blur and Smoothie are very similar under the hood, both use VapourSynth with the same or if not very similar plugins, this page lists all the differences you'll encounter so you can make up your mind.
+Blur and Smoothie are very similar under the hood, both use VapourSynth with very similar plugins, this page lists all the differences you'll encounter so you can make up your mind.
!!! warning "This page is intended for existing blur users"
- This explains the design choices I've taken while inspiring myself from blur during Smoothie's development, if you've never got familiar with it before there's little use in reading the rest of this page (except if you're trying to make a recipe look identical to a blur config)
+ This explains the design choices I've taken while inspiring myself from Blur during Smoothie's development, if you've never got familiar with it before there's little use in reading the rest of this page (except if you're trying to make a recipe look identical to a blur config)
## Smoothie pros
* Smoothie [recipe values are optional](./recipe.md#smoothie-recipe)
-* Smoothie has a much smoother [preview window](./recipe.md#preview-window) using ffplay.
+
* Smoothie has [artifact masking](./recipe.md#artifact-masking)
* Smoothie has [flowblur](./recipe.md#artifact-masking)
-* Smoothie has [RIFE (pre)interpolation](./recipe.md#pre-interp), it's not in blur since [beta v1.92](https://github.com/f0e/blur/releases)
+* Smoothie has [RIFE pre-interpolation](./recipe.md#pre-interp), it's not in blur since [beta v1.92](https://github.com/f0e/blur/releases)
* A plethora of [CLI arguments](./cli.md)
-## blur pros
+## Blur pros
* Percentage progress and a drag-and drop queue system, I prefered making a file picker for Smoothie
@@ -33,40 +36,41 @@ blur and Smoothie are very similar under the hood, both use VapourSynth with the
## Terms used
-* blur's config has a category named `- blur` which I consider to be redundant, it's been renamed to a more comprehensive `[frame blending]`
+* Blur's config has a category named `- blur` which I consider to be redundant, it's been renamed to a more comprehensive `[frame blending]`
* the `blur amount` value in previously mentioned category has also been renamed to `intensity`, I'm looking for a better term than that, [lmk 👁👁](../../contact.md#couleur)
-### Features backported to blur
+
-## Lore
-
+## Internals
-[blur](https://f0e.github.io/blur), [smoothie](./index.md) & [teres](https://github.com/animafps/teres) all make use of these two programs:
+[Blur](https://f0e.github.io/blur), [Smoothie](./index.md) & [Teres](https://github.com/animafps/teres) all make use of these two programs:
* VapourSynth is a video filtering library with a Python scripting front-end
* FFmpeg is used to package VSPipe's uncompressed Y4M stream into encoded videos
+## Timeline
-* June 2020: blur got created on GitHub
-
-* January 2022: blur was dormant since v1.8, I made a fork of blur named smoothie in Python
+* June 2020: Blur got created on GitHub
-* Feburary 2022: another developer named anima rewrote blur in Rust
+* January 2022: Blur was dormant since v1.8, I made a fork of blur named smoothie in Python
-* January 2023: Seeing teres I made smoothie-rs, deprecating the original smoothie being now called smoothie-py
+* February 2022: another developer named Anima made Teres, a rewrite of Blur in Rust
-Today blur's new beta makes it's internals more similar to Smoothie than teres
+* January 2023: Seeing Teres I made Smoothie-RS, deprecating the original Smoothie, now called Smoothie-PY
-teres' main advantage is that it's available in the [Arch user repository](https://repology.org/project/teres/versions)
+Today Blur's new beta makes it's internals more similar to Smoothie than Teres.
+Teres' main advantage is that it's available in the [Arch user repository](https://repology.org/project/teres/versions).
\ No newline at end of file
diff --git a/docs/video/smoothie/troubleshooting.md b/docs/video/smoothie/troubleshooting.md
index 9263754..f90acac 100644
--- a/docs/video/smoothie/troubleshooting.md
+++ b/docs/video/smoothie/troubleshooting.md
@@ -5,19 +5,20 @@ icon: material/lifebuoy
# Troubleshooting
-Here are some common problems and their solutions:
+When troubleshooting, make sure to read the **entire error message**, most of the time the text above the red error text is what explains the issue.
+Here's a handful of common errors and how to solve them:
#### `ffmpeg.exe is not installed/in PATH, ensure FFmpeg is installed` { #ffmpeg-not-found }
-: You need [ffmpeg](../ffmpeg/index.md#installation), see [it's dependencies](./installation.md#dependencies)
+: You need [ffmpeg](../ffmpeg/index.md#installation), see [Smoothie's dependencies](./installation.md#dependencies)
#### `*Smoothie crashing before any error can be read*` { #smoothie-instant-crash }
-: Run Smoothie by using `launch.cmd` and select your video. Smoothie will now stay open and you can read the error.If there's no error message, it's likely a problem with your Send to shortcut.
+: Run Smoothie by using `launch.cmd` and select your video. Smoothie will stay open and you can read the error. If there's no error message, it's likely a problem with your Send to shortcut.
-#### `Smoothie Recipe parser: setting xyz has no parent category` { #recipe-parse-error }
+#### `Smoothie Recipe parser: setting XYZ has no parent category` { #recipe-parse-error }
: Double check the syntax of your recipe config file. Make sure you're not using the config from the old [smoothie-py](https://github.com/couleur-tweak-tips/Smoothie) or [blur](https://github.com/f0e/blur).
@@ -40,11 +41,14 @@ Here are some common problems and their solutions:
#### `Python exception: Source: The index does not match the source file` { #source-index-mismatch }
-: Ensure your video path doesn't have any non-english, special characters. The name of your file might be the problem, try renaming it. If it persists please [make a support post on our Discord](https://discord.gg/CTT) or [contact me](../../contact.md#couleur)
+: Ensure your video path doesn't have any non-english, special characters. The name of your file might be the problem, try renaming it.
#### `Warning: Failed to load [...]\smoothie-rs\bin\vapoursynth64\plugins\librife.dll. GetLastError() returned 126. The file you tried to load or one of its dependencies is probably missing.`
: You're running this in a VM or do not have vulkan libraries installed.
+### The error is persisting or not listed here
-shout out z1xus and [gemstorm](https://github.com/gem-storm/smrs-guide) for the base of most o this page
\ No newline at end of file
+: Please [make a support post on our Discord](https://discord.gg/CTT) or [contact me](../../contact.md#couleur)
+
+Shout out [z1xus and gem-storm](https://github.com/gem-storm/smrs-guide) for the base of most of this page!
\ No newline at end of file
diff --git a/docs/video/smoothie/usecases.md b/docs/video/smoothie/usecases.md
index a5ac044..9627a2e 100644
--- a/docs/video/smoothie/usecases.md
+++ b/docs/video/smoothie/usecases.md
@@ -4,29 +4,27 @@ icon: material/file-eye
# Use case examples
-Smoothie is a real swiss army knife when you know all of it's tricks, I'll list all the actual use cases I've seen Smoothie be a great alternative for
+Smoothie is a real swiss army knife when you know all of it's tricks, I'll list all the actual use cases I've seen Smoothie be a great alternative for.
## High-FPS VEGAS Pro editing
(This could be applied to Premiere Pro as well, though it has much faster pre-render/proxy capabilities, but objectively worse looking frame blending)
-Let's say I record in 480FPS and like to frameblend & export at 60FPS:
+Let's say I record in 480FPS and like to frame blend & export at 60FPS:
-Instead of doing:
+Instead of:
-* Record video-game footage in 480FPS with OBS
-* Import footage in VEGAS Pro
-* Edit the footage with preview lag running at 5~15 FPS tops
-* Export with smart resampling (slow)
-* Need to export again? Gotta also resample everything AGAIN
+* Importing footage in VEGAS Pro
+* Editing the footage with lots of preview lag running at 5~15 FPS tops
+* Exporting with smart resampling (slow)
+* Messed something up? Need to export again? Gotta also resample everything AGAIN
Consider:
-* Record video-game footage in 480FPS with OBS
-* Use Smoothie with frameblending on all clips (e.g 60fps out)
-* Import footage in VEGAS Pro
-* Edit the footage with way less preview lag
-* Export at the same framerate as your clips (no smart resampling thus fast)
+* Using Smoothie with frame blending on all clips
+* Importing footage in VEGAS Pro
+* Editing the footage with way less preview lag
+* Exporting at the same framerate as your clips (no smart resampling thus fast)
The only downside is that if you use something like velocity / slow downs it'll look choppy, but nothing prevents you from replacing that particular part with the original 480FPS clip
@@ -34,42 +32,40 @@ The only downside is that if you use something like velocity / slow downs it'll
e.g in the context of gpu-intensive tasks like recording [Apex Legends gameplay](https://youtu.be/tItOJFwILOc)
-Instead of doing:
+Let's say we recorded in 180fps:
-* Record video-game footage in 180FPS with OBS
-* Interpolate each video file sequentially with [Flowframes](https://nmkd.itch.io/flowframes) and exporting in PNG sequence
-* Account for the temp storage it's gonna take from extracting video files into raw frames and the output folder
-* Open VEGAS and import as PNG sequence
-* Export with frame resampling
+Instead of:
+
+* Interpolating each video file sequentially with [Flowframes](https://nmkd.itch.io/flowframes) and exporting in PNG sequence
+* Accounting for the temp storage it's gonna take from extracting video files into raw frames
+* Opening VEGAS and import as PNG sequence
+* Exporting with smart resampling
Consider:
-* Record video-game footage in 180FPS with OBS
-* Queue all videos to Smoothie configured to [pre-interpolate (RIFE)](./recipe.md#pre-interp) and [frameblend](./recipe.md#frame-blending)
-* ..thats it.
+* Queue all videos to Smoothie configured to [pre-interpolate (RIFE)](./recipe.md#pre-interp) and [frame blend](./recipe.md#frame-blending)
+* ...thats it.
-enjoy ur smooth frags [:)](https://youtu.be/3cbfKyQktRY)
+Enjoy ur smooth frags [:)](https://youtu.be/3cbfKyQktRY)
## Doing render tests
For my fellow [`#video-dicussion`](https://discord.gg/CTT) frogs :)
-Instead of doing:
+Instead of:
-* Record video-game footage in 480FPS with OBS
-* Import footage in VEGAS Pro
-* Add your color grading settings & LUT file
-* Export with MAGIX at 240M bitrate
-* Move output video file to your upscale folder
-* Rename it to input.mp4
-* Sort out the previous video files you had left in the upscale folder
-* Run upscale.bat
-* Upload to YouTube
+* Importing footage in VEGAS Pro
+* Adding your color grading settings & LUT file
+* Exporting with MAGIX at 240M bitrate
+* Moving output video file to your upscale folder
+* Renaming it to input.mp4
+* Sorting out the previous video files you had left in the upscale folder
+* Running upscale.bat
+* Uploading to YouTube
Consider:
-* Record video-game footage in 480FPS with OBS
* Configure Smoothie like so:
* Add your favorite [LUT](./recipe.md#lut) / configure the [color grading](./recipe.md#color-grading)
* Turn on [frame blending](./recipe.md#frame-blending)
From 97f949fda3977438cb3e5a15b60404902c2fbedb Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:25:56 +0100
Subject: [PATCH 02/22] upscaling: add resolution aliases
---
docs/video/ffmpeg/upscaling.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/video/ffmpeg/upscaling.md b/docs/video/ffmpeg/upscaling.md
index bdc5221..a91a043 100644
--- a/docs/video/ffmpeg/upscaling.md
+++ b/docs/video/ffmpeg/upscaling.md
@@ -6,7 +6,7 @@ icon: fontawesome/solid/arrow-up-right-dots
# Why bother upscaling for YouTube?
-Scaling your video to a larger resolution (e.g `1080p` :material-arrow-right: `3840x2160` / 4K) tricks YouTube into giving your video more bitrate.
+Scaling your video to a larger resolution (e.g `1920x1080`/`1080p` :material-arrow-right: `3840x2160`/4K) tricks YouTube into giving your video more bitrate.
==This is only useful for YouTube, because it won't make your video look any better than when you're viewing it back in a media player, it'll just looks less compressed/more faithful on YouTube==.
@@ -59,4 +59,4 @@ VEGAS Pro (and probably any other NLE) uses the bicubic scaling filter which mak
## :custom-voukoder: **Why not use Voukoder's zscale?** {#why-not-voukoder}
-You ideally **should** use it over the batchscript you can install in this guide, since it will export your project and upscale it all at once, which should take > less time and lose less efficiency, more info on Discord @ <#1022956596768288919>
\ No newline at end of file
+You ideally **should** use it over the batchscript you can install in this guide, since it will export your project and upscale it all at once, which should take > less time and lose less efficiency, more info on Discord @ <#1022956596768288919>
From 595f027795aa46cd30809a7d7ee8a9339f916839 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:27:02 +0100
Subject: [PATCH 03/22] upscaling: revert white color youtube embed
---
docs/video/ffmpeg/upscaling.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/video/ffmpeg/upscaling.md b/docs/video/ffmpeg/upscaling.md
index a91a043..4fc0593 100644
--- a/docs/video/ffmpeg/upscaling.md
+++ b/docs/video/ffmpeg/upscaling.md
@@ -45,12 +45,12 @@ Scaling your video to a larger resolution (e.g `1920x1080`/`1080p` :material-arr
Here are two videos, one was left as is, the other one stretched to 4K, watch it in fullscreen with the Settings -> Quality option maxed out.
=== "1080p"
-
+
=== "1080p stretched to 4K"
-
+
## **Why not just set the project scale to 4K before rendering?** {#why-not-nle}
From 1eba58a1a2052b40c29376dc257804310d5e55de Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:34:05 +0100
Subject: [PATCH 04/22] upscaling: revert nle bicubic claim
---
docs/video/ffmpeg/upscaling.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/video/ffmpeg/upscaling.md b/docs/video/ffmpeg/upscaling.md
index 4fc0593..7b7c53e 100644
--- a/docs/video/ffmpeg/upscaling.md
+++ b/docs/video/ffmpeg/upscaling.md
@@ -55,7 +55,7 @@ Here are two videos, one was left as is, the other one stretched to 4K, watch it
## **Why not just set the project scale to 4K before rendering?** {#why-not-nle}
-VEGAS Pro (and probably any other NLE) uses the bicubic scaling filter which makes your video a bit blurry, using FFmpeg lets you make sure you're using the right filter
+VEGAS Pro (and probably other NLEs) uses the bicubic scaling filter which makes your video a bit blurry, using FFmpeg lets you make sure you're using the right filter
## :custom-voukoder: **Why not use Voukoder's zscale?** {#why-not-voukoder}
From fcfad1616fbed74e8b1ec64485762456abbaa275 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:35:57 +0100
Subject: [PATCH 05/22] docks: add back normal quotes
---
docs/video/obs/docks.md | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/docs/video/obs/docks.md b/docs/video/obs/docks.md
index b0ea530..623ec2e 100644
--- a/docs/video/obs/docks.md
+++ b/docs/video/obs/docks.md
@@ -29,13 +29,10 @@ Displays useful statistics regarding your recording and/or streaming status, mos
## :material-projector-screen-outline: Scenes
-Scenes are collections of user-defined sources, to give you an idea they’re typically used by streamers who switch from game source w/ facecam, full-screen facecam, and starting stream soon / brb text.
-
+Scenes are collections of user-defined sources, to give you an idea they’re typically used by streamers who switch from game source w/ facecam, full-screen facecam, and "starting stream soon" / "brb" text.
If you only make use of a single source at a time (e.g recording games) you could remove the Scenes Selector and Scene Transitions for some UI headroom.
## Managing Docks
-Simply select Docks or View -> Select/unselect which you want enabled.
\ No newline at end of file
+Simply select Docks or View -> Select/unselect which you want enabled.
From aa39ce4d590d0fd74e337ac2d7ad010f450ea5ee Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:37:12 +0100
Subject: [PATCH 06/22] hotkeys: remove comments & add back suggested hotkeys
---
docs/video/obs/hotkeys.md | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/docs/video/obs/hotkeys.md b/docs/video/obs/hotkeys.md
index 20ecf4d..0396384 100644
--- a/docs/video/obs/hotkeys.md
+++ b/docs/video/obs/hotkeys.md
@@ -10,17 +10,13 @@ If you put the same keybind on a start X and stop X / enable X and disable X it
: This helps with performance, I like to disable it after starting recording.
-
-
-* `Reset Stats`
+* `Reset Stats`: CTRL+SHIFT
: Very underrated, when alt-tabbing there's always a few frames that drop, I like to reset it so I can check if it's above 0, instead of trying to remember how much there was before.
## Replay Buffer
-* `Save Replay`
+* `Save Replay`: None by default
-: If you want to save clips with the [Replay Buffer](./output.md) without having to alt tab and click on the little :material-download: button next to Stop Replay Buffer
\ No newline at end of file
+: If you want to save clips with the [Replay Buffer](./output.md) without having to alt tab and click on the little :material-download: button next to Stop Replay Buffer
From 21736323af34edb4c871bf731eb2ba2fd8757e11 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:38:17 +0100
Subject: [PATCH 07/22] obs/index: add back obs cli kb
---
docs/video/obs/index.md | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/docs/video/obs/index.md b/docs/video/obs/index.md
index efd2fb3..ed626a0 100644
--- a/docs/video/obs/index.md
+++ b/docs/video/obs/index.md
@@ -21,12 +21,8 @@ You should install the latest version of OBS from the [official downloads page](
See OBS' knowledgebase: https://obsproject.com/kb
-
-
## :material-cog: Initial configuration
??? tip "Video Walkthrough"
@@ -58,4 +54,4 @@ Replay buffer is a feature in OBS that allows users to save only the last specif
It's very useful for testing encoder settings (with lots of movement in the test) without making lots of useless video files, as well as easily clipping moments in gameplay or whatever else.
-You can configure it in the **Replay Buffer** tab in **Output**, and you can set hotkeys for it in **Hotkeys** after it has been enabled.
\ No newline at end of file
+You can configure it in the **Replay Buffer** tab in **Output**, and you can set hotkeys for it in **Hotkeys** after it has been enabled.
From a06a71add9da329644aa6f37a8e3a45592f996b9 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:39:55 +0100
Subject: [PATCH 08/22] obs/output: add more verbose replay buffer explanation
---
docs/video/obs/output.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/video/obs/output.md b/docs/video/obs/output.md
index 66fdea1..a7bdacc 100644
--- a/docs/video/obs/output.md
+++ b/docs/video/obs/output.md
@@ -179,7 +179,7 @@ It's recommended to use the [latest version of OBS](https://github.com/obsprojec
##### Description
- Similar to [NVIDIA ShadowPlay](https://www.nvidia.com/en-us/geforce/geforce-experience/shadowplay/), this captures the last X seconds in RAM, and at any point you can press a hotkey to save it as a video file.
+ Similar to [NVIDIA ShadowPlay](https://www.nvidia.com/en-us/geforce/geforce-experience/shadowplay/), this captures using your recording settings and keeps in RAM only the last X seconds of what was captured and at any point you can press a hotkey to save it as a video file.
It's an alternative to scrub through hour long recordings / stream VODs looking for important parts, each save will be separated per video file.
@@ -199,4 +199,4 @@ It's recommended to use the [latest version of OBS](https://github.com/obsprojec
### H.264 (AVC), H.265 (HEVC) or AV1?
-See the [codec guide](../codecguide.md#hwenc)
\ No newline at end of file
+See the [codec guide](../codecguide.md#hwenc)
From 8395315eade01cb59a54874e9f065ec9cfff1c8b Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:43:17 +0100
Subject: [PATCH 09/22] obs/video: scaling recording exaplanation refactor
---
docs/video/obs/video.md | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/docs/video/obs/video.md b/docs/video/obs/video.md
index f04305c..ff9eeb5 100644
--- a/docs/video/obs/video.md
+++ b/docs/video/obs/video.md
@@ -10,14 +10,10 @@ The output takes the base canvas and scales it to whatever you set it to.
### When using a different resolution is worth using
-If you're limited on bandwidth / encoding efficiency you might consider scaling down, or the opposite on YouTube for extra bitrate (same principle as (up)scaling)
+* For Streaming: If you're limited on bandwidth / encoding efficiency you might consider scaling down, or the opposite on YouTube for extra bitrate (same principle as upscaling)
-For recording it's not recommended to scale at all.
-
-
+* For Recording: If you know you're gonna scale to a different resolution in post editing you can do it directly while recording, though this means it's scaling on the fly, may or may not help with performance.
# Frame rate
-All of us use Fractional FPS Value, and use `the fps we want` / `1`
\ No newline at end of file
+All of us use Fractional FPS Value, and use `the fps we want` / `1`
From cd6724eac14a01a7245acfbe9072adac30e86d84 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:44:02 +0100
Subject: [PATCH 10/22] sm/cli: add back value category
---
docs/video/smoothie/cli.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/video/smoothie/cli.md b/docs/video/smoothie/cli.md
index 217f489..e28024c 100644
--- a/docs/video/smoothie/cli.md
+++ b/docs/video/smoothie/cli.md
@@ -23,7 +23,7 @@ I'll keep the term 'bool' here because noobs aren't gonna be using CLI lets be r
`--outdir`: folder path
-: Specify output directory for all queued files, overrides [`global output folder:`](./recipe.md#miscellaneous).
+: Specify output directory for all queued files, overrides [`[miscellaneous] global output folder:`](./recipe.md#miscellaneous).
`--peek`: int
@@ -80,4 +80,4 @@ I'll keep the term 'bool' here because noobs aren't gonna be using CLI lets be r
`--override`: string
-: Override any recipe settings, e.g. `--override "flowblur;amount;40"`, can be used multiple times.
\ No newline at end of file
+: Override any recipe settings, e.g. `--override "flowblur;amount;40"`, can be used multiple times.
From 4e38692e8a0818b154266ad58ac3b3c9d5bdeecf Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:46:23 +0100
Subject: [PATCH 11/22] sm/cli: revert capitalization
---
docs/video/smoothie/cli.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/docs/video/smoothie/cli.md b/docs/video/smoothie/cli.md
index e28024c..bec4f20 100644
--- a/docs/video/smoothie/cli.md
+++ b/docs/video/smoothie/cli.md
@@ -27,7 +27,7 @@ I'll keep the term 'bool' here because noobs aren't gonna be using CLI lets be r
`--peek`: int
-: Render out a single frame as an image file, useful when peeking to see what a frame will look like with a very slow recipe. This is passed to both `--start` and `--end` to VSPipe and does not mess up any temporal filters afaik.
+: Render out frame number specified as an image file, useful when peeking to see what a frame will look like with a very slow recipe. This is passed to both `--start` and `--end` to VSPipe and does not mess up any temporal filters afaik.
`--vpy`: file path
@@ -50,12 +50,12 @@ I'll keep the term 'bool' here because noobs aren't gonna be using CLI lets be r
`--json`: string
-: Trimming timecodes payload for [Suckless-Cut](https://github.com/couleur-tweak-tips/suckless-cut), not fully ported from Smoothie-PY yet.
+: Trimming timecodes payload for [suckless-cut](https://github.com/couleur-tweak-tips/suckless-cut), not fully ported from smoothie-py yet.
`--trim`, `--padding`: bool
-: Trimming behavior, not fully ported from Smoothie-PY yet.
+: Trimming behavior, not fully ported from smoothie-py yet.
`--rerun / -!!`: bool
From d4bf11227de21799ce68610f0d3a4d694ae22eb2 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:47:50 +0100
Subject: [PATCH 12/22] sm/frameserver: Blur -> blur
---
docs/video/smoothie/frameserver.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/docs/video/smoothie/frameserver.md b/docs/video/smoothie/frameserver.md
index 91abe2b..537d1d1 100644
--- a/docs/video/smoothie/frameserver.md
+++ b/docs/video/smoothie/frameserver.md
@@ -12,7 +12,7 @@ icon: material/server-network
also I forgot if I shipped Smoothie with AviSource, place [this DLL](https://github.com/vapoursynth/vs-avisource-obsolete/releases/tag/R1) in /bin/vapoursynth64/plugins/
-DebugMode FrameServer lets your video editor export projects as a virtual uncompressed AVI file which Blur and Smoothie can use as input, effectively exporting indirectly to it.
+DebugMode FrameServer lets your video editor export projects as a virtual uncompressed AVI file which blur and Smoothie can use as input, effectively exporting indirectly to it.
It supports most VEGAS versions and Premiere Pro.
@@ -90,7 +90,7 @@ cmd /k
You'll need to go in Smoothie's `/bin/` folder and shift-right click `smoothie-rs.exe` -> Copy as path and paste it in
-For Blur you should be able to find `blur-cli.exe` (or if you got older versions just `blur.exe`) `C:\Program files (x86)\blur`
+For blur you should be able to find `blur-cli.exe` (or if you got older versions just `blur.exe`) `C:\Program files (x86)\blur`
You'll need to add the following arguments after:
@@ -112,4 +112,4 @@ cmd /k "D:\smrs\bin\smoothie-rs.exe" -i "%~1"
```
```
"C:\Program Files (x86)\blur\blur-cli.exe" -i "%~1"
-```
\ No newline at end of file
+```
From af5d159b92c9c4999803beffb2a0f39504da6055 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 15:58:43 +0100
Subject: [PATCH 13/22] sm/installation: mention executable name
---
docs/video/smoothie/installation.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/video/smoothie/installation.md b/docs/video/smoothie/installation.md
index fa862e6..ba9409e 100644
--- a/docs/video/smoothie/installation.md
+++ b/docs/video/smoothie/installation.md
@@ -55,7 +55,7 @@ icon: material/folder-download
In `%APPDATA%\Microsoft\Windows\SendTo` make a shortcut to with add a space and ` --tui -i`
- If Smoothie is crashing on you, add the `-v` argument (that'd be ` -v --tui -i`) after the executable's path to enable verbose logging to see what's wrong
+ If Smoothie is crashing on you, add the `-v` argument (that'd be ` -v --tui -i`) after the smoothie-rs executable's path to enable verbose logging to see what's wrong
Video tutorial:
From f7d872fd3ba572e155b86d77e995ad767af13740 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 16:45:51 +0100
Subject: [PATCH 14/22] sm/recipe: refactor
---
docs/video/smoothie/recipe.md | 100 +++++++++-------------------------
1 file changed, 27 insertions(+), 73 deletions(-)
diff --git a/docs/video/smoothie/recipe.md b/docs/video/smoothie/recipe.md
index 2115b9f..b212f95 100644
--- a/docs/video/smoothie/recipe.md
+++ b/docs/video/smoothie/recipe.md
@@ -7,16 +7,12 @@ icon: simple/googlesearchconsole
The recipe (config file) is the hardest part of Smoothie's learning curve, reading this and messing around with short clips is the best way to familiarize yourself with it.
-
-
If there are features you're not interested in using, feel free to remove them from the file, it won't break a thing and act like you disabled it(1)
{ .annotate }
-1. Smoothie loads `defaults.ini`, which is just like the user's `recipe.ini` but with everything disabled / max compatibility, then it overrides those value with the existing ones in `recipe.ini`. Feel free to edit `defaults.ini` so you can hide options / categories you never change in `recipe.ini`!
+1. Smoothie loads `defaults.ini`, which is just like the user's `recipe.ini` but with everything disabled / max compatibility, then it overrides those value with the existing ones in `recipe.ini`.
@@ -30,17 +26,14 @@ Here's what each file is for:
: Backup of all existing settings, it's loaded first then overwritten by `recipe.ini`, so you can remove unused features.
-
* [`encoding_presets.ini`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/encoding_presets.ini)
-: Presets for [encoding](#output) in the config file. This is not hardcoded, so you can change and make presets.
+: Preset config file for the [output enc args](#output) recipe setting.
+
+ The value on the left of the equal sign is what you type in the recipe, and the value on the right is what it'll expand to when fed to FFmpeg's arguments.
-
+ None of them are hardcoded, so you can edit them or even create your very own FFmpeg output CLI presets.
* [`jamba.vpy`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/jamba.vpy)
@@ -50,13 +43,8 @@ This is a personal choice, but I think 'overwritten' looks and sounds better tha
## :material-blur-linear: frame blending { #frame-blending }
-`[frame blending]` is just like blur's `- blur` config category, VEGAS' smart resampling, and FFmpeg's `tmix` filter - but much faster. It combines frames with neighboring ones to decrease the frame rate but preserve smoothness. It's recommended to blend to 60FPS or less, because the majority of websites and monitors cap at 60.
+`[frame blending]` is just like blur's `- blur` config category, VEGAS' smart resampling, and FFmpeg's `tmix` filter - but much faster. It averages every frame with it's neighboring frames, that makes motion trails and if done correctly looks like realistic motion-blur.
-
On the left is a 240FPS video, and on the right a 60FPS video with frame blending, this is not a pretty example but that shows you how the frames actually end up squished in a lower FPS
@@ -70,7 +58,7 @@ On the left is a 240FPS video, and on the right a 60FPS video with frame blendin
Raising the `blur intensity` to 2.5 or even higher depending on your taste
- And then doing frame blending / smart resampling in the editor
+ And then doing frame blending / smart resampling again in the editor
`enabled`: yes
@@ -78,33 +66,21 @@ On the left is a 240FPS video, and on the right a 60FPS video with frame blendin
`fps`: 60
-: Output framerate.
-
-
+: Output framerate, this and `intensity` affects the number of neighboring frames (weights) to average, after blending the video is capped to such fps value.
`intensity`: 1.0
-: How intense the frame blending is, this is identical to blur's `blur amount`.
-
-
+: How intense the frame blending looks, this is identical to blur's `blur amount`.
`weighting`: equal
: 'Weights' are each blended frame, this option changes the opacity of each weight, you can make them manually `[1.0, 1.0, 1.0, 1.0, 1.0]` or choose from [the available presets](https://github.com/couleur-tweak-tips/smoothie-rs/blob/main/target/scripts/weighting.py):
* `equal`
- * `vegas`: Matches VEGAS Pro smart resampling's weights (use 1.0 intensity for most accurate results)
+ * `vegas`: Matches VEGAS Pro smart resampling's weights closest (when used with 1.0 intensity)
* `gaussian`: Ascending gaussian curve
* `gaussian_sym`: Symmetrical gaussian curve
- * `ascending`
+ * `ascending`: my personal favorite, i like to pair it with a higher intensity
* `descending`
* `pyramid`: Opacity peaks at the middle
* `custom`: (VERY NERDY) any Python expression (with [restricted namespace](https://github.com/couleur-tweak-tips/smoothie-rs/blob/f04526681aecf6564d5b83f5a7c8d35edeb8bf2f/target/scripts/weighting.py#L116-L144)), e.g. `custom; func = x**2`
@@ -114,24 +90,18 @@ this is (imo) too much info for how intensity works, moving this down to weighti
Comparison of how `equal` and `ascending` look:
-
-
-
-
`bright blend`: no
-: Makes the blending look similar to Premiere Pro's frame blending (in a good way), It's comparable to blending two images with additive mode.
+: Makes the blending look similar to Premiere Pro's frame blending (in a good way), It's comparable to blending two images with additive mode, slower than non-bright, it's achieved bby temporarily converting the clip to RGB48 color space during blending, s/o Zaphyr
## :material-select-multiple: interpolation { #interpolation }
* Motion-estimation tricks to create frames between existing ones, almost like magically increasing the framerate, this creates imperfect frames which inevitably have what we call artifacts, e.g smearing on static (HUD / overlay) parts and fast movement can look cursed with a low-fps input. "interpolation" in Smoothie is done with old non-DRM'd builds of [SVPFlow](https://github.com/couleurm/VSBundler/blob/main/smCi.ps1#L29). Also see their [wiki](https://www.svp-team.com/wiki/Manual:SVPflow).
-It's recommended to record in **at least 120FPS** if you're going to interpolate with SVPFlow, as lower frame rates like 60FPS [often look worse than the raw clip](https://www.youtube.com/watch?v=QihBOhLzQj8).
+It's recommended to record in the highest fps possible, (**at least 120FPS** for ok results). If you're going to interpolate only with SVPFlow, lower frame rates like 60FPS [often look worse than the raw clip](https://www.youtube.com/watch?v=QihBOhLzQj8).
@@ -218,11 +188,7 @@ Most easily comparable to Reel Smart Motion blur (RSMB), it often creates even m
## :material-play-box-outline: output { #output }
-
+If you want to see how much the encoding process slows down rendering speed, try out [`--tonull`](./cli.md)
`process`: ffmpeg
@@ -234,19 +200,16 @@ I don't think you need to mentions this. Most users will never use it and it's m
If you didn't understand what any of this means, I'd recommend giving [Which codec should I use?](../codecguide.md) a read.
-
`container`: MP4
: Video container format, defaults to MP4.
- To contain the UTVideo codec you'll need to switch to AVI or MKV.
+ To contain the UTVideo codec you'll need to switch to .AVI or .MKV
- You can use MKV to read what's already been rendered before it finishes rendering.
+ You can use .MKV to read what's already been rendered before it finishes rendering.
`file format`: %FILENAME% ~ %FRUIT% %OUTPUT_FPS%
@@ -254,7 +217,7 @@ You already mentioned encoding_presets.ini, this can go unmentioned.
* %FILENAME% is the output file base name (without the extension)
- * %FRUIT% will expand to a random fruit from [this list](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/video.rs#L92-L100) 😋
+ * %FRUIT% will expand to a random fruit from [this list](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/video.rs#L92-L101) 😋
* Other values of the recipe can be used, see how it's implemented [here](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/src/video.rs#L140)
@@ -305,11 +268,11 @@ They're resolution specific, Smoothie will crash if you pair 1280x720 videos wit
`play ding`: no
-: Supposed to play `C:\Windows\Media\ding.wav` with ffplay once Smoothie is done rendering, not yet implemented.
+: Supposed to play `C:\Windows\Media\ding.wav` with ffplay once Smoothie is done rendering, not yet implemented from smoothie-py.
`always verbose`: no
-: Equivalent to if you always passed `--verbose` to the arguments (recipe parsing stuff won't be logged since it hasn't reached the point to where it parses the recipe to enable verbosity).
+: Equivalent to if you always passed `--verbose` to the arguments (though prefer actually using the argument as it activates verbose logging earlier, logs even more data).
`dedup threshold`: 0.0
@@ -325,7 +288,7 @@ They're resolution specific, Smoothie will crash if you pair 1280x720 videos wit
`ffmpeg options`: -loglevel error -i - -hide_banner -stats -stats_period 0.15
-: Arguments first passed to ffmpeg .
+: Arguments first passed to ffmpeg.
`ffplay options`: -loglevel quiet -i - -autoexit -window_title smoothie.preview
@@ -374,13 +337,6 @@ Windows Terminal does not behave well with this.
: Very self-explanatory, controls the color settings of the output video.
-`coring`: no
-
-: Enables coring on the output video.
-
-
## :material-invert-colors: LUT { #LUT }
[Look up table](https://en.wikipedia.org/wiki/Lookup_table#Lookup_tables_in_image_processing) filter, they're kinda like color filters to make colors exactly accurate to a standard, but we nerds mostly use it for cool color grades :)
@@ -423,7 +379,7 @@ NCNN is used instead of RIFE for the much smaller dependencies (CUDA is like 5GB
`factor`: 3x
-: How much you wish to multiply the input FPS by and interpolate to that.
+: How much you wish to multiply the input FPS by and interpolate to that, e.g. if the video's input fps is 60 and the factor is 3: 60 x 3 = it'll interpolate 180fps
`model`: rife-v4.4
@@ -437,19 +393,17 @@ NCNN is used instead of RIFE for the much smaller dependencies (CUDA is like 5GB
https://github.com/hzwer/Practical-RIFE#model-list
- Then extract them, Right click -> `Copy as path` on the desired model, and paste it here.
-
RIFE Models don't come included with Smoothie because:
* Licensing
* Size, not everyone uses them
- * They're not that hard to download, unzip a
+ * They're not that hard to set up, really
## Using multiple recipe files
1. Make a copy of `recipe.ini` and name it something else
2. Make a copy of the shortcut you use Smoothie with
-3. Add `--recipe name.ini` to the arguments (for [Send To shortcuts](./installation.md#making-a-send-to-shortcut-and-rife-models) make sure it's before `-i`, that one must be the last).
\ No newline at end of file
+3. Add `--recipe name.ini` to the arguments (for [Send To shortcuts](./installation.md#making-a-send-to-shortcut-and-rife-models) make sure it's before `-i`, that one must be the last).
From f4aaf9c4014f0da273d9757afa39fca0ad2777aa Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 16:53:39 +0100
Subject: [PATCH 15/22] sm/smvsblur: revert opionionated capitalization,
wording
---
docs/video/smoothie/smoothievsblur.md | 39 +++++++++++----------------
1 file changed, 16 insertions(+), 23 deletions(-)
diff --git a/docs/video/smoothie/smoothievsblur.md b/docs/video/smoothie/smoothievsblur.md
index b2d13d0..fc4e504 100644
--- a/docs/video/smoothie/smoothievsblur.md
+++ b/docs/video/smoothie/smoothievsblur.md
@@ -5,20 +5,17 @@ icon: custom/blur
## Which is better/should I use?
-Blur and Smoothie are very similar under the hood, both use VapourSynth with very similar plugins, this page lists all the differences you'll encounter so you can make up your mind.
+blur and Smoothie are very similar under the hood, both use VapourSynth with very similar plugins, this page lists all the differences you'll encounter so you can make up your mind.
!!! warning "This page is intended for existing blur users"
- This explains the design choices I've taken while inspiring myself from Blur during Smoothie's development, if you've never got familiar with it before there's little use in reading the rest of this page (except if you're trying to make a recipe look identical to a blur config)
+ This explains the design choices I've taken while inspiring myself from blur during Smoothie's development, if you've never got familiar with it before there's little use in reading the rest of this page (except if you're trying to make a recipe look identical to a blur config)
## Smoothie pros
* Smoothie [recipe values are optional](./recipe.md#smoothie-recipe)
-
+* Smoothie has a much smoother [preview window](./recipe.md#preview-window) using ffplay.
* Smoothie has [artifact masking](./recipe.md#artifact-masking)
@@ -28,7 +25,7 @@ doesn't matter much, ur kinda glazing ngl-->
* A plethora of [CLI arguments](./cli.md)
-## Blur pros
+## blur pros
* Percentage progress and a drag-and drop queue system, I prefered making a file picker for Smoothie
@@ -36,41 +33,37 @@ doesn't matter much, ur kinda glazing ngl-->
## Terms used
-* Blur's config has a category named `- blur` which I consider to be redundant, it's been renamed to a more comprehensive `[frame blending]`
+* blur's config has a category named `- blur` which I consider to be redundant, it's been renamed to a more comprehensive `[frame blending]`
* the `blur amount` value in previously mentioned category has also been renamed to `intensity`, I'm looking for a better term than that, [lmk 👁👁](../../contact.md#couleur)
-
+* ~~Smoothie has one global config, blur looks if there's a config in the same dir as the input files~~ in blur v1.92 tekno added a global config option if none were found in dir, I should copy that too 😋
## Internals
-[Blur](https://f0e.github.io/blur), [Smoothie](./index.md) & [Teres](https://github.com/animafps/teres) all make use of these two programs:
+[blur](https://f0e.github.io/blur), [Smoothie](./index.md) & [teres](https://github.com/animafps/teres) all make use of these two programs:
* VapourSynth is a video filtering library with a Python scripting front-end
* FFmpeg is used to package VSPipe's uncompressed Y4M stream into encoded videos
## Timeline
-* June 2020: Blur got created on GitHub
+* June 2020: blur got created on GitHub
-* January 2022: Blur was dormant since v1.8, I made a fork of blur named smoothie in Python
+* January 2022: blur was dormant since v1.8, I made a fork of blur named smoothie in Python
-* February 2022: another developer named Anima made Teres, a rewrite of Blur in Rust
+* February 2022: another developer named Anima made teres, a rewrite of blur in Rust
-* January 2023: Seeing Teres I made Smoothie-RS, deprecating the original Smoothie, now called Smoothie-PY
+* January 2023: Seeing teres I made smoothie-rs, deprecating the original Smoothie, now called smoothie-py
-Today Blur's new beta makes it's internals more similar to Smoothie than Teres.
+Today blur's new beta makes it's internals more similar to Smoothie than teres was to blur.
-Teres' main advantage is that it's available in the [Arch user repository](https://repology.org/project/teres/versions).
\ No newline at end of file
+teres' main advantage is that it's available in the [Arch user repository](https://repology.org/project/teres/versions).
From 8c08764780c0086f3d7ce96b6f886ee6193be7c4 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 16:55:30 +0100
Subject: [PATCH 16/22] sm/troubleshooting: add padding to s/o
---
docs/video/smoothie/troubleshooting.md | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/docs/video/smoothie/troubleshooting.md b/docs/video/smoothie/troubleshooting.md
index f90acac..5c96249 100644
--- a/docs/video/smoothie/troubleshooting.md
+++ b/docs/video/smoothie/troubleshooting.md
@@ -51,4 +51,6 @@ Here's a handful of common errors and how to solve them:
: Please [make a support post on our Discord](https://discord.gg/CTT) or [contact me](../../contact.md#couleur)
-Shout out [z1xus and gem-storm](https://github.com/gem-storm/smrs-guide) for the base of most of this page!
\ No newline at end of file
+
+
+Shout out [z1xus and gem-storm](https://github.com/gem-storm/smrs-guide) for the base of most of this page
From 31d2dc675107f1f72b684bc5eaad2ab3e9d28335 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 17:02:05 +0100
Subject: [PATCH 17/22] software/scoop: remove comment
---
docs/software/scoop.md | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/docs/software/scoop.md b/docs/software/scoop.md
index 93460a9..d1e4fc6 100644
--- a/docs/software/scoop.md
+++ b/docs/software/scoop.md
@@ -7,10 +7,6 @@ A command-line program installer for Windows
* All apps are contained in `%USERPROFILE%\Scoop`{ data-clipboard-text="%USERPROFILE%\Scoop" } folder (per default, I recommend [installing on a non-windows drive](https://github.com/ScoopInstaller/Install#advanced-installation))
* All software you install is in a portable factor (except the ones that end in -np, **n**on **p**ortable)
-
-
Installing it is as easy as pasting this in PowerShell:
```PowerShell
irm get.scoop.sh | iex
@@ -53,4 +49,4 @@ The following apps auto-update and mess with Scoop's update system:
* Heroic Games Launcher
* Telegram (not chromium but it also has auto updates)
-You can use `scoop hold `{ data-clipboard-text="scoop hold " } to *"hold an app to disable updates"*
\ No newline at end of file
+You can use `scoop hold `{ data-clipboard-text="scoop hold " } to *"hold an app to disable updates"*
From 6215f075ef149aaaa5c5e825f2149525e4c55a81 Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 17:04:00 +0100
Subject: [PATCH 18/22] obs/advanced: remove comment
---
docs/video/obs/advanced.md | 6 ------
1 file changed, 6 deletions(-)
diff --git a/docs/video/obs/advanced.md b/docs/video/obs/advanced.md
index aa80f55..54ec256 100644
--- a/docs/video/obs/advanced.md
+++ b/docs/video/obs/advanced.md
@@ -15,9 +15,3 @@ icon: obs/advanced
* `Color Range`: Limited
: Full tends to look a bit more saturated when converted around, which some people like.
-
-
\ No newline at end of file
From 273037b6a981c55b3f84759360ffc85f4649f46d Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 17:08:41 +0100
Subject: [PATCH 19/22] obs/hotkeys: revert some more
---
docs/video/obs/hotkeys.md | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/docs/video/obs/hotkeys.md b/docs/video/obs/hotkeys.md
index 0396384..615c983 100644
--- a/docs/video/obs/hotkeys.md
+++ b/docs/video/obs/hotkeys.md
@@ -2,11 +2,12 @@
icon: obs/hotkeys
---
+!!! info "All the keybinds on this page are what I've set, OBS has no default keybinds"
If you put the same keybind on a start X and stop X / enable X and disable X it will work like a toggle.
-* `Enable Preview` & `Disable Preview`
+* `Enable Preview` & `Disable Preview`: CTRL+ENTER
: This helps with performance, I like to disable it after starting recording.
From 0ad2403958bc0872918962c374755e42f6d50b6e Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 17:09:37 +0100
Subject: [PATCH 20/22] obs/linux/nvfbc: remove comment
---
docs/video/obs/linux/nvfbc.md | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/docs/video/obs/linux/nvfbc.md b/docs/video/obs/linux/nvfbc.md
index ac0e450..00ef675 100644
--- a/docs/video/obs/linux/nvfbc.md
+++ b/docs/video/obs/linux/nvfbc.md
@@ -15,10 +15,6 @@ icon: simple/nvidia
For NVIDIA users, NvFBC is available with some driver patching. NvFBC is a feature like NVENC, except that it captures your screen directly from the framebuffer very efficiently.
-
-
Overall, this works very well for high FPS recording, and is on a par with Windows' default **Display Capture** source, if not better.
However, unfortunately, this has some issues:
@@ -51,4 +47,4 @@ However, unfortunately, this has some issues:
- [Patched OBS NvFBC plugin](https://aur.archlinux.org/packages/obs-nvfbc-high-fps-git)
- [Downgrade Pacman packages](https://aur.archlinux.org/packages/downgrade)
- [Patched `nvidia-utils`](https://aur.archlinux.org/packages/nvidia-utils-nvlax)
-- [OBS NvFBC plugin page](https://gitlab.com/fzwoch/obs-nvfbc/-/tree/master#obs-nvfbc)
\ No newline at end of file
+- [OBS NvFBC plugin page](https://gitlab.com/fzwoch/obs-nvfbc/-/tree/master#obs-nvfbc)
From a3896b3f3eaa3d319571f0be8d55819bcd2791cd Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 17:11:06 +0100
Subject: [PATCH 21/22] sm/cli: remove comment
---
docs/video/smoothie/cli.md | 3 ---
1 file changed, 3 deletions(-)
diff --git a/docs/video/smoothie/cli.md b/docs/video/smoothie/cli.md
index bec4f20..fc8bff5 100644
--- a/docs/video/smoothie/cli.md
+++ b/docs/video/smoothie/cli.md
@@ -16,9 +16,6 @@ icon: octicons/terminal-16
`-t/--tui`: bool
-
: Makes Smoothie behave like an app instead of a CLI tool (e.g pause before exiting on an error).
`--outdir`: folder path
From 91d1adfa79c8cec7c5def2c06c744c8d95873c7e Mon Sep 17 00:00:00 2001
From: Couleur <82747632+couleurm@users.noreply.github.com>
Date: Fri, 19 Jan 2024 17:12:33 +0100
Subject: [PATCH 22/22] sm/index: remove comment
---
docs/video/smoothie/index.md | 4 ----
1 file changed, 4 deletions(-)
diff --git a/docs/video/smoothie/index.md b/docs/video/smoothie/index.md
index fdd3ef6..4eae4d6 100644
--- a/docs/video/smoothie/index.md
+++ b/docs/video/smoothie/index.md
@@ -104,7 +104,3 @@ It does not have an interface as it is a [CLI tool](https://en.wikipedia.org/wik
1. You can feed your videos directly via [SendTo](../sendto.md) ![Send To folder](../../assets/images/video/smoothie/smoothiesendto.png){ width="450" }
2. Or select your videos in a file picker dialog by running [`Launch.cmd`](https://github.com/couleur-tweak-tips/smoothie-rs/blob/5bedf4ff231fd56832deacf4e32c5eb9f640c004/.github/workflows/shipper.ps1#L22) ![Launch.cmd preview](../../assets/images/video/smoothie/launch.png)
-
-
\ No newline at end of file