Showing posts with label nonsense. Show all posts
Showing posts with label nonsense. Show all posts

Highlander: Coomer MacLeod






A still image from the film 'Highlander' (1986), showing Sean Connery's character (Ramirez) pointing at Conor MacLeod (out of frame). Words are printed on the image in the same font as in the poster for the movie. The words are taken from movie dialogue but changed replacing 'Quickening' with 'Cooming': 'The sensation you feel is… The Cooming.'

Here is an alternate 'Directors Cut', with audio from the film also included.





[Here I will explain the joke, for the purposes of posterity, and SEO. It might be best to skip it.]

An old, if not dead, meme at this stage, but one I wanted to do for some weeks: Conor MacLeod as 'Coomer MacLeod'. It ties in with the even older joke about the sexual nature of the 'Quickening' experience in the Highlander movie franchise; an orgasmic rush that envelopes a person after they defeat their enemy and decapitating them. 'Real smooth shave!'

context: https://knowyourmeme.com/memes/coomer
context: https://en.wikipedia.org/wiki/Highlander_(film)

All video editing done with 'Flowblade' version 2.2 (GPL-3.0-or-later): http://https://github.com/jliljebl/flowblade

Bash: Create a cacophony of voices with 'Mimic' text-to-speech



A somewhat grotesque and macabre presentation of 'Mimic's text-to-speech functionality. The concept arising after recently trying out 'Mimic's features and capabilities. As a short review; I believe 'Mimic's main strengths lie in its speed and ease of execution on the command line, similar to that of 'espeak'. Other more featured text-to-speech solutions can be slow and cumbersome to initiate.

N.B. In the video, there are an unfortunate number of artifacts in the audio. These only manifest in PulseAudio stream recording and are not present while monitoring the audio in real-time.

#!/bin/bash
# (GNU bash, version 4.4.19(1)-release)
#
# Create a cacophony of 'Mimic' text-to-speech voices, using words found in the
# system's 'words' file. Note: The concept can be applied to any text-to-speech
# software and, as such, a rudimentary function using 'espeak' is included.
# (Mimic info: https://mycroft.ai/documentation/mimic/)
# - Optional parameters: '$1' number of words - '$2' Number of voices
#
# Version: 2018.08.11.15.54.15
# Source: https://oioiiooixiii.blogspot.com

function randWords() # RETURNS PUNCTUATED LIST OF WORDS FROM SYSTEM DICTIONARY
{
   shuf </usr/share/dict/words \
   | head -"$1" \
   | awk 1 ORS='. '
}

function randNum() # RETURNS RANDOM NUMBER BETWEEN '$1' and '$2'
{
   shuf -i "$1"-"$2" -n 1
}

function randVoice() # RETURNS NAME OF RANDOM MIMIC VOICE
{
   local voices=("ap" "slt" "kal" "awb" "kal16" "rms")
   printf "${voices[$(randNum 0 ${#voices[@]})]}"
}

function mimicSpeak() # INVOKES 'MIMIC' APPLICATION
{
   mimic \
      -voice "$(randVoice)" \
      --setf int_f0_target_mean="$(randNum 20 180)" \
      --setf duration_stretch="$(randNum 1 12)" \
      <<<"$1"
}

function espeakAlt() # INVOKES 'ESPEAK' ALTERNATIVE
{
   espeak \
      -p "$(randNum 1 200)" \
      -s "$(randNum 1 100)" \
      "$1"
}

function main()
{
   clear

   for (( i=0;i<"${2:-5}";i++  ))
   {
      local sentence="$(randWords "${1:-5}")"
      echo "$sentence"
      mimicSpeak "$sentence" &
      #espeakAlt "$sentence" &
   }
}

main "$@"
exit

#### NOTES: One line concept

# shuf </usr/share/dict/british-english \
# | head -5 \
# | sed ':a;N;$!ba;s/\n/. /g' \
# | tee > \
#   (
#       mimic \
#          -voice slt \
#          --setf int_f0_target_mean=50 \
#          --setf duration_stretch=16 \
#   )
download: mimic-cacophony.sh

Russia needs to get its act together

An image comparing two news stories. On the top left: 19-year-old mass-shotting killer Nikolas Cruz being arrested on the ground. The ground is replaced with the american flag and the image of an AR-15 assault rifle is included. Underneath are the stats: 'AMERICAN TEEN, SPORTING EQUIPMENT, AMERICAN HIGH SCHOOL, 17 DEAD'. On the top right-hand side of the image: A silly-looking Владимир Путин (Vladimir Putin) stands in front of St. Basil's Cathedral. In his hand, an open tin-can with noxious green fumes emanating from it. THe tin-can has warning symbols and 'NOVICHOK' labels. At the bottom of the can in hand writing are the words: '100% cyka blyat!'. Underneath are the stats: 'RUSSIAN FEDERATION,MILITARY GRADE NERVE AGENT, ENGLISH PARK BENCH, 0 DEAD.'

