Create video playlists with Emacs dired using mpv.el with a single keyboard shortcut.
In this video we create some functions that check the mime type of a file and if its an video or audio file open it with mpv.el but if its not we open it with emacs
We then bind the new function to the l key so we can easily add videos or audio to a mpv playlist and control mpv from within emacs using a hydra
the advantage over using the openwith package which use file extension and then opens them with a specific application is that if you create a text file called test.mp4 with an mp4 extension openwith would try and open it with mpv
whereas this code checks the mime type of the file and would see the test.mp4 file its a text file and not a video, and open it with emacs and not mpv
emacs init.el
https://github.com/NapoleonWils0n/fedora-dotfiles/blob/master/.config/emacs/init.el
...
https://www.youtube.com/watch?v=LOvS90sTotI
blackrain is a shell script that creates a fzf menu for transmission-remote that shows you all your torrents in a list which you can select with fuzzy matching and then run commands on the selected torrents
After selecting the torrents to operate on you can run the following commands
start the selected torrents
pause the selected torrents
remove the selected torrents
purge the selected torrents which remove the torrent and the files
show torrent info about the selected torrents
ask for more peers
files list all the files in the selected torrents
noget - deselect files in a torrent you dont want
get - re select files in a torrent you want
transmission:
https://transmissionbt.com/
blackrain - fzf menu for transmission remote
https://raw.githubusercontent.com/NapoleonWils0n/ubuntu-bin/master/blackrain
newsboat config:
https://github.com/NapoleonWils0n/ubuntu-dotfiles/tree/master/.config/newsboat
zshrc:
https://github.com/NapoleonWils0n/ubuntu-dotfiles/blob/master/.zshrc
viddy - improved watch command:
https://github.com/sachaos/viddy
@gotbletu viddy youtube video:
https://www.youtube.com/watch?v=-TsifYS2mw8
gotbletu - transmission remote functions:
https://github.com/gotbletu/shownotes/blob/master/transmission-cli.txt
...
https://www.youtube.com/watch?v=AImvyi-mec4
Set mpv to use alsa/pipewire instead of pulseaudio and mpd the music player daemon to use pipewire by setting the audio device in their respective config files
Pipewire install:
https://github.com/NapoleonWils0n/cerberus/blob/master/pipewire/pipewire-install.org
mpd config:
https://raw.githubusercontent.com/NapoleonWils0n/ubuntu-dotfiles/master/.config/mpd/mpd.conf
mpv config:
https://raw.githubusercontent.com/NapoleonWils0n/ubuntu-dotfiles/master/.config/mpv/mpv.conf
arch wiki mpd:
https://wiki.archlinux.org/title/Mpd
arch wiki mpv:
https://wiki.archlinux.org/title/Mpv
...
https://www.youtube.com/watch?v=nvBuuaA9SJU
Disable a systemd service on Nixos in your configuration.nix so you can manually stop and start it
In this example i disable the transmission systemd service so i can manually start the transmission daemon and put it in a seperate linux network namespace following on from a previous video about openvpn split routes on nixos
configuration.nix
https://github.com/NapoleonWils0n/nixos-root-xps15/blob/master/etc/nixos/configuration.nix#L171
add the following code to your configuration.nix to disable the transmission systemd service
systemd.services.transmission.wantedBy = pkgs.lib.mkForce [ ];
You can use the same technique to disable any systemd service on nixos but you may need to disable other option depending on the systemd service unit file
...
https://www.youtube.com/watch?v=ag5wU-bpLfE
Analyse a video using ffmpeg scene detection and optionally specify a range in the video to extract scenes from then create a text file containing timecode of all the scene changes in a video
We can then convert the timecodes into a csv file containing the start point and duration of each scene and use ffmpeg to cut the video into the scene clips
ffmpeg scripts github:
https://github.com/NapoleonWils0n/ffmpeg-scripts
scene-detect:
https://raw.githubusercontent.com/NapoleonWils0n/ffmpeg-scripts/master/scene-detect
scene-images:
https://raw.githubusercontent.com/NapoleonWils0n/ffmpeg-scripts/master/scene-images
scene-time:
https://raw.githubusercontent.com/NapoleonWils0n/ffmpeg-scripts/master/scene-time
scene-cut:
https://raw.githubusercontent.com/NapoleonWils0n/ffmpeg-scripts/master/scene-cut
Version 1 of the scene detect script with ffprobe
scene-detect-ffprobe
https://raw.githubusercontent.com/NapoleonWils0n/cerberus/master/ffmpeg/scripts/scene-detect-ffprobe
...
https://www.youtube.com/watch?v=SqvDCpWad9M
Labwc is a wlroots-based window-stacking compositor for wayland,
inspired by openbox.
In this video i cover window placement , setting the theme, creating keyboard shortcuts to switch workspaces and move windows to different workspaces and monitors
How to warp your cursor between monitors, create keyboard shortcuts to increase, decrease and mute the volume
labwc doesnt have independant workspaces per monitor,
but you can set windows to be dsplayed on all workspaces using a keyboard shortcut
you can also create rules for particular windows like chromium, mpv and firefox picture in picture so they are displayed on all workspaces on your second monitor
labwc supports the foreign-toplevel protocol which works with tools like wlrctl and allows you to list all of open windows and then switch to them using tofi which is a wayland version of dmenu
Cursor confinement is also supported which is great for gaming so your mouse is confined to the screen with the game on
labwc
https://labwc.github.io/
labwc github
https://github.com/labwc/labwc
labwc config
https://github.com/NapoleonWils0n/freebsd-dotfiles-xps/tree/master/.config/labwc
labwc-start script
https://github.com/NapoleonWils0n/freebsd-bin/blob/master/labwc-start
window-switcher script
https://github.com/NapoleonWils0n/freebsd-bin/blob/master/window-switcher
dotfiles
https://github.com/NapoleonWils0n/freebsd-dotfiles-xps
bin directory
https://github.com/NapoleonWils0n/freebsd-bin
root dotfiles
https://github.com/NapoleonWils0n/freebsd-root-xps
...
https://www.youtube.com/watch?v=JyqiAXlZvjc
extract a frame from a video and save it as a png image
script usage
extract-frame -i infile.(mp4|mov|mkv|m4v) -s 00:00:00 -o outfile.mp4
https://github.com/NapoleonWils0n/ffmpeg-scripts#extract-frame
...
https://www.youtube.com/watch?v=cOk0i384crE
Desktop notifications when video has finished recording on mac osx, and youtube-dl aria2c install
# kodi-playercorefactory git repo
https://github.com/NapoleonWils0n/kodi-playercorefactory
# Youtube channel
https://www.youtube.com/channel/UCriRR_CzOny-akXyk1R-oDQ
...
https://www.youtube.com/watch?v=mlwxY9tFLTQ
Extract http links from pcap files using wireshark on windows, mac and linux
# kodi-playercorefactory git repo
https://github.com/NapoleonWils0n/kodi-playercorefactory
# Youtube channel
https://www.youtube.com/channel/UCriRR_CzOny-akXyk1R-oDQ
...
https://www.youtube.com/watch?v=6aojXDxKdAw