Skip to content

Instantly share code, notes, and snippets.

View etherealxx's full-sized avatar
💭
still learning stuff

Etherealxx etherealxx

💭
still learning stuff
View GitHub Profile
@Celeborn2BeAlive
Celeborn2BeAlive / cycles-source-code.md
Last active March 6, 2025 02:23
Diving into Cycles source code

Diving into Cycles source code

This document describes my understanding of the Cycles renderer source code. Cycles is a unidirectional path tracer provided with Blender for production rendering. As a production renderer, its code favors performance and simplicity over generality. It can run on CPU or GPU, and the same kernel code can be compiled with a CPU compiler (gcc, msbuild) or a GPU compiler (cuda, OpenCL). To do that, the code tries to remain simple (mostly C code) but exploit macros to specialize some parts of the code.

In this document I focus on the CPU rendering. I compiled blender in "full" mode, meaning Cuda kernels are not compiled. One reason for that is Cuda kernel compilation seems quite expensive so if I want to change the code and quickly iterate, it might be hard. I may do another analysis for GPU part later but I doubt it would be very interesting since it is the same code.

@flatlinebb
flatlinebb / mpv keyboard shortcuts
Last active November 2, 2025 07:24
mpv keyboard shortcuts
Keyboard Control
LEFT and RIGHT
Seek backward/forward 5 seconds. Shift+arrow does a 1 second exact seek (see --hr-seek).
UP and DOWN
Seek forward/backward 1 minute. Shift+arrow does a 5 second exact seek (see --hr-seek).
Ctrl+LEFT and Ctrl+RIGHT
Seek to the previous/next subtitle. Subject to some restrictions and might not always work; see sub-seek command.
Ctrl+Shift+Left and Ctrl+Shift+Right
Adjust subtitle delay so that the next or previous subtitle is displayed now. This is especially useful to sync subtitles to audio.
[ and ]
@miabrahams
miabrahams / FfmpegPostprocess.py
Last active March 2, 2024 18:07
Ffmpeg post-processing OBS Plugin
import obspython as obs
import subprocess
import os
import re
import datetime
# Info for potential OBS Python hackers!
# Tip 1 - Read the "OBS Studio Backend Design" documentation page. Read the documentation table of contents.
# Tip 2 - be sure to add obspython.py to your script path to enable completion.
# Tip 3 - Some of the Python API is generated at runtime, so it won't show up in obspython.py.
@shadowmoose
shadowmoose / Audio-Merge.md
Last active June 16, 2025 19:49
Merge multiple audio tracks inside a video file

About

This is a simple script to combine two of a video file's audio tracks into one. It doesn't impact the video's quality.

To make things even more simple, it only prompts for an input/output video using file selectors. The rest is handled automatically.

This is a simple utility to rapidly "fix" videos with split audio tracks, such as those recorded by ShadowPlay or OBS.

To use this script, simply copy/paste the "merge.ps1" code below into a new file named "merge.ps1", then launch it.

@ngtvspc
ngtvspc / EXIF_remover.py
Created January 9, 2018 23:00
Remove EXIF metadata from images
# Uses the Python Imaging Library
# `pip install Pillow` works too
from PIL import Image
image_filename = "picture_with_EXIF.jpg"
image_file = open('image_filename)
image = Image.open(image_file)
# next 3 lines strip exif
image_data = list(image.getdata())
@graffic
graffic / steam.md
Last active July 20, 2025 09:58
Downloading steam games from another computer/faster line

Framing the issue

With almost no bandwith at home, I needed a way to download DOOM that didn't involve blocking the home internet line for two days.

Approach

Using steamcmd you can use any computer to download steam games.

Downloading

  1. Install it
  2. Open it and loging with your username and password: login username password
@pierrejoubert73
pierrejoubert73 / markdown-details-collapsible.md
Last active November 5, 2025 16:18
How to add a collapsible section in markdown.

How to add a collapsible section in markdown

1. Example

Click me

Heading

  1. Foo
  2. Bar
    • Baz
  • Qux
@joshbuchea
joshbuchea / semantic-commit-messages.md
Last active November 7, 2025 04:26
Semantic Commit Messages

Semantic Commit Messages

See how a minor change to your commit message style can make you a better programmer.

Format: <type>(<scope>): <subject>

<scope> is optional

Example

@richard512
richard512 / ffmpeg-convert.sh
Last active December 22, 2022 01:45
ffmpeg merge and convert between webm, wav, and opus
#/bin/bash
# ffmpeg convert wav audio to opus audio
ffmpeg -i uploads/audio.wav -c:a opus -strict -2 -y uploads/output.opus
# ffmpeg combine webm and wav into a new webm with opus audio
ffmpeg -i uploads/video.webm -i uploads/audio.wav -c:a opus -strict -2 -y uploads/output.webm
@Manouchehri
Manouchehri / rfc3161.txt
Last active November 6, 2025 08:40
List of free rfc3161 servers.
https://rfc3161.ai.moda
https://rfc3161.ai.moda/adobe
https://rfc3161.ai.moda/microsoft
https://rfc3161.ai.moda/apple
https://rfc3161.ai.moda/any
http://rfc3161.ai.moda
http://timestamp.digicert.com
http://timestamp.globalsign.com/tsa/r6advanced1
http://rfc3161timestamp.globalsign.com/advanced
http://timestamp.sectigo.com