Skip to content

Instantly share code, notes, and snippets.

@ParkWardRR
ParkWardRR / ecobee-homepage-to-consumerportal-redirect.user.js
Last active January 19, 2026 00:50
Tampermonkey/Greasemonkey userscript that redirects https://www.ecobee.com/ (site root) to https://www.ecobee.com/consumerportal/index.html using document-start + location.replace to minimize flicker and avoid history pollution.
// ==UserScript==
// @name ecobee homepage -> consumerportal redirect
// @namespace https://gist.github.com/ParkWardRR
// @version 1.2.0
// @description Redirect ecobee.com to the Consumer Portal login (skips /consumerportal/*), early (document-start) with location.replace().
// @author Your Name
// @license MIT
//
// IMPORTANT (Violentmonkey): metadata must be at the very top of the file and formatted exactly. [page:1]
//
@ParkWardRR
ParkWardRR / macos-force-spatial-audio-external-dac.md
Last active January 5, 2026 02:13
How to Force macOS Spatial Audio on Any DAC or Headphones

Force macOS Spatial Audio Rendering for Generic Headphones & USB DACs

Summary: macOS normally restricts system-level Spatial Audio (HRTF processing of 5.1/7.1 content) to AirPods and built-in speakers. By creating a specific Aggregate Device configuration, you can trick the OS into performing the binaural rendering and routing the processed audio to any USB DAC or wired headphone output. Result Surround sound content played through standard stereo headphones sounds directional/atmospheric rather than just left/right.


Glossary

Term Definition
#!/bin/bash
# =============================================================================
# Synology DSM Archive Extractor v2.2
#
# PURPOSE: Extracts ZIP/RAR archives from a file list, validates CRC-32 checksums,
# deletes originals only after 100% validation. Handles multipart RARs.
#
# FEATURES:
# - Progress bar with real-time stats
# - CRC-32 validation of ALL extracted files
@ParkWardRR
ParkWardRR / vr180_to_flat_h265_batch_hvc1.py
Last active December 29, 2025 05:30
Python wrapper around FFmpeg to turn VR180/360 half-equirect videos into flat 2D HEVC (H.265), with configurable quality, HW/SW encoder selection, and per-file logging for macOS M2/M3/M4.
#!/usr/bin/env python3
"""
vr180_to_flat_h265_batch_hvc1.py
VR180 SBS (or mono) -> Flat 2D HEVC (H.265) batch encoder for macOS (Apple Silicon).
What this does
- Reads video files from an input folder (optionally recursive).
- If the source is VR180 SBS, it crops the left eye (half-width) then uses FFmpeg `v360` to flatten.
- Encodes to HEVC using:
- Hardware: `hevc_videotoolbox` (fast), with SW fallback to `libx265` if HW fails.
@ParkWardRR
ParkWardRR / vr180_to_flat_prores_batch_enhanced.py
Created December 28, 2025 19:03
This script transforms VR180 (stereo 360-degree, half-equirectangular) video files into standard flat 2D ProRes MOV files suitable for NLE (non-linear editing) systems. It performs batch processing with intelligent resolution selection, optional pitch variants, and comprehensive logging. Tested on MacOS
#!/usr/bin/env python3
"""
VR180 SBS to Flat 2D ProRes Batch Encoder (macOS)
==================================================
README & DOCUMENTATION
======================
OVERVIEW
--------
@ParkWardRR
ParkWardRR / av1-batch-encoder-macos.sh
Created December 27, 2025 21:58
macOS AV1 Batch Encoder (ffmpeg + progress + parallel)
#!/usr/bin/env bash
################################################################################
# macOS AV1 Video Batch Encoder (ffmpeg)
# Version: 2.1.1
#
# What it does:
# - Finds the first video file in ./source (next to this script) and produces
# multiple AV1 resolution variants into ./output (by default).
# - Tracks per-encode progress + ETA by parsing ffmpeg's `-progress` key/value
# file (e.g., out_time_us, speed, progress=end). This is more machine-friendly
#!/bin/bash
# moved jere: https://github.com/ParkWardRR/bmw-bm3-knock-analyzer/tree/main
# BMW BM3 Knock Analyzer v4.0 (macOS, robust 0-knock handling)
# bmw-bootmod3-knock-event-context-extractor.sh
# This script processes BM3 log CSVs for the BMW N20 engine to analyze knock events.
# It collects knock event data, adds context rows, generates checksums for validation,
# and produces a summary report. All output is timestamped and organized for easy review.
// ==UserScript==
// @name Plex Redirect Script
// @namespace https://example.com/
// @version 1.0
// @description Automatically redirects users from the Plex homepage (www.plex.tv) to the Plex web app (app.plex.tv).
// @author Your Name
// @match https://www.plex.tv/*
// @grant none
// ==/UserScript==
/*
* ESP32-H2 GPS Parser
* Description:
* This script reads NMEA sentences from a GPS module connected to an ESP32-H2 board,
* parses the data using the TinyGPS++ library, and outputs clean, human-readable GPS data
* such as latitude, longitude, date, time, altitude, speed, number of satellites, and HDOP.
*
* Features:
* - Real-time GPS data parsing and display.
* - Clear and organized serial output.
@ParkWardRR
ParkWardRR / install_searxng.sh
Last active January 16, 2026 03:40
This script automates the installation and setup of SearXNG using Podman on AlmaLinux. It includes steps to update the system, install Podman, pull the SearXNG Docker image, create necessary configuration files, and run the SearXNG container with the correct port mapping.
#!/bin/bash
# Filename: install_searxng.sh
# Description: This script automates the installation and setup of SearXNG using Podman on AlmaLinux.
# It includes steps to update the system, install Podman, pull the SearXNG Docker image, create necessary
# configuration files, run the SearXNG container with the correct port mapping, and set up a systemd service
# to ensure the container starts automatically on system boot.
# Update system
sudo dnf update -y