HappyOtterScripts Free Tools

wwaag wrote on 1/3/2020, 6:04 PM

Over the past few years, I've been writing scripts for both myself and other forum members. I've slowly been adding them to the Happy Otter Scripts website at https://tools4vegas.com/. Here is the direct link to the Free Tools library. https://tools4vegas.com/library/ At the moment, it's kind of a dog's breakfast of stand-alone apps, script extensions and text scripts that I have written. These tools are available for both Magix and Sony versions of Vegas.

Just Updated: Points At Markers and Quantize To Frames

Standalone Apps include:

  • Audio Sync and Remux - replaces audio stream and/or losslessly adjusts audio delay of rendered MP4 files
  • Date Folder Creator - creates date folders and then moves media files into them based on file recording date
  • Duplicate Frames Finder - searches for  duplicate adjacent frames for video events on the Vegas timeline
  • Elapsed Time Generator - adds elapsed time to rendered files with choice of font, size, style, color and location
  • GoPro File Mover - moves GoPro files to top directory when only a single camera is being used
  • GPS Thumbnail Creator - creates thumbnails  and when available adds extracted GPS from GoPro as metadata
  • Kill All Vegas - app to kill all Vegas instances that are still running or have crashed
  • Legacy Text Extractor - extracts Legacy Text titles directly from Veas project file
  • Magix BlackLister - renames videostream metadata title so that the copied media file can be "blacklisted"
  • MP4 Date Changer - Losslessly changes selected MP4 metadata including date of original recording
  • MP4 File Joiner - joins previously rendered MP4 files with choice of joining techniques
  • Render Quality Metrics - quantitative metrics based on comparison of  rendered frames to the original source
  • Render Quality Metrics FFmpeg - metrics based on  a comparison of rendered file to a reference file using FFmpeg
  • Small Image Import - imports small images onto larger frame for import into Vegas without zooming
  • Text Script Converter - batch conversion of text scripts from Sony to Magix or vice-versa

Script Extensions include:

  • Copy Track Volume Envelopes - script for copying track volume envelope and pasting to new track
  • Group Selected Events - creates  a group across tracks for selected events--E.g. regroup video and audio
  • Insert Freeze Frame - script for inserting freeze frames into a video event without use of velocity envelopes
  • Invert Regions - script for inverting or creating regions where no regions currently exist
  • Points At Markers - script that adds a point to the track volume envelope at the position all timeline markers
  • Quantize to Frames - quantizes event, fade, marker, region and render loop points to the nearest frame boundary
  • RemoveEmptyTracks - script for removing empty tracks from a project
  • Remove Events - script for removing timeline events and deleting or recycling associated media files
  • Remove Hidden Events - splits and removes events that are “hidden” or “covered” on lower tracks
  • ReSync Audio - re-syncs audio with video for selected events
  • SaveCloseKill - saves project, closes and then "kills" Vegas for use when Vegas doesn't shutdown properly
  • SaveRestore - saves cursor position when project closes and places cursor at same position when project re-opens
  • Serialize Events - simple script to add a serialized suffix to Active Take Name
  • Set Alpha - simple script for setting alpha property for selected events
  • Set Audio Crossfade - enables the user to set the crossfade length for selected audio events
  • Set Event Fx and Transitions - script to bypass, enable, or remove Fx and transitions for selected or all events
  • Set Event Length - simple script for setting the length of selected events
  • Show Fx - script to show all event, media, track, and output Fx for selected event
  • Trim Frames - simple script for trimming head and tail frames from an event with optional auto ripple
  • TrimToFit - trims the length of a selected event so that it does not overlap the next event
  • Vegas Render Quality - set of tools designed to measure the quality of Vegas renders including PSNR and SSIM

Text scripts include:

  • Move Cursor - a set of scripts designed to move the position of the cursor by a set time amount
  • Regions From Transitions - a script that adds a region for each transition on the selected track
  • Select Events - a set of scripts designed to select events based on cursor position or presence of markers
  • Slip Slide Events - a set of scripts designed to slip or slide events by a single frame

Comments, bug reports, and suggestions for new tools are always welcome. I'll update this thread when new tools are added.

Comments

john_dennis wrote on 1/3/2020, 6:46 PM

Wayne, even I'm no longer starting projects in 13-453 or earlier...

... (unless it's a one-off or at someone else's request). I haven't taken it out of the system image in case I have to go back to an old project that has a plug-in tied to an earlier version. I'm sure there are some.