While our American friends show how it's really just child's play, Vova, with his persistent love of Rube Goldberg mechanics, makes himself look like a really bad Bond villain...

James Bond: "Do you expect me to talk?"
Bond villain: "Haha no Mr. Bond, I expect you suffer a suspicious, but recoverable, ailment in a public place, using an easily traceable substance, in the middle of the most tense geopolitical situation since the Cold War, weeks before my country hosts the FIFA World Cup."

context: https://en.wikipedia.org/wiki/Sergei_Skripal
context: https://en.wikipedia.org/wiki/Stoneman_Douglas_High_School_shooting


A silly-looking Владимир Путин (Vladimir Putin) stands in front of St. Basil's Cathedral. In his hand, an open tin-can with noxious green fumes emanating from it. THe tin-can has warning symbols and 'NOVICHOK' labels. At the bottom of the can in hand writing are the words: '100% cyka blyat!'

Letters to the Neighbors: "Lawnmower Cat"

Dear Sir,

It is with great regret to inform you that I believe I have killed your cat by accident yesterday evening. I am dreadfully sorry about this. It happened when I was reversing my ride-on lawnmower out of my garage to get better access to the blades underneath which needed sharpening. I believe the recent humid weather has had an extreme blunting effect on mild steel. I think I will attempt to temper the metal the next time they need sharpening, lowering their need for maintenance, and thus, creating fewer chances to inadvertently dispatch neighborhood creatures.

Until yesterday I was not aware that you even owned a cat, but upon close inspection of the cat's remains, it bares an uncanny resemblance to your good self, so I am without doubt to the identity of its owner. I would be delighted to return the cat's body to you at your soonest convenience. If you would rather deal with the remains on your own, you can find them in the ditch, next to Frank Tanner's gate (to the left had side). You can't miss it, it's just behind a clump of nettles (I also marked the spot with an old choc-ice wrapper I saw lying around).

The cat's body was in quite good condition the last time I saw it and I'm sure if you retrieved it quickly it will still be good enough to have it stuffed. By co-incidence, my wife's cousin is a very well trained taxidermist and if you wish I can give you his number. I will, of course, ask for you to receive a modest discount (it is the least I can do).

Again, I am very sorry about all this. Rest assured your cat did not suffer at all during the incident. I was very quick to dispatch it with a nearby length of garden hose when I saw its face trapped under one of my wheels.

If there is anything else I can help you with, please let me know!

Kind regards,
George Chaversmith.

published previously

FFmpeg: 144 (16x9) grid of random Limmy Vine videos


It would have been nice to complete this all in one FFmpeg command (building such a command is a relatively trivial 'for loop' affair¹) but the level of file IO made this impossible (for my setup at least). Perhaps with smaller file sizes and fewer videos, it would be less impractical.

# Some basic Bash/FFmpeg notes on the procedures involved: 

# Select random 144 videos from current folder ('sort -R' or 'shuf')
find ./ -name "*.mp4" | sort -R | head -n 144

# Generate 144 '-i' input text for FFmpeg (files being Bash function parameters)
echo '-i "${'{1..144}'}"'
# Or use 'eval' for run-time creation of FFmpeg command
eval "ffmpeg $(echo '-i "${'{1..144}'}"')"

# VIDEO - 10 separate FFmpeg instances

# Create 9 rows of 16 videos with 'hstack', then use these as input for 'vstack'
[0:v][1:v]...[15:v]hstack=16[row1];
[row1][row2]...[row9]vstack=9
# [n:v] Input sources can be omitted from stack filters if all '-i' files used

# AUDIO - 1 FFmpeg instance

# Mix 144 audio tracks into one output (truncate with ':duration=first' option)
amix=inputs=144

# If needed, normalise audio volume in two passes - first analyse audio
-af "volumedetect"
# Then increase volume based on 'max' value, such that 0dB not exceeded 
-af "volume=27dB"

# Mux video and audio into one file
ffmpeg -i video.file -i audio.file -map 0:0 -map 1:0 out.file

