Skip to content

Instantly share code, notes, and snippets.

View syehoonkim's full-sized avatar

Kim Syehoon syehoonkim

  • SBS(Seoul Broadcasting System)
  • Yangcheon-gu, Seoul, South Korea
  • 15:22 (UTC +09:00)
View GitHub Profile
@syehoonkim
syehoonkim / slugify.js
Created November 3, 2023 00:42
slugify
const slugify = (text) => {
const from = "ãàáäâẽèéëêìíïîõòóöôùúüûñç·/_,:;";
const to = "aaaaaeeeeeiiiiooooouuuunc------";
const newText = text
.split("")
.map((letter, i) =>
letter.replace(new RegExp(from.charAt(i), "g"), to.charAt(i))
);
@syehoonkim
syehoonkim / auto_h264.py
Created November 30, 2023 04:17
File Watchdog
import glob, os, time, subprocess, threading, datetime
def updatelog(text):
f = '/var/log/sbsonair.log'
text = str(text)
tm_stamp = datetime.datetime.now().strftime("%m/%d/%Y, %H:%M:%S.%f ")
print(tm_stamp + text)
with open(f, "a") as handle:
handle.write(tm_stamp + text + '\n')
@syehoonkim
syehoonkim / ffmpeg_help.txt
Created March 4, 2024 06:46
ffmpeg -h full
This file has been truncated, but you can view the full file.
Universal media converter
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
Getting help:
-h -- print basic options
-h long -- print more options
-h full -- print all options (including all format and codec specific options, very long)
-h type=name -- print all options for the named decoder/encoder/demuxer/muxer/filter/bsf/protocol
See man ffmpeg for detailed description of the options.
@syehoonkim
syehoonkim / smbd.conf
Created April 18, 2024 00:02
Linux SAMBA Settings
[share]
comment=share
path=/mnt/share
public=yes
guest ok=yes
writable=no
create mask=0644
directory mask=0755
browseable=yes
@syehoonkim
syehoonkim / logger.py
Last active May 29, 2024 00:39
python logger
import logging, logging.handlers
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
formatter = logging.Formatter("%(asctime)s %(name)s %(levelname)s %(message)s")
streamhandler = logging.StreamHandler()
streamhandler.setFormatter(formatter)
logger.addHandler(streamhandler)
timedfilehandler = logging.handlers.TimedRotatingFileHandler(
filename="log//logfile.log", when="midnight", interval=1, encoding="utf-8"
@syehoonkim
syehoonkim / video_ringbuffer.py
Created July 18, 2024 04:45
Video Ringbuffer
import cv2
import glob
from time import time
import os
import skvideo.io
cap = cv2.VideoCapture("rtsp://210.216.76.121:554/sbsonair0", cv2.CAP_FFMPEG)
class SplitWriter:
@syehoonkim
syehoonkim / settings.txt
Last active September 20, 2024 08:15
Cisco Default Settings
enable
conf t
no ip domain-look
ena sec cisco
line 0
logg sync
exec-t 0
line vty 0 4
@syehoonkim
syehoonkim / logger.js
Last active May 19, 2025 02:02
Node.js WInston logger
const winston = require("winston");
const winstonDaily = require("winston-daily-rotate-file");
const appRoot = require("app-root-path");
const { createLogger } = require("winston");
const logDir = `${appRoot}/logs`;
const { combine, timestamp, label, printf } = winston.format;
const logFormat = printf(({ level, message, label, timestamp }) => {
@syehoonkim
syehoonkim / showvolumes.lua
Created June 16, 2025 00:23
mpv.io audio channels levelmenter
local mp = require 'mp'
local msg = require 'mp.msg'
function setup_volume_meter()
local tracks = mp.get_property_native("track-list")
if not tracks then
msg.warn("No track list found.")
return
end
@syehoonkim
syehoonkim / enable_csxs_debug,sh
Created April 1, 2026 00:10
Enable Premiere Pro for macOS Debug Mode
#!/bin/bash
set -e
# Enable Adobe CSXS Extension Debug Mode
defaults write com.adobe.CSXS.8 PlayerDebugMode 1
defaults write com.adobe.CSXS.11 PlayerDebugMode 1
defaults write com.adobe.CSXS.12 PlayerDebugMode 1
echo "✅ PlayerDebugMode enabled for:"
echo " - com.adobe.CSXS.8"