wwaag wrote on 2/3/2020, 3:07 PM

Just added a new script RegionsFromTransition to the HO Free Tools library. The script creates a region for each transition on the selected track. Here is the direct link. https://tools4vegas.com/regions-from-transitions/ The thread leading to the creation of this script and some demos of its use can be found here. https://www.vegascreativesoftware.info/us/forum/pre-render-effx-only--118678/#ca740990

wwaag wrote on 2/8/2020, 8:56 PM

Just updated the Set Event Fx script to now include audio Fx and transitions. Here is a screen grab.

It can be downloaded here. https://tools4vegas.com/library/

wwaag wrote on 2/12/2020, 12:29 AM

The Insert Freeze Frame script now supports video with an alpha channel. The option to Auto Ripple now supports All Tracks and Markers.

It can be downloaded here. https://tools4vegas.com/library/

wwaag wrote on 2/24/2020, 3:43 PM

All script extensions in the HOS Free Tools library have now been recompiled for Sony versions of Vegas. Both the Magix and Sony versions are now included in the same download file as well as a tool icon.

wwaag wrote on 2/25/2020, 12:21 PM

Just added a new tool Set Audio Crossfade that enables the user to easily add crossfade to audio events. Here's a shot of the UI and a short demo.

 

wwaag wrote on 3/4/2020, 10:30 AM

Just added a new tool, Save and Restore, that enables the user to "save" the cursor position when a project is closed and then "restore" the cursor to that position when the project is re-opened. There is an option to select the amount of "zoom" in terms of how many seconds will be displayed on the timeline. Here's a shot of the UI and a short demo in an 11 hour project I had used for audio testing.

It can be downloaded here. https://tools4vegas.com/library/

 

wwaag wrote on 5/13/2020, 8:41 PM

Just added a new tool, Quantize To Frames, that enables the user to selectively quantize the positions of events, fades, markers, regions, and render loop in/out points to the nearest frame boundary. Such a tool can be useful if one inadvertently fails to restore the Quantize to Frames option (Alt-F8) or is using clips with different frame rates. I should add that the script is partially based on an early javascript written by Randall Campbell of Peach Rock Productions in the early days of Vegas. Here is a screen grab of the UI.

It can be downloaded here. https://tools4vegas.com/library/

wwaag wrote on 5/17/2020, 4:03 PM

Just added a new tool, Audio Sync and Remux, that enables the user to adjust the audio sync of previously rendered MP4 files. This enables an easy fix to files rendered with such apps as Handbrake and the Voukoder renderer inside of Vegas that produce files in which the audio stream is roughly 44 ms early. It also enables the user to simply replace the audio stream of the rendered file with the audio stream of a replacement file. Here is a screen grab of the UI.

Note that it does require the installation of FFmpeg. The only requirement is the executable "ffmpeg.exe" must be included in the user variable path of Environment Variables. For those having HOS installed, nothing more is required.

It can be downloaded here. https://tools4vegas.com/library/

wwaag wrote on 6/15/2020, 11:56 AM

Just added a new tool, Legacy Text Extractor which extracts Legacy (Text) titles directly from a Vegas project file. Used as a front end to the Vegasaur Text Generation Wizard, the user can easily convert from Legacy(Text) to the newer Titles and Text. Titles are copied to the clipboard (for use in Vegasaur) and also written to a text file.

Here is a screen grab of the UI.

A demo can be seen here. https://vimeo.com/429323147

The demo shows launch of the tool from the HappyOterScripts toolbar. However, HOS is not needed for use of the tool.

It can be downloaded here. https://tools4vegas.com/library/

JN- wrote on 6/15/2020, 12:44 PM

Hi @wwaag, some really great stuff. Is there any chance you could make a script or tool that would report the average fps playback in a project, either the full project or a loop region, ideally both.

This would be a great addition to the 4K benchmarking project and take some of the guesswork out of it.

No doubt it could be used in any project to give users an idea of playback efficiency in their own systems also. Thanks.

---------------------------------------------

Benchmarking thread

Codec Render Quality tables

---------------------------------------------

PC ... Corsair case, own build ...

CPU .. i9 9900K, iGpu UHD 630

Memory .. 32GB DDR4

Graphics card .. MSI RTX 2080 ti

Graphics driver .. latest studio

PSU .. Corsair 850i

