From 0bf4e7433cc57e43f651e9483959f2b86d7dca14 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Mon, 28 Nov 2022 20:00:32 -0500 Subject: fallbacks --- 2022/organizers-notebook.md | 56 ++++++++++++++++++++++++++++---------- 2022/organizers-notebook/index.org | 18 ++++++++---- 2022/watch/dev.md | 4 +-- 2022/watch/gen.md | 4 +-- 2022/watch/info.md | 4 +-- 5 files changed, 61 insertions(+), 25 deletions(-) (limited to '2022') diff --git a/2022/organizers-notebook.md b/2022/organizers-notebook.md index 5e13a370..16ca48d7 100644 --- a/2022/organizers-notebook.md +++ b/2022/organizers-notebook.md @@ -433,17 +433,22 @@ interests you! ### STARTED icecast fallback :derisk:sachac: -ffmpeg -y -r 20 -t 3 -i sorry.png -f lavfi -i anullsrc=channel\_layout=stereo:sample\_rate=48000 -shortest -c:v vp8 -color\_primaries 1 -color\_trc 1 -colorspace 1 sorry.webm + +#### Creating the files + +ffmpeg -y -f lavfi -i anullsrc=channel\_layout=stereo:sample\_rate=48000 -loop 1 -r 20 -t 10 -i sorry.png -c:v libvpx -c:a libvorbis -color\_primaries 1 -color\_trc 1 -colorspace 1 -crf 30 -g 120 -minrate 1.5M -b:v 1500 -g 120 -maxrate 1.5M -cluster\_time\_limit 5100 -shortest sorry.webm + +ffmpeg -y -f lavfi -i anullsrc=channel\_layout=stereo:sample\_rate=48000 -loop 1 -r 20 -t 10 -i sorry.png -vf scale=854:480 -c:v libvpx -c:a libvorbis -color\_primaries 1 -color\_trc 1 -colorspace 1 -crf 30 -g 120 -minrate 1.5M -b:v 1500 -g 120 -maxrate 1.5M -cluster\_time\_limit 5100 -shortest sorry-480p.webm icecast 2.4.4 Stream #0:0: Video: vp8, yuv420p(tv, bt709, progressive), 1280x720, SAR 1:1 DAR 16:9, 20 fps, 20 tbr, 1k tbn, 1k tbc (default) Stream #0:1: Audio: vorbis, 48000 Hz, stereo, fltp (default) Okay. I can ffmpeg to /gen-sorry.webm with -orga@live0:/usr/share/icecast2/web$ ffmpeg -r 20 -re -stream\_loop -1 -i gen-fallback.webm -f webm -content\_type video/webm -c:a copy -c:v vp8 icecast://https://emacsconf.org/2022/talks/$PASSWORD@localhost:8001/gen-sorry.webm +orga@live0:/usr/share/icecast2/web$ ffmpeg -r 20 -re -stream\_loop -1 -i gen-fallback.webm -f webm -content\_type video/webm -c:a copy -c:v copy icecast://https://emacsconf.org/2022/talks/$PASSWORD@localhost:8001/gen-sorry.webm + -if I stream to it and not gen, I see sorry using gen’s mount -If I stream to gen, I see gen, but I need to refresh (mpv or Firefox) +##### TODO Add test pattern to part of the screen ##### gen @@ -470,16 +475,39 @@ Input #0, matroska,webm, from ’http://live0.emacsconf.org:8001/gen.webm&rs Stream #0:1: Audio: vorbis, 48000 Hz, stereo, fltp (default) +#### DONE Create fallback for 480p as well + + #### DONE Create fallback video -#### TODO Add more ffmpeg options from the OBS profile to try to get them to match as closely as possible +#### DONE Add more ffmpeg options from the OBS profile to try to get them to match as closely as possible -#### TODO Detect fallback and reload the video player +#### DONE Detect fallback and reload the video player + // @license magnet:?xt=urn:btih:90dc5c0be029de84e523b9b3922520e79e0e6f08&dn=cc0.txt txt CC0-1.0 + // Copyright (c) 2022 Sacha Chua - CC0 Public Domain + var video = document.querySelector('video.reload'); + if (video) { + var myVar = setInterval(reloadAsNeeded, 1000); + var oldTime = ''; + function reloadAsNeeded() { + if ((video.paused != true && (video.currentTime - oldTime) == 0 && video.currentTime != 0)) { + var source = video.querySelector('source'); + var oldVideo = source.src; + source.src = ''; + source.src = oldVideo; + video.load(); + video.play(); + } + oldTime = video.currentTime; + }; + } + // @license-end + ### TODO Make sure things are okay for me to handle both streams :sachac: @@ -519,7 +547,7 @@ can paste in for tips. ## Caption talks and make chapter headings -### TODO Nudge volunteers to e-mail me captions by Dec 1 :mail:sachac: +### DONE Nudge volunteers to e-mail me captions by Dec 1 :mail:sachac: ### DONE Copy chapter headings for mail talk :emacsconf:captions: @@ -895,7 +923,7 @@ Try them in an Etherpad ### DONE Make a hyperlist for checking people in for easier copying and pasting -### TODO Send FlowyCoder hyperlist for checking people in :mail: +### DONE Send FlowyCoder hyperlist for checking people in :mail: [Use Mumble for backchannel coordination and also on-stage](file:///home/sacha/proj/emacsconf/wiki/2022/organizers-notebook/index.md) @@ -1773,7 +1801,7 @@ AM: 9-12 PM EST, PM: 1-5 PM EST (plus a little extra for setup/transition) Saturday Dec 3 - +
@@ -1853,7 +1881,7 @@ publicvoit - pad until 4pm on Sat, until 2pm on Sun Sunday Dec 4 -
+
@@ -2923,7 +2951,7 @@ Probably focus on grabbing the audio first and seeing what’s worth keeping Make a table of the form -
+
@@ -3233,12 +3261,12 @@ mpv –vf=negate $url export SLUG=the ID of the talk -- [TO\_STREAM -> PLAYING](#org1e12a03):stream: +- [TO\_STREAM -> PLAYING](#org29019ab):stream: - [CLOSED\_Q -> OPEN\_Q](#open) - [OPEN\_Q -> TO\_ARCHIVE](#archive) - + ### TO\_STREAM -> PLAYING :stream: @@ -5671,7 +5699,7 @@ Sacha ### CANCELLED Draft e-mail to send speakers who may need to do it live -### TODO Make sure IRC talks get BBB checkin information if they need to do it live :mail: +### DONE Make sure IRC talks get BBB checkin information if they need to do it live :mail: survey, orgyear, lspbridge, eev, python diff --git a/2022/organizers-notebook/index.org b/2022/organizers-notebook/index.org index 62c4ffd3..a851aeeb 100644 --- a/2022/organizers-notebook/index.org +++ b/2022/organizers-notebook/index.org @@ -168,17 +168,18 @@ SCHEDULED: <2022-11-28 Mon> :LOGBOOK: CLOCK: [2022-11-27 Sun 15:30] :END: - +**** Creating the files ffmpeg -y -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=48000 -loop 1 -r 20 -t 10 -i sorry.png -c:v libvpx -c:a libvorbis -color_primaries 1 -color_trc 1 -colorspace 1 -crf 30 -g 120 -minrate 1.5M -b:v 1500 -g 120 -maxrate 1.5M -cluster_time_limit 5100 -shortest sorry.webm - + +ffmpeg -y -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=48000 -loop 1 -r 20 -t 10 -i sorry.png -vf scale=854:480 -c:v libvpx -c:a libvorbis -color_primaries 1 -color_trc 1 -colorspace 1 -crf 30 -g 120 -minrate 1.5M -b:v 1500 -g 120 -maxrate 1.5M -cluster_time_limit 5100 -shortest sorry-480p.webm + icecast 2.4.4 Stream #0:0: Video: vp8, yuv420p(tv, bt709, progressive), 1280x720, SAR 1:1 DAR 16:9, 20 fps, 20 tbr, 1k tbn, 1k tbc (default) Stream #0:1: Audio: vorbis, 48000 Hz, stereo, fltp (default) Okay. I can ffmpeg to /gen-sorry.webm with orga@live0:/usr/share/icecast2/web$ ffmpeg -r 20 -re -stream_loop -1 -i gen-fallback.webm -f webm -content_type video/webm -c:a copy -c:v copy icecast://emacsconf:$PASSWORD@localhost:8001/gen-sorry.webm - - +***** TODO [#C] Add test pattern to part of the screen ***** gen Input #0, matroska,webm, from 'http://live0.emacsconf.org:8001/gen.webm': @@ -200,7 +201,14 @@ Input #0, matroska,webm, from 'http://live0.emacsconf.org:8001/gen.webm': Duration: N/A, start: 19.473000, bitrate: N/A Stream #0:0: Video: vp8, yuv420p(tv, bt709, progressive), 1280x720, SAR 1:1 DAR 16:9, 20 fps, 20 tbr, 1k tbn, 1k tbc (default) Stream #0:1: Audio: vorbis, 48000 Hz, stereo, fltp (default) - +**** DONE Create fallback for 480p as well +CLOSED: [2022-11-28 Mon 19:59] +:PROPERTIES: +:Effort: 0:30 +:END: +:LOGBOOK: +CLOCK: [2022-11-28 Mon 19:00]--[2022-11-28 Mon 19:59] => 0:59 +:END: **** DONE Create fallback video CLOSED: [2022-11-27 Sun 16:25] :LOGBOOK: diff --git a/2022/watch/dev.md b/2022/watch/dev.md index 3400a785..7181410a 100644 --- a/2022/watch/dev.md +++ b/2022/watch/dev.md @@ -11,10 +11,10 @@
Alternatively, load https://live0.emacsconf.org/dev.webm or https://live0.emacsconf.org/dev-480p.webm (low-res) in a streaming media player such as MPV.

Watch - Pad and Q&A links - Chat - Schedule | Tracks: General - Development
treesitter (pad, #emacsconf-dev, speaker nick: meain) - lspbridge (pad, #emacsconf-dev, speaker nick: manateelazycat) - asmblox (pad, BBB) - wayland (pad, BBB) - sqlite (pad, BBB) - mail (pad, BBB) - maint (pad, BBB) - eev (pad, #emacsconf-dev) - python (pad, #emacsconf-dev) - haskell (pad, BBB) - rde (pad, BBB) - justl (pad, #emacsconf-dev) - rms (pad, Moderated via Mumble, ask questions via pad or IRC) - detached (pad, BBB) - eshell (pad, BBB) - async (pad, BBB) - dbus (pad, BBB) - localizing (pad, BBB)
-
Watch - Pad and Q&A links - Chat - Schedule | Tracks: General - Development
Chat: emacsconf-dev on libera.chat
+
Watch - Pad and Q&A links - Chat - Schedule | Tracks: General - Development
Chat: emacsconf-dev on libera.chat
- +
Watch - Pad and Q&A links - Chat - Schedule | Tracks: General - Development
- -
Watch pageIRC channel (libera.chat)Alternative for streaming playerLow res
emacsconf-gen${stream}gen-480p.webm
emacsconf-dev${stream}dev-480p.webm
+emacsconf-genhttps://live0.emacsconf.org/gen.webmgen-480p.webm +emacsconf-devhttps://live0.emacsconf.org/dev.webmdev-480p.webm Graphical view of the schedule Schedule for Saturday Saturday 9:00- 9:05 Saturday opening remarks sat-open 9:05- 9:25 Emacs journalism (or everything's a nail if you hit it with Emacs) journalism 9:45- 9:55 Back to school with Emacs school 10:05-10:15 How to incorporate handwritten notes into Emacs Orgmode handwritten 10:45-11:05 Writing and organizing literature notes for scientific writing science 11:25-11:35 The Emacs Buddy initiative buddy 1:00- 1:20 Attending and organizing Emacs meetups meetups 1:40- 1:55 Linking personal info with Hyperbole implicit buttons buttons 2:15- 2:40 Real estate and Org table formulas realestate 3:00- 3:25 Health data journaling and visualization with Org Mode and GNUplot health 3:45- 4:05 Edit live Jupyter notebook cells with Emacs jupyter 4:50- 4:55 Saturday closing remarks sat-close 10:00-10:15 Tree-sitter beyond syntax highlighting treesitter 10:25-10:45 lsp-bridge: complete asynchronous LSP client lspbridge 10:55-11:15 asm-blox: a game based on WebAssembly that no one asked for asmblox 11:25-11:35 Emacs should become a Wayland compositor wayland 1:00- 1:25 Using SQLite as a data source: a framework and an example sqlite 1:50- 2:30 Revisiting the anatomy of Emacs mail user agents mail 2:50- 3:10 Maintaining the Maintainers: Attribution as an Economic Model for Open Source maint 3:35- 3:40 Bidirectional links with eev eev 3:50- 3:55 Short hyperlinks to Python docs python 4:05- 4:35 Haskell code exploration with Emacs haskell 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM Schedule for Sunday Sunday 9:00- 9:05 Sunday opening remarks sun-open 9:05- 9:25 Results of the 2022 Emacs Survey survey 9:35- 9:45 This Year in Org orgyear 9:55-10:20 Build a Zettelkasten with the Hyperbole Rolodex rolodex 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten) orgsuperlinks 11:10-11:20 orgvm: a simple HTTP server for org orgvm 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode hyperorg 1:50- 2:15 Org workflows for developers workflows 2:35- 2:55 GRAIL---A Generalized Representation and Aggregation of Information Layers grail 3:25- 3:45 Putting Org Mode on the Indieweb indieweb 4:05- 4:15 Emacs development updates devel 4:25- 4:35 Fanfare for the Common Emacs User fanfare 4:50- 5:00 Sunday closing remarks sun-close 10:00-10:25 rde Emacs introduction rde 10:50-11:05 justl: Driving recipes within Emacs justl 11:15-11:35 What I'd like to see in Emacs rms 1:00- 1:15 Getting detached from Emacs detached 1:40- 1:55 Top 10 reasons why you should be using Eshell eshell 2:20- 2:40 Emacs was async before async was cool async 3:15- 3:35 The Wheels on D-Bus dbus 4:00- 4:10 Pre-localizing Emacs localizing 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM \ No newline at end of file -- cgit v1.2.3