# Addendum: Some other thoughts in reflection: Perhaps piping the files to a FFmpeg instance with a 'grid' filter might simplify things, or loading the files, one by one, inside the filtergraph via 'movie=' might be worth investigating. 
¹ See related: https://oioiiooixiii.blogspot.com/2017/01/ffmpeg-generate-image-of-tiled-results.html
context: https://en.wikipedia.org/wiki/Limmy
source videos: https://vine.co/Limmy

Bash: Irish Weather


function weather2morrow() 
{ 
   echo "Weather forecast for"\
        "$(date +%A,\ %d\ %B\ %Y --date=tomorrow):"\
        "Sunny spells & scattered showers 🌦 " 
}

Bonus content from: June, 2012


A "good Summer" means high humidity...

Bonus content from: June, 2009


iGoogle weather widget showing forecast...

The United States May Drop Kim Kardashian's Ass On Iran

Image shows Kim Kardashian in jeans, white t-shirts, and red high-heel shoes, falling towards Iran, after being dropped from a B-2 stealth bomber

America is currently spending tens of millions of dollars on developing a bomb that is capable of penetrating and destroying Iranian nuclear facilities deep within the country's mountain ranges¹.

A nuclear strike would of course be more than enough to do the job, but even unscrupulous America would be incapable of delivering such a ironic plan as to use nuclear warfare to stop a hypothesised nuclear war, so they set Lockheed Martin and AFRL the task of developing a large conventional bomb to do the task.

Now a new radical new idea has sprung forth from the crazy minds of US' military R&D*: they plan to turn Kim Kardashian's buttocks into a Massive Ordnance Penetrator (MOP).

Close-up of Kim Kardashian squatting in white dress. The dress is covered in U.S. air-force insignia, including American flag and seal, and phrases: '50 Megatons' and 'God bless America'

The military scientists believe that due to the size and consistency of the celebrities rear (denser than Plutonium), a drop from above the stratosphere would result in a 50 megaton explosion and an impact crater 2 miles in diameter. Tests are currently being run to see if there is a risk of nuclear fallout being released from the "KD" (Kardashian Device). They say there is a small chance of a toxic release on the way down.

Mahmoud Ahmadinejad in sunglasses pointing at camera with 'Drop dat ass' written below it
Iranian president, محمود احمدی‌نژاد (Mahmoud Ahmadinejad), gave a chilling reply to the news of America's development of this new biological weapon. Apparently goading the United States' into war, he is on the record as saying: "Do it! Drop dat ass".

¹https://www.wsj.com/articles/SB10001424052970203363504577187420287098692
²Rear-search and Development

content originally published: June, 2012

Bash: Watch 5 QVC YouTube live-streams at once, using MPV


For no other reason than "just because". The Bash script is generic enough to be used in other scenarios. Most work is done by MPV and its '--ytdl-format' option. A small delay is added before each mpv call, to avoid swamping YouTube with concurrent video requests.

#!/bin/bash

# Stream 5 QVC YouTube live-streams simultaneously.
# - Requires 'mpv' - N.B. Kills all running instances of mpv when exiting.
# - See YouTube format codes, for video quality, below.
# ver. 2017.02.11.21.46.52

### YOUTUBE VIDEO IDS ##########################################################

# QVC ...... USA .......... UK ........ Italy ....... Japan ...... France
videos=('2oG7ZbZnTcA' '8pHCfXXZlts' '-9RIKfrDP2E' 'wMo3F5IouNs' 'uUwo_p57g5c')

### FUNCTIONS ##################################################################

function finish() # Kill all mpv players when exiting
{
  killall mpv
}
trap finish EXIT

function playVideo() # Takes YouTube video ID
{
   sleep "$2" # The "be nice" delay
   mpv --quiet --ytdl-format 91 https://www.youtube.com/watch?v="$1" 
}

### BEGIN ######################################################################

for ytid in "${videos[@]}"; do ((x+=2)); (playVideo "$ytid" "$x" &); done
read -p "Press Enter key to exit"$'\n' # Hold before exiting
#zenity --warning --text="End it all?" --icon-name="" # Zenity hold alternative
exit

### FORMAT CODES ###############################################################

# format code  extension  resolution note
# 91           mp4        144p       HLS , h264, aac  @ 48k
# 92           mp4        240p       HLS , h264, aac  @ 48k
# 93           mp4        360p       HLS , h264, aac  @128k
# 94           mp4        480p       HLS , h264, aac  @128k
# 95           mp4        720p       HLS , h264, aac  @256k
# 96           mp4        1080p      HLS , h264, aac  @256k

The story of Donald Trump's presidential Inauguration, told through the medium of scat painting