Mboard .. Asus Z390 Code

 

Laptop ... (Acer Predator G9-793-77AC)

CPU .. i7-6700HQ Skylake-H

Memory ..32 GB DDR4, was previously 16 GB

Graphics card .. Nvidia GTX 1070

Graphics driver .. latest studio

wwaag wrote on 6/15/2020, 12:54 PM

@JN-

Unfortunately, the answer is no. Such information is not available to the scripting API. I know of no way to extract that information.

JN- wrote on 6/15/2020, 1:19 PM

@wwaag OK, fair enough.

---------------------------------------------

Benchmarking thread

Codec Render Quality tables

---------------------------------------------

PC ... Corsair case, own build ...

CPU .. i9 9900K, iGpu UHD 630

Memory .. 32GB DDR4

Graphics card .. MSI RTX 2080 ti

Graphics driver .. latest studio

PSU .. Corsair 850i

Mboard .. Asus Z390 Code

 

Laptop ... (Acer Predator G9-793-77AC)

CPU .. i7-6700HQ Skylake-H

Memory ..32 GB DDR4, was previously 16 GB

Graphics card .. Nvidia GTX 1070

Graphics driver .. latest studio

wwaag wrote on 6/21/2020, 8:59 PM

Just added a very simple tool, Remove Empty Tracks. Actually, there are two scripts. The first, RemoveEmptyTracks removes "All" empty tracks. The second, RemoveEmptyTracks(unlessHasFx) removes all empty tracks unless the track contains an Fx which may be useful for adding an adjustment layer to child tracks.

Here's a link to the original thread requesting such a script. https://www.vegascreativesoftware.info/us/forum/command-to-delete-all-unused-empty-tracks-at-once--121776/

It can be freely downloaded here. https://tools4vegas.com/library/

 

wwaag wrote on 6/28/2020, 11:28 AM

I've added a couple of more tools to the library, TrimToFit and Remove Hidden Events.

TrimToFit is a very simple tool that trims the length of an event so that it does not overlap the next event. It is useful when "pasting" an event into an empty timeline space when the user doesn't want an overlap created with the next event. Here is the relevant thread. https://www.vegascreativesoftware.info/us/forum/how-to-trim-an-overlapping-event-solved-use-trim-to-fit--121847/#ca759042

Remove Hidden Events is a script that removes events that are “hidden” on lower tracks.  Such “covered” events are  split so that only the portion that is “covered” is removed. It may be useful for multicam projects when the user wants to remove such "covered" events for final renders. Here is relevant the thread. https://www.vegascreativesoftware.info/us/forum/command-to-delete-all-unused-empty-tracks-at-once--121776/#ca759298

 

wwaag wrote on 7/8/2020, 9:53 PM

I've added a new tool to the library, Render Quality Metrics (RQM) FFmpeg, and updated an earlier tool, Set Event Length.

RQM FFmpeg is an app that makes use of FFmpeg for computing measures of render quality by comparing a rendered file to a reference file.  Three traditional metrics of image quality are produced: mean-squared error (MSE),  peak signal-to-noise ratio (PSNR) and the structural similarity index metric (SSIM).  Additionally,  the newer Netflix-developed Video Multimethod Assessment Fusion (VMAF) metric may also be computed. Due to decoding differences between Vegas and FFmpeg, it is recommended that those interested in measuring RQ strictly from Vegas renders should use the Vegas Render Quality tool which can be found here. https://tools4vegas.com/render-quality/

In the new version of Set Event Length, the user  may enter the new length in seconds or change the length according to a ratio.  E.g. a ratio of 2.0 would reduce the length of the event(s) by half while a ratio of .5 would double the length of the event(s).  This can be useful for setting event length when using the slow motion Fx in later versions of Vegas.  There is also an option to close gaps created by changing event lengths.

Both may be downloaded in the Happy Otter Free Tools library at https://tools4vegas.com/library/

Musicvid wrote on 7/13/2020, 8:11 PM

Wayne, I've tried installing the ffmpeg VMAF version and ran into a snag. I downloaded Zeranoe 4.3 Static and cannot find libvmaf in the folder.

I went ahead and put the PATH to the bin in User Environment Variables; The program runs, gives a trivial error (output log not found), and the VMAF box stays blank. Everything else works as expected. Thoughts?

Is there a different ffmpeg build I should be using?

@wwaag

JN- wrote on 7/14/2020, 2:50 AM

@Musicvid As I understand it that library is built in. It probably needs the missing log file contents to display the VMAF.

Make sure that the VMAF item is “checked”.

The VMAF part requires that the 2 PKL files are in the current folder.

If you type ffmpeg -version at the cmd prompt you will get something like this ...

"ffmpeg version git-2020-06-28-4cfcfb3 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9.3.1 (GCC) 20200621
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
libavutil      56. 55.100 / 56. 55.100
libavcodec     58. 93.100 / 58. 93.100
libavformat    58. 47.100 / 58. 47.100
libavdevice    58. 11.100 / 58. 11.100
libavfilter     7. 86.100 /  7. 86.100
libswscale      5.  8.100 /  5.  8.100
libswresample   3.  8.100 /  3.  8.100
libpostproc    55.  8.100 / 55.  8.100"

Last changed by JN- on 7/14/2020, 3:34 AM, changed a total of 4 times.

---------------------------------------------

Benchmarking thread

Codec Render Quality tables

---------------------------------------------

PC ... Corsair case, own build ...

CPU .. i9 9900K, iGpu UHD 630

Memory .. 32GB DDR4

Graphics card .. MSI RTX 2080 ti

Graphics driver .. latest studio

PSU .. Corsair 850i

Mboard .. Asus Z390 Code

 

Laptop ... (Acer Predator G9-793-77AC)

CPU .. i7-6700HQ Skylake-H

Memory ..32 GB DDR4, was previously 16 GB

Graphics card .. Nvidia GTX 1070

Graphics driver .. latest studio

JN- wrote on 7/14/2020, 3:46 AM

@Musicvid One more thing🤪. Its always possible that you might have an earlier PATH entry for ffmpeg's location having being installed by some other program, and that older ffmpeg might be getting called first. Eg your latest version might be lower down in the PATH list. If thats the case move it up in the Windows PATH variable. Anyway the quickest way to find out if this is the case is by testing the ffmpeg version at the cmd prompt. The current one to use is as above, 28th-June-2020.

Last changed by JN- on 7/14/2020, 3:47 AM, changed a total of 1 times.

---------------------------------------------

Benchmarking thread

Codec Render Quality tables

---------------------------------------------

PC ... Corsair case, own build ...

CPU .. i9 9900K, iGpu UHD 630

Memory .. 32GB DDR4

Graphics card .. MSI RTX 2080 ti

Graphics driver .. latest studio

PSU .. Corsair 850i

Mboard .. Asus Z390 Code

 

Laptop ... (Acer Predator G9-793-77AC)

CPU .. i7-6700HQ Skylake-H

Memory ..32 GB DDR4, was previously 16 GB

Graphics card .. Nvidia GTX 1070

Graphics driver .. latest studio

wwaag wrote on 7/14/2020, 11:33 AM

There definitely seems to be a bug somewhere since @fifonik has reported a similar problem. If you download the latest version of HOS, it will install the correct version of FFmpeg.

Musicvid wrote on 7/14/2020, 10:29 PM

@wwaag

I ran across the problem while trying to replicate the issue for a developer who doesn't use Vegas. I was able to reproduce his issue, thus the report about the outboard ffmpeg version not calling libvmaf.

He is not lifting code, he just wants to test

Is the ffmpeg version you're using for HOS available for download, or is it something you custom compiled?

I will send you a link privately to the developer's discussion page. It's an interesting discussion.

fifonik wrote on 7/15/2020, 1:02 AM

It was an issue in the RQM ffmpeg. It is resolved in a build he sent me for testing, so it should be on web site pretty soon.

As per ffmpeg build -- VMAF support is already in nightly builds and so it can be downloaded from official web site.

Camcorder: Panasonic X920

Desktop: MB: MSI B450M MORTAR TITANIUM, CPU: AMD Ryzen 3700X (not OC), RAM: G'Skill 16 GB DDR4@3200 (not OC), Graphics card: MSI RX580 8GB (factory OC), SSD: Samsung 970 Evo+ NVMe 500MB (OS), HDDs: Seagate & Toshiba 2TB, OS: Windows 10 Pro 1909

NLE: Vegas Pro [Edit] 11, 12, 13, 15, 17

wwaag wrote on 7/15/2020, 10:29 AM

@Musicvid

Just uploaded a new version of RQM FFmpeg which should now work OK. Thanks to @fifonik for diagnosing the issue.