tag:blogger.com,1999:blog-51881219421756155932024-03-16T12:09:08.414+11:00Lindqvist -- a blog about Linux and Science. Mostly.Lindqvist - a blog about Linux and Science. Mostly.lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.comBlogger676125tag:blogger.com,1999:blog-5188121942175615593.post-85934838182553093742024-03-03T23:50:00.006+11:002024-03-03T23:52:33.605+11:00677. Cisco Anyconnect on debian 12.5 -- certificate issues<p> If you're getting <br /><br />"AnyConnect was not able to establish a connection to the specified secure gateway. Please try connecting again."<br /><br />and<br /><br />"The certificate on the secure gateway is invalid. A VPN connection will not be established" <br /><br />when you're using Cisco AnyConnect on Debian 12 and over, it's because of read permissions (you can confirm by running vpnui with gksu)). The solution is given here: <a href="https://community.cisco.com/t5/vpn/user-cannot-use-ac-vpn-after-upgrade-to-linux-debian-12-but-root/td-p/4984583" target="_blank">Link</a></p><p>In brief, you'll need to edit /opt/cisco/anyconnect/AnyConnectLocalPolicy.xml and change </p><p><BypassDownloader>false</BypassDownloader><ExcludeFirefoxNSSCertStore><b><span style="color: red;">false</span></b></ExcludeFirefoxNSSCertStore><ExcludePemFileCertStore>false</ExcludePemFileCertStore></p><div>to</div><div><br /></div><div><div><BypassDownloader>false</BypassDownloader><br /><ExcludeFirefoxNSSCertStore><b><span style="color: red;">true</span></b></ExcludeFirefoxNSSCertStore></div><div><ExcludePemFileCertStore>false</ExcludePemFileCertStore></div></div><div><br /></div><div><br /></div>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-34906162842250402422023-10-09T18:10:00.000+11:002023-10-09T18:10:19.008+11:00676. Mixed basis set with gaussian when continuing from a chk-file<p> I'm currently working with computations on paramagnetic species, so being able to read the geometry from the chk-file is important in order to avoid having to define the multiplicities of all the segments of the molecule. </p><p>I also can't use def2-tzvp for the entire molecule since the .chk files during freq cals become too big for my current storage allocation (>500 gb). The work is exploratory at the moment, so compromises are OK.</p><p>I first run a calc with a small basis set:</p>
<pre><verbatim>
%nprocshared=28
%Mem=24gb
%Chk=I1_hs.chk
#P uPBE1PBE/def2svp 5D 7F Punch=(MO) Pop=() guess=(fragment=8,only) nosymm
intermediate 1, pbe0/def-svp.
0 9 -2 1 0 1 0 1 -3 1 -1 1 0 1 4 4 2 6
S(fragment=1) -7.953777000 -0.003180000 -2.912460000
O(fragment=1) -3.008379000 -0.432531000 -1.322496000
...
--Link1--
%nprocshared=28
%mem=24gb
%chk=I1_hs.chk
#P uPBE1PBE/chkbasis 5D 7F Opt=() SCRF=(PCM,Solvent=water) Punch=(MO) Pop=() guess=read geom=allcheck nosymm
</verbatim></pre>
I then want to optimise the structure obtained at def2-svp using a mixed basis set where I use def2-tzvp for all the cobalt centres, and def2-svp for the organic bits.<pre><verbatim>
%nprocshared=28
%Mem=24gb
%oldChk=I1_hs.chk
%chk=I1_hs_tzvp.chk
#P uPBE1PBE/genecp 5D 7F Opt=() SCRF=(PCM,Solvent=water) Punch=(MO) Pop=() guess=read geom=allcheck nosymm
<span style="color: #2b00fe;">C H N O 0
def2svp
****
Co 0
def2tzvp
****</span>
<span style="color: red;">Co 0
def2</span>
</verbatim><br /></pre>
The basis set definitions are in blue, and the ecp bit is in red.lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-3313721922317519492022-11-22T20:54:00.006+11:002022-11-25T23:39:14.253+11:00675. Surviving a migration to Outlook 365 in a Linux-hostile environment<p> At work we were just migrated to o365 ('M365' as they call it), and :</p><p>* they've disabled forwarding (so can't automatically forward my mail to e.g. a gmail account)</p><p>* they've disabled access for all email clients other than Outlook</p><p><br /></p><p>This happened half a year ago to the students at my university, and here's the solution one of them sent me:</p><p><b>1.</b> Get evolution-ews</p><p> -- on thunderbird you have the non-free (as in beer) options of OWL for exchange and ExQuilla</p><p>-- <a href="https://davmail.sourceforge.net/">DAVmail</a> may also be a solution, but I haven't managed to get it to work. It will act as a layer between your mail client (e.g. thunderbird) and the EWS server, allowing you to continue using e.g. thunderbird without having to install anything.</p><p><b>2.</b> Create a 'New Mail Account':</p><p><b>Identity:</b> do whatever is appropriate for you organisation. Disable 'Look up mail server ...'</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoPwvp1K91z5iEVIXNW4sEXt_rZUSYoMXGNRGAbQ1QnrEiHkBZru6b-6wo6Y5KQpRtcyS4hVaFNfZXOqvX1vymHVpodod1bK3IuRyAuN8DqvoURQs87nIP2-Zc2N9lFsgwyGseq8ANmME__-czjB1lDizIwbfGSZkAJbX32GKr6MO-rx7_L8q0ho5N3g/s843/Screenshot%20from%202022-11-22%2010-43-52.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="746" data-original-width="843" height="283" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoPwvp1K91z5iEVIXNW4sEXt_rZUSYoMXGNRGAbQ1QnrEiHkBZru6b-6wo6Y5KQpRtcyS4hVaFNfZXOqvX1vymHVpodod1bK3IuRyAuN8DqvoURQs87nIP2-Zc2N9lFsgwyGseq8ANmME__-czjB1lDizIwbfGSZkAJbX32GKr6MO-rx7_L8q0ho5N3g/s320/Screenshot%20from%202022-11-22%2010-43-52.png" width="320" /></a><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjm1BB4yqtAoPRHglxRgDdna0uJaDIa3RcvJ39WPp7fpBctc0IlQUme3C-bogRGZytJa83hgzIOEInKhy79yLTgL9c7VDzjsSZvqiYOo44OhiHTlEype1LBc8UfrKZtBAH2UFr3Zc8QAxQXKq21TH4ahiG9SBUAQe_tS4zn6nI8zl9gPLPTG81XpYZQhw/s735/Screenshot-from-2022-11-22-11-02-00-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="727" data-original-width="735" height="317" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjm1BB4yqtAoPRHglxRgDdna0uJaDIa3RcvJ39WPp7fpBctc0IlQUme3C-bogRGZytJa83hgzIOEInKhy79yLTgL9c7VDzjsSZvqiYOo44OhiHTlEype1LBc8UfrKZtBAH2UFr3Zc8QAxQXKq21TH4ahiG9SBUAQe_tS4zn6nI8zl9gPLPTG81XpYZQhw/s320/Screenshot-from-2022-11-22-11-02-00-1.png" width="320" /></a></div><br /></div><br /><p><b>Receiving Email</b>: Add the appropriate username for connecting to the mail server.</p><p><b>Host URL:</b> use https://outlook.office365.com/EWS/Exchange.asmx -- it's the same for all organisations these days.</p><p><b>Authentication type</b>: OAUTH2 (Office 365)</p><p><b>Check</b> 'Override Office365 OAuth2 settings'</p><p>Tenant: leave empty</p><p><a href="https://learn.microsoft.com/en-us/troubleshoot/azure/active-directory/verify-first-party-apps-sign-in" target="_blank">Application ID</a><b>:</b> d3590ed6-52b3-4102-aeff-aad2292ab01c</p><p><a href="https://googleapis.dev/ruby/google-api-client/v0.36.3/file.oauth-installed.html#urn_ietf_wg_oauth_2_0_oob" target="_blank">Redirect URI</a>: urn:ietf:wg:oauth:2.0:oob</p><p><br /></p><p>Then click on <b>Fetch URL</b>. This should populate the OAB URL field.</p><p><br /></p><p>You should now be done.</p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-87446264853647738192022-08-19T23:13:00.005+10:002022-08-19T23:13:55.004+10:00674. Suddenly can't find USB audio devices (pulseaudio, debian)<p> Sometimes only the onboard audio devices show up as being available in gnomeusing pulseaudio. Your usb devices for some reason don't show up. This has occured at some very inopportune moments, such as during online teaching.</p><p><br /></p><p>If that happens, unplug/turn off the USB device, and run</p><p>pulseaudio -k && pactl load-module module-detect</p><p>then turn on the USB device again.</p><p><br /></p><p>It should now be found.</p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-59879712014727968862022-01-01T20:15:00.006+11:002022-01-01T20:25:52.486+11:00673. "Better Minecraft [Forge]" server for version 1.16.5<p>In <a href="http://verahill.blogspot.com/2021/12/672-modded-minecraft-server-on-linux.html">post 672</a> I showed how to set up a better minecraft server for version 1.18. As it turns out, if you want to play Better Minecraft you'll want version 1.16.5, since most of the mods aren't yet available for minecraft 1.18.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjOdt4-91ZaxZEjVdc3nX-kyFqNNtnDAhM3DXm-oK2oGL2HVuAfcd8iTPWDZUqKzuk_d0NrhofOJQhdx6FTDJQuwbRwTUNXMadSNnjZIxu-8pVhyNPPeDN34T5M2tBBAtZ0CdwOCcMIhqV2NWY9acUxVuji1de3tOx22UgVw2z8H0cRlGlXaRl8XsmfVQ=s857" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="514" data-original-width="857" height="192" src="https://blogger.googleusercontent.com/img/a/AVvXsEjOdt4-91ZaxZEjVdc3nX-kyFqNNtnDAhM3DXm-oK2oGL2HVuAfcd8iTPWDZUqKzuk_d0NrhofOJQhdx6FTDJQuwbRwTUNXMadSNnjZIxu-8pVhyNPPeDN34T5M2tBBAtZ0CdwOCcMIhqV2NWY9acUxVuji1de3tOx22UgVw2z8H0cRlGlXaRl8XsmfVQ=s320" width="320" /></a></div><br /><p><br /></p><p>The instructions here are adopted and adapted from <a href="https://minecraft.fandom.com/wiki/Tutorials/Setting_up_a_Minecraft_Forge_server">https://minecraft.fandom.com/wiki/Tutorials/Setting_up_a_Minecraft_Forge_server</a></p><p><b>1. Download the following files and put them in an appropriate folder:</b></p><p><a href="https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html">https://files.minecraftforge.net/net/minecraftforge/forge/index_1.16.5.html</a></p><p><a href="https://www.curseforge.com/minecraft/modpacks/better-minecraft-modpack/files/3585404">https://www.curseforge.com/minecraft/modpacks/better-minecraft-modpack/files/3585404</a></p><p><b>2. Next, do the following</b></p><p>First install the server by running this in the terminal</p><p><i>java -jar forge-1.16.5-36.2.20-installer.jar --installServer</i></p><div><div>It should give output similar to this:</div><div></div></div><blockquote><div><div>JVM info: Debian - 17-ea - 17-ea+19-Debian-1</div><div>java.net.preferIPv4Stack=true</div><div>Found java version 17-ea</div><div>Target Directory: .</div><div>Data kindly mirrored by CreeperHost at https://www.creeperhost.net/</div><div>Extracting main jar:</div><div> Extracted successfully</div><div>Considering minecraft server jar</div></div><div>...</div><div><br /></div><div><div>The server installed successfully</div><div>You can delete this installer file now if you wish</div></div><div></div></blockquote><div><br /></div><div>Next do this to unpack and generate the eula.txt file:</div><div><i>java -jar minecraft_server.1.16.5.jar</i></div><div><div></div></div><blockquote><div><div>[07:39:16] [main/ERROR]: Failed to load properties from file: server.properties</div><div>[07:39:16] [main/WARN]: Failed to load eula.txt</div><div>[07:39:16] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.</div></div><div></div></blockquote><div>Edit eula.txt and change eula to true:</div><div><div><blockquote> eula=true</blockquote></div></div><div><b>3. Launch the server</b></div><div>On debian 11.1 the server crashed with openjdk 11 and 17. However, it worked with openjdk 8.</div><div><br /></div><div>Instead I launched the server with</div><div><i>/usr/lib/jvm/java-8-openjdk-amd64/bin/java -Xmx10G -jar forge-1.16.5-36.2.20.jar</i></div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjnhTH0Y6LW--zAS2yGU1zm4pxZBxmr8W2ZCwpSiKw1y3eWJqULMKMGXZPEoakNoYQb2i1hheiPzz-puKuSzN6HC59xzxMxUtUK3rlftZ2Aa12MEnNpVeZnnWdvoEovchZVQg62WzKbQYurfNijz-OjT7a6MlQXx4rHWXewbHsvqvKGYLMw_8oTMXOkXg=s1265" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="722" data-original-width="1265" height="183" src="https://blogger.googleusercontent.com/img/a/AVvXsEjnhTH0Y6LW--zAS2yGU1zm4pxZBxmr8W2ZCwpSiKw1y3eWJqULMKMGXZPEoakNoYQb2i1hheiPzz-puKuSzN6HC59xzxMxUtUK3rlftZ2Aa12MEnNpVeZnnWdvoEovchZVQg62WzKbQYurfNijz-OjT7a6MlQXx4rHWXewbHsvqvKGYLMw_8oTMXOkXg=s320" width="320" /></a></div><br /><div><br /></div><div>Note that I'm dedicating 10Gb of RAM to the server (I have 32 GB). You might want/need less.</div><div><br /></div><div><br /></div><div><br /></div><div>Enjoy!</div>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-10072501207808924172021-12-22T20:36:00.003+11:002021-12-22T20:36:33.934+11:00672. Modded minecraft server on linux (Better Minecraft [FABRIC])<p>My son is now of the age where he's interested in playing computer games, and minecraft is popular among his friends. But it can't just be minecraft, it has to be <a href="https://www.curseforge.com/minecraft/modpacks/better-minecraft-modpack">Better Minecraft</a>.</p><p><b>Client</b></p><p>Since curseforge doesn't have a linux-installer, we're using <a href="https://gdevs.io/">GDLauncher</a> (as an AppImage) to run the minecraft client. Once GDLauncher is running you can install an instance of Better Minecraft by clicking on the "+" in the lower left corner, and clicking onthe CurseForrge tab, and searching for Better. We're using the [FABRIC] version.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiPCwVg460d-FsagMqcfRfacJcGYh1YBJbWZRlECcTVUicP4tdOPsV2GvDEGtKynpvRG8OFV-jU7dTHEJbSfsDARXwVhmeSi36lkWbHyN1QUlM1x9STtJ0AhVS0RS61D-iDPegf6yx_SyRLmafGjtFE22iMzAy-I_YhZwj-ucdLKg7DRM6lYNnkm-CWGA=s1094" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="697" data-original-width="1094" height="204" src="https://blogger.googleusercontent.com/img/a/AVvXsEiPCwVg460d-FsagMqcfRfacJcGYh1YBJbWZRlECcTVUicP4tdOPsV2GvDEGtKynpvRG8OFV-jU7dTHEJbSfsDARXwVhmeSi36lkWbHyN1QUlM1x9STtJ0AhVS0RS61D-iDPegf6yx_SyRLmafGjtFE22iMzAy-I_YhZwj-ucdLKg7DRM6lYNnkm-CWGA=s320" width="320" /></a></div><br /><p><br /></p><p>You might have to adjust the amount of RAM afforded to minecraft.</p><p><b>The Server:</b></p><p>This was a bit trickier, until I found this: <a href="https://fabricmc.net/wiki/install">https://fabricmc.net/wiki/install</a></p><p>Follow the instructions under 'Server (simple method)' i.e.</p><p><b>1.</b> Download jar from <a href="https://fabricmc.net/use/server/">https://fabricmc.net/use/server/</a> to a folder where you want your server to reside, e.g. ~/.minecraft_server</p><p>(or use <br /><i>curl -OJ https://meta.fabricmc.net/v2/versions/loader/1.18.1/0.12.12/0.10.2/server/jar </i>)</p><p><b>2. </b>Run<br /><i>java -Xmx2G -jar fabric-server-mc.1.18.1-loader.0.12.12-launcher.0.10.2.jar nogui</i></p><p>It'll fail, with a message about the EULA.</p><p>Edit eula.txt and change <i>false</i> to <i>true</i>.</p><p><b>3.</b> Download Fabric API from <a href="https://www.curseforge.com/minecraft/mc-mods/fabric-api">https://www.curseforge.com/minecraft/mc-mods/fabric-api</a> and put it in the mods folder (e.g. ~/.minecraft_server/mods)</p><p><b>4.</b> Download the Better Minecraft [FABRIC] Server Pack from <a href="https://www.curseforge.com/minecraft/modpacks/better-minecraft-fabric/files/3574082">https://www.curseforge.com/minecraft/modpacks/better-minecraft-fabric/files/3574082</a></p><p><b>5.</b> Move the files from the server pack to the server directory i.e. replace the mods folder, and add the config folder + the images. The instructions are otherwise in the README.txt</p><p><b>6.</b> Launch the server <br /><i>java -Xmx2G -jar fabric-server-mc.1.18.1-loader.0.12.12-launcher.0.10.2.jar</i></p><p><b>7.</b> Using GDLauncher to launch your client, then go to Multiplayer, add a server (e.g. localhost, 127.0.0.1), and hopefully it'll show up:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhCCGYnQe1iEyVxd-1qFbO1APojbA_V53YrDAgeMSOvrZJjU-B43Mlir4vY7YIs_ikYZnwlXdPQ7S_uHAPIYY0ugIuNqhYCrEhLi4bog5RqoYv0gusllQEAGxicPXCV30z53Fh-K9mgz45qwCe1MLA0On8hGTzn7pd8atB723RuO3mtv0ENO_McW0cZiQ=s856" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="516" data-original-width="856" height="193" src="https://blogger.googleusercontent.com/img/a/AVvXsEhCCGYnQe1iEyVxd-1qFbO1APojbA_V53YrDAgeMSOvrZJjU-B43Mlir4vY7YIs_ikYZnwlXdPQ7S_uHAPIYY0ugIuNqhYCrEhLi4bog5RqoYv0gusllQEAGxicPXCV30z53Fh-K9mgz45qwCe1MLA0On8hGTzn7pd8atB723RuO3mtv0ENO_McW0cZiQ=s320" width="320" /></a></div><br /><p><br /></p><p>I think this server will be a 'normal' one with default settings i.e. NOT creative mode.</p><p>To change to creative mode <a href="https://www.quora.com/Minecraft-video-game-How-do-you-change-to-creative-mode-in-multiplayer#:~:text=In%20the%20chat%2C%20type%20%22%2F,to%20get%20into%20creative%20mode.">follow this</a>: </p><p>a) in the server window, type /op YourName to make yourself an operator</p><p>b) then in the minecraft client, type /gamemode 1</p><p><br /></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-86132519107208658502021-03-25T21:22:00.001+11:002021-03-25T21:22:17.852+11:00671. External tools to make up for shortcomings in Canvas LMS<p>Not a fan of Canvas LMS at all. There are too many things missing, too many things that don't work well, and ultimately I feel it does not work well for me as a teacher.</p><p>In contrast, I felt that on the whole Moodle offered the tools that I needed: a well-functioning quiz tool, a good forum, and good tools for making exams.</p><p>T<b>he forum</b> in canvas is confusing to the students, and is hard to organize. </p><p>The quiz function is very limited in scope, and does not offered a good overview of responses. From what I understand you can de-anonymize reponses as well. It's not a good tool for <b>course evaluations</b> for these reasons. It also doesn't work well for getting responses from discussions as part of a flipped classroom.</p><p>Also, you can't attach more than one document to a question when answering. Even worse, attached documents that are uploaded by students end up in THEIR accounts, so that they can e.g. delete them after they've taken an exam. Anything to do with <b>exams</b>/quizzes should be immutable.</p><p>I don't have a solution to that last issue, but here's what I've done with the rest:</p><p><b>Course evaluation: </b></p><p><a href="http://mentimeter.com">mentimeter.com</a>. We have a <b>license</b>. The course evaluations look great and are easy to interpret.</p><p>Otherwise I'd use google forms.</p><p><b>Feedback during flipped classroom discussions: </b></p><p><a href="https://www.google.com/forms/about/" target="_blank">Google Forms</a>. It works well, and gives an easy overview of responses in real time. If we didn't have mentimeter.com I'd use this for the course eval as well.</p><p><b>Forum:</b></p><p><a href="https://www.proboards.com/" target="_blank">ProBoards</a>. I also looked att making a Google Group, but that worked about the same as the Canvas forum. ProBoards looks and works like a real forum, and you can let students self-register. You can also create custom names/URLs for your forum(s) -- mychemforums.proboards.com.</p><p><br /></p><p>[Examination: For now we use moodle for this, although we've been told to phase this out. Instead we're going to be using <a href="https://www.inspera.com/" target="_blank">Inspera</a>, which at a glance if anything seems less suitable for chemistry exams than moodle. Time, and testing, will tell.]</p><p><br /></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-57153281000468724642021-03-09T19:25:00.003+11:002021-03-09T19:25:27.808+11:00670. Issues with the RSC latex template -- text shifted on debian buster<p>Using the RSC latex template -- last updated 2016 -- works fine on debian stretch. However, on debian buster the text is screwed up on all pages except for the first one: the header is way too big, and the text runs off the page at the bottom.</p><p>After having spent a lot of time looking at log files, comparing installed packages on different machines, and generally not making any progress, I finally found this:</p><p><a href="https://tex.stackexchange.com/questions/495662/rsc-template-fancyhdr-doesnt-respond-well">https://tex.stackexchange.com/questions/495662/rsc-template-fancyhdr-doesnt-respond-well</a></p><p>which links to </p><p><a href="https://tex.stackexchange.com/questions/491859/what-has-changed-in-latex-that-means-the-rsc-template-no-longer-works#comment1242180_491859">https://tex.stackexchange.com/questions/491859/what-has-changed-in-latex-that-means-the-rsc-template-no-longer-works#comment1242180_491859</a></p><p>Since links die occasionally I'll summarize it here (I DID NOT COME UP WITH THIS SOLUTION):</p><p>Fancyhdr has been updated between stretch and buster, and while the maintainers at Overleaf have fixed the RSC template and notified RSC of the changes necessary, the current (8/3/2021) version of the template is still faulty.</p><p>To fix you can either </p><p>1) edit the .tex file template itself</p><p>a) Comment out </p><p><span style="color: red;">\fancyhead[C]{\includegraphics[width=18.5cm]{head_foot/header_bar}}<br />\fancyhead[L]{\hspace{0cm}\vspace{1.5cm}\includegraphics[height=30pt]{head_foot/PCCP}}<br />\fancyhead[R]{\hspace{0cm}\vspace{1.7cm}\includegraphics[height=55pt]{head_foot/RSC_LOGO_CMYK}}</span></p><p>b) find vspace{3cm} after \twocolumn[..] and add</p><p><span style="color: red;">{\includegraphics[height=30pt]{head_foot/journal_name}\hfill%<br /> \raisebox{0pt}[0pt][0pt]{\includegraphics[height=55pt]{head_foot/RSC_LOGO_CMYK}}%<br /> \\[1ex]%<br /> \includegraphics[width=18.5cm]{head_foot/header_bar}}\par</span></p><p>right before it.</p><p>Then change \vspace{3cm} to<span style="color: red;"> \vspace{1em}</span></p><p><b>or </b></p><p>2) add some extra .sty files to the folder with your .tex file. Those files are:<br />balancy.sty, caption.sty, caption3.sty, fancyhdr.sty, mchem.sty and secsty.sty</p><p>They can be had from <a href="https://github.com/bardsoftware/template-RSC/tree/master/Paper">https://github.com/bardsoftware/template-RSC/tree/master/Paper</a></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-10645726286712303422020-12-07T07:38:00.003+11:002020-12-07T07:38:59.684+11:00669. Checking how many students attended a zoom lecture, afterwards<p> This is an easy one, but you need to know that 1) the option is there and 2) where to look.</p><p>Go to the web-interface to zoom at your institution, and click on log in:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0QEegdoeZdd94fJ_v-yNSw4bQbDC3d8ocd1X7Z2lxpezXJnsBzoDTsjra74_AbPqwe6NF8NPRt9lEqYicoYoIgIcMIf-RzKYFOx4kIu0Pgg9OV_jifTun936lkv7EKljTDIULrVqpRgDa/s642/Screenshot+from+2020-12-06+21-32-07.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="418" data-original-width="642" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0QEegdoeZdd94fJ_v-yNSw4bQbDC3d8ocd1X7Z2lxpezXJnsBzoDTsjra74_AbPqwe6NF8NPRt9lEqYicoYoIgIcMIf-RzKYFOx4kIu0Pgg9OV_jifTun936lkv7EKljTDIULrVqpRgDa/s320/Screenshot+from+2020-12-06+21-32-07.png" width="320" /></a></div><br /><p>Now that you're in, go to to Reports:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlQuMwEAmtPc-QsKWuiLeUM4LpNmjewI-BOFjm_gDZMdVnhFe42AFhnsG98uNyyPrQQCJ3JOHvwCq2poF28AdE9XSsFJ0TIttWbYS938fwXiUVtV-tYADfaZ2dywmBEqwFNE6ESrtCsAKT/s419/Screenshot+from+2020-12-06+21-33-37.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="419" data-original-width="325" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlQuMwEAmtPc-QsKWuiLeUM4LpNmjewI-BOFjm_gDZMdVnhFe42AFhnsG98uNyyPrQQCJ3JOHvwCq2poF28AdE9XSsFJ0TIttWbYS938fwXiUVtV-tYADfaZ2dywmBEqwFNE6ESrtCsAKT/s320/Screenshot+from+2020-12-06+21-33-37.png" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><p>Then go to Usage:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOWiFUa0fiE6kXL0KCByoYUbhTOQdMXMod1qHjoIakCtXV4456noCdrWWNmRX1Fa5R4KHYGZWjRqTsmp7L8IgyB0QRkXpXboDgmFu6sRldy8tVPoJ5N3yW20RjikrTnySWjGrwbxPBOwFy/s710/Screenshot+from+2020-12-06+21-34-04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="293" data-original-width="710" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOWiFUa0fiE6kXL0KCByoYUbhTOQdMXMod1qHjoIakCtXV4456noCdrWWNmRX1Fa5R4KHYGZWjRqTsmp7L8IgyB0QRkXpXboDgmFu6sRldy8tVPoJ5N3yW20RjikrTnySWjGrwbxPBOwFy/s320/Screenshot+from+2020-12-06+21-34-04.png" width="320" /></a></div><br /><p><br /></p><p>Now, search for the time period that you're interested in:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiINxNy5B6c8LhOjuoiXpCsJtG-BWwuxFDxVaSE0Pnhknuevm09oz6llax8bv4sUuOmlFEWIytg_crDCglgjje0ztMvHNoJnfA8PJAyX7VU3RKwU3NvhNFOC6w7wgprRvaieqdc4908k1PA/s662/Screenshot+from+2020-12-06+21-35-39.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="219" data-original-width="662" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiINxNy5B6c8LhOjuoiXpCsJtG-BWwuxFDxVaSE0Pnhknuevm09oz6llax8bv4sUuOmlFEWIytg_crDCglgjje0ztMvHNoJnfA8PJAyX7VU3RKwU3NvhNFOC6w7wgprRvaieqdc4908k1PA/s320/Screenshot+from+2020-12-06+21-35-39.png" width="320" /></a></div><br /><p>And click on the number of attendees. Note that if someone gets disconnected, and then reconnect, they're counted twice, so this is not the value you want to use:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6qSuHkwxB-JhPpyx5XObwFHRSkGVs6k3nVUFvUCxV3ffOz-8tOIfKpiqegoCbaoerajj97ombZwNHSgV0sD6WiGX-acMdDrsUclDs0fBKdme5jnouagcZxCgCWeFE2dNsiKWBHUmfuPSS/s673/Screenshot+from+2020-12-06+21-37-04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="99" data-original-width="673" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6qSuHkwxB-JhPpyx5XObwFHRSkGVs6k3nVUFvUCxV3ffOz-8tOIfKpiqegoCbaoerajj97ombZwNHSgV0sD6WiGX-acMdDrsUclDs0fBKdme5jnouagcZxCgCWeFE2dNsiKWBHUmfuPSS/s320/Screenshot+from+2020-12-06+21-37-04.png" width="320" /></a></div><br /><p><br /></p><p>Instead, make sure to click "Show unique users" to see how many students actually attended. You can also export it as a csv file which is probably a good idea since you'll need to count by hand otherwise:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYE6Oaxv28i0Fj_u6ATPNradStASvz6G9SLXBesXpzYNp8xC5Zx7wMtUeANBkuTaKW4KF90dOrdJ_GjWbG9ORtOtoJnNlryaDLxHumXu3LkKtZoQBYFcAmvVgiTd1uGYWPYUAOjwXXg07v/s905/Screenshot+from+2020-12-06+21-37-35.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="175" data-original-width="905" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYE6Oaxv28i0Fj_u6ATPNradStASvz6G9SLXBesXpzYNp8xC5Zx7wMtUeANBkuTaKW4KF90dOrdJ_GjWbG9ORtOtoJnNlryaDLxHumXu3LkKtZoQBYFcAmvVgiTd1uGYWPYUAOjwXXg07v/s320/Screenshot+from+2020-12-06+21-37-35.png" width="320" /></a></div><br /><p><br /></p><p>That's it.</p><p><br /></p><p><br /></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-48022013689568510512020-10-30T23:23:00.009+11:002020-12-07T22:32:35.064+11:00668. Controlling the fan speed of an Nvidia card when you're using the nouveau driver and no xorg.conf<p> My old GT210 has served me well, but I've had a few odd freezes recently, coupled with weird graphics behaviour. It's a pity, since it's a nice, silent fan-less graphics card from way back when: <a href="https://www.gigabyte.com/Graphics-Card/GV-N210SL-1GI#ov">https://www.gigabyte.com/Graphics-Card/GV-N210SL-1GI#ov</a></p><p>Although some of it may be due to switching back and forth between VGA and HDMI output (between an old HP 19'' and my new fancy xp pen display) I ripped it out and replaced it with an almost as ancient GT 520 (<a href="https://www.gigabyte.com/Graphics-Card/GV-N520OC-1GI#ov">https://www.gigabyte.com/Graphics-Card/GV-N520OC-1GI#ov</a>)</p><p>The fan isn't loud, but it's there, and it's distracting since I'm working in a home environment (Corona!).</p><p>Looking online I found these posts:<br /><a href="http://floppym.blogspot.com/2013/07/fan-control-with-nouveau.html">http://floppym.blogspot.com/2013/07/fan-control-with-nouveau.html</a><br /><a href="https://forums.opensuse.org/showthread.php/501517-OS-13-1-Driver-quot-nouveau-quot-Unable-to-command-fan-speed-Nvidia-6800-GS">https://forums.opensuse.org/showthread.php/501517-OS-13-1-Driver-quot-nouveau-quot-Unable-to-command-fan-speed-Nvidia-6800-GS</a><br /><a href="https://www.kernel.org/doc/Documentation/thermal/nouveau_thermal">https://www.kernel.org/doc/Documentation/thermal/nouveau_thermal</a></p><p>So, first to check if fan control is possible:<br /></p>
<block><pre><b>me@indium:~$</b> find /sys -name pwm1_enable
find: ‘/sys/kernel/debug’: Permission denied
/sys/devices/platform/it87.2624/hwmon/hwmon2/pwm1_enable
/sys/devices/platform/it87.2656/hwmon/hwmon3/pwm1_enable
/sys/devices/pci0000:00/0000:00:03.0/0000:05:00.0/hwmon/<span style="color: red;">hwmon0</span>/pwm1_enable
<b>me@indium:~$</b> readlink /sys/devices/pci0000:00/0000:00:03.0/0000:05:00.0/driver
../../../../bus/pci/drivers/<span style="color: red;">nouveau</span>
</pre></block>
<p>Good, and we got the hwmon number -- 0. </p><p>I then created a script called gpufan.sh:</p><pre><block>sudo sh -c "echo 1 > /sys/class/hwmon/hwmon0/pwm1_enable"
sudo sh -c "echo 35 > /sys/class/hwmon/hwmon0/pwm1_min"
sudo sh -c "echo 45 > /sys/class/hwmon/hwmon0/pwm1"
<br /></block></pre>
I set the min% to 35 -- it used to be 65. And I tested my way to 45% as a good compromise between noise and temperature. By default the fan speed was >4,000 rpm. Output from <i>sensors</i> now:<pre><block>
nouveau-pci-0500
Adapter: PCI adapter
GPU core: +0.90 V (min = +0.90 V, max = +1.11 V)
fan1: 2790 RPM
temp1: +34.0°C (high = +95.0°C, hyst = +3.0°C)
(crit = +105.0°C, hyst = +5.0°C)
(emerg = +135.0°C, hyst = +5.0°C)
</block></pre><p></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-58963221242255706272020-10-27T07:34:00.005+11:002020-12-07T22:33:13.529+11:00667. XP PEN/virtual whiteboard during a lecture -- mirroring an application window on linux<p><b>The situation:</b></p><p>We're allowed to teach on campus at the moment, but we're also strongly encouraged to adopt a hybrid model where we stream everything via zoom so that students don't show up if they have flu/cold-like symptoms.</p><p>We've spent the past few years killing off ppt and transitioning to whiteboard/chalk-and-talk. The students love it -- the pace is better, and the lectures become more interactive since we can adjust our teaching to the students' learning. Good stuff. But horrible for streaming -- you can't just point a webcam at a whiteboard and expect a good outcome (although if need be, it can be done -- just use a good camera and write large with a dark pen).</p><p>I have an XP Pen Artist 13.3 Pro (<a href="https://www.parkablogs.com/content/review-xp-pen-artist-133-pro-pen-display">https://www.parkablogs.com/content/review-xp-pen-artist-133-pro-pen-display</a> ) which is fantastic for drawing. A lot of fun, and a potential solution to the whiteboard quandary.</p><div><b>The Problem:</b></div><p>Both the students in the class room and those following the lecture on zoom need to be able to see what you're doing. And since the pen display is a DISPLAY, you need to have your drawing program open on the pen display, and not on the projector (which is also a display).</p><p><b>The Solution:</b></p><p><b>1. </b>Open your drawing window (<a href="http://xournal.sourceforge.net/">xournal,</a> or <a href="https://github.com/xournalpp/xournalpp">xournal+</a>+ or <a href="https://openboard.ch/index.en.html">openboard</a> or <a href="https://krita.org/en/">krita</a>) on your pen display ... display. </p><p><b>2. </b>Then run <b>xwininfo</b> (part of x11-utils) and click on your window. You get a window id, e.g. 36000a</p><p>Then run x11vnc:<br /><i>x11vnc -id 36000a</i></p><p>Note the port number -- likely 5900.</p><p>The window is now being shared via vnc. </p><p><b>3. </b>To see it, use e.g. <i>vinagre</i>, click Connect, set the protocol to vnc and the port to 5900 (and you're presumably connecting to localhost). </p><p>Make sure to enable 'scaling', since many old video projectors have a 4:3 resolution ratio, whereas e.g. the xp pen 13.3 has a 16:9 ratio.</p><p><b>Drag this window to the projector.</b></p><p><b>4. </b>Share the original window via zoom</p><p>Note that I've had issues getting the pen display to map correctly when all three display (laptop, xp pen, and projector) are connected. Turning off the laptop screen solved it.</p><p><b><br />A script:</b></p><p>I've made a script called mirror.sh which starts the x11vnc with the correct id:</p><p><i>winid=`xwininfo |grep "Window id"|gawk '{print $4}'`<br />x11vnc -id $winid</i></p><div><br /></div><div><br /></div><p><br /></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-38637486664277663142020-10-01T20:49:00.005+10:002020-12-07T22:33:39.089+11:00666. Zoom -- multiple booking for a course<p><b>Problem:</b></p><p>Recurring bookings are easy enough to make in zoom, but what do you do if your lectures are given at different times each day?</p><p><b>Solution:</b> </p><p>make a recurring booking e.g. at 8 am, 2 hours, each day for two weeks. 'When' is not important.</p><p>Then go in and edit the booking. You can then change the times for each zoom meeting:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggS07o5ZQAzE6OYPri16DlsKVMNHCWxi4B1aidkyZYtjx3DdQdSLyuV97eZ1B0QQE97a_SLQnneSh0yi-NTYhfhzur23DLaVcuSTOWxs0i-dEJFYyj99sz-TgRQy9sgeAZ1dNnGil-Th_e/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="463" data-original-width="925" height="160" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggS07o5ZQAzE6OYPri16DlsKVMNHCWxi4B1aidkyZYtjx3DdQdSLyuV97eZ1B0QQE97a_SLQnneSh0yi-NTYhfhzur23DLaVcuSTOWxs0i-dEJFYyj99sz-TgRQy9sgeAZ1dNnGil-Th_e/" width="320" /></a></div>You can also delete meetings e.g. those that fall on weekends:<p></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPc_uaAaSTmafB7xnBNX9ctZiiMOTjbhRs1SgqHEVwkfP9ZxxEtIHgzOWhx4pdCPI6vkuYxyiIIWSK1DTGMYUKRTKAtVkpw_rdtsT6oZH-w04uxbhfDcwh3qEBgv_EiI8FU3-pvhxrdYKK/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="583" data-original-width="912" height="205" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPc_uaAaSTmafB7xnBNX9ctZiiMOTjbhRs1SgqHEVwkfP9ZxxEtIHgzOWhx4pdCPI6vkuYxyiIIWSK1DTGMYUKRTKAtVkpw_rdtsT6oZH-w04uxbhfDcwh3qEBgv_EiI8FU3-pvhxrdYKK/" width="320" /></a></div><br /><br /><p></p><p><br /><br /></p><p><br /></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-10102622718419702082020-08-24T23:43:00.003+10:002020-12-07T22:34:12.759+11:00665. Dealing with low gain/low volume in Samson XPD2 by boosting the gain in pulseaudio<p>I've 'solved' this now. See bottom of post.</p><p><b>Old post:</b></p><p> Got the Samson XPD2 now, and it's ... interesting.</p><p><img src="http://www.samsontech.com/site_media/cms/images/product/samson/wireless-systems/xpd-series/xpd2lav/XPD2-Lavalier-Hero-rev2-display.jpg" /></p><p>Even if I crank everything up to the max in linux, I can barely hear what I record in audacity (or anywhere -- it's a linux thing).</p><p>But if I hook up headphones to the headphone jack on the USB dongle the sound is great.</p><p>What figures?</p><p>As usual the first port of call is always dmesg:</p><p>[Sun Aug 23 05:18:02 2020] usb 2-11: new full-speed USB device number 22 using xhci_hcd<br />[Sun Aug 23 05:18:02 2020] usb 2-11: New USB device found, idVendor=17a0, idProduct=1616, bcdDevice= 1.00<br />[Sun Aug 23 05:18:02 2020] usb 2-11: New USB device strings: Mfr=1, Product=2, SerialNumber=0<br />[Sun Aug 23 05:18:02 2020] usb 2-11: Product: Samson RXD wireless receiver<br />[Sun Aug 23 05:18:02 2020] usb 2-11: Manufacturer: Samson Technologies<br /><b><span style="color: red;">[Sun Aug 23 05:18:02 2020] usb 2-11: Warning! Unlikely big volume range (=496), cval->res is probably wrong.<br /></span></b>[Sun Aug 23 05:18:02 2020] usb 2-11: [50] FU [Mic Capture Volume] ch = 1, val = 0/7936/16<br />[Sun Aug 23 05:18:02 2020] input: Samson Technologies Samson RXD wireless receiver as /devices/pci0000:00/0000:00:14.0/usb2/2-11/2-11:1.2/0003:17A0:1616.0012/input/input58<br />[Sun Aug 23 05:18:02 2020] hid-generic 0003:17A0:1616.0012: input,hidraw7: USB HID v1.00 Device [Samson Technologies Samson RXD wireless receiver] on usb-0000:00:14.0-11/input2</p><p><br /></p><p>Linux is normally PnP, but here there seems to be an issue. Time to start reading. Found a similar issue here: <a href="https://bugzilla.redhat.com/show_bug.cgi?id=1070706">https://bugzilla.redhat.com/show_bug.cgi?id=1070706</a></p><p>Will update as/if I fix this.</p><p>Also, I got a female 3.5 mm to female XLR connector so that I can use a better lavalier mic. The connector should be mini-XLR -- a full-size XLR is way too big. </p><p><b>Solution:</b></p><p>What I do now is set the input volume in the terminal using pulseaudio (pacmd/pactl).</p><p>By default you can only set the input volume to 150%, but using the command line you can go as crazy as you like.</p><p>First identify the card index number: </p><p><i>pacm list-sources|egrep "name|index"</i></p><p><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"><b><span style="color: red;"> index: 26</span></b></span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> name: <alsa_input.usb-Samson_Technologies_Samson_RXD_wireless_receiver-00.analog-mono></span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> alsa.name = "USB Audio"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> alsa.subdevice_name = "subdevice #0"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> alsa.card_name = "Samson RXD wireless receiver"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> alsa.long_card_name = "Samson Technologies Samson RXD wireless receiver at usb-0000:00:14.0-2, full sp"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> alsa.driver_name = "snd_usb_audio"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> device.vendor.name = "Samson Technologies Corp."</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> device.product.name = "Samson RXD wireless receiver"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> device.profile.name = "analog-mono"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> alsa.mixer_name = "USB Mixer"</span><br style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px; margin: 0px; padding: 0px;" /><span style="background-color: white; font-family: Monaco, "Andale Mono", "Courier New", Courier, mono; font-size: 11.7px;"> device.icon_name = "audio-card-usb"</span></p><p>Then do (for index 26):</p><p><i>pactl set-source-volume 26 270%</i></p><p>Works great! Of course you can't touch the input slider in the pulseaudio GUI at this point. The next project is to change the pulseaudio source code to allow a higher max volume.</p><p><b>New microphone</b></p><p>I also bought a new microphone to use with the Samson: <a href="https://www.amazon.de/-/en/gp/product/B071937RZZ/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1">https://www.amazon.de/-/en/gp/product/B071937RZZ/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1</a></p><p>The sound is subjectively a lot better and I feel that it has better dynamic range, than with the stock microphone.</p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-74347275756946050562020-08-22T18:02:00.005+10:002020-12-07T22:34:39.887+11:00664. Capturing sound when recording/streaming lectures/videos. A few devices.<p> I'm interested in capturing sound, either during on-campus lectures, or when recording videos, or when lecturing over zoom.</p><p>Here are some of the devices that I own, and what I think:</p><p><b>Logitech C920 webcam with integrated microphone:</b></p><p><img alt="C920 HD Pro Webcam 1" height="181" src="https://assets.logitech.com/assets/65478/c920-pro-hd-webcam-refresh.png" width="210" /></p><p>The sound is ... fine. Even at a few metres distance, actually. Nothing like a proper, dedicated microphone, but way beyond e.g. the microphone you'd find in a laptop.</p><p><b>BlueParrot B350-XT bluetootch headset:</b></p><p><img alt="Jabra Evolve 75" height="219" src="https://www.blueparrott.com/-/media/Images/Blue-Parrott/Products/BlueParrott-B350-XT/V2/TopBannerSlides/B350_XT_1.png" width="229" /></p><p>It's absolutely bloody awful as a sound source. Absolutely fine for listening to music with, but as a headset for recording sound it stinks. The sound during phone calls is fine, but expectations aren't generally very high. Bloody expensive too.</p><p><b>Logitech G930 wireless gaming headset:</b></p><p><img alt="" height="158" src="https://www.komplett.se/img/p/800/775783.jpg" width="210" /></p><p>Decent sound, but lacks dynamic range in terms of the microphone. Won't work well during a live lecture since it covers both ears. Great at keeping sound out, so very good as a headset for listening to music.</p><p><b>Samson XPD2 wireless lavalier microphone:</b></p><p><img height="298" src="http://www.samsontech.com/site_media/cms/images/product/samson/wireless-systems/xpd-series/xpd2lav/XPD2-Lavalier-Hero-rev2-display.jpg" width="373" /></p><p>Have ordered, but not yet received. You can use it as a lav mic, but I'm going to experiment with using the Zoom H1n below as the input (via a 2x 3.5 mm cable plus a 3.55 mm female -> XLR converter), so that I can record on the H1n simultaneously as I live-stream. We'll see how it works out.<br /><br /></p><p>I also bought what is supposed to be a better Lavalier mic (J-082S 044) and a 3.5 mm/XLR adapter:<br /><img height="172" src="https://images-na.ssl-images-amazon.com/images/I/51nDBA1ZKbL._AC_SL1200_.jpg" width="144" /><img height="126" src="https://images-na.ssl-images-amazon.com/images/I/31piePs8DKL._AC_.jpg" width="188" /></p><p><br /></p><p><b>Blue Yeti microphone:</b></p><p><img alt="Yeti microphone image" height="251" src="https://s3.amazonaws.com/cd.bluemic.com/img/yeti/yeti-header-yetisilver-desktop.png" width="149" /><img height="278" src="https://images-na.ssl-images-amazon.com/images/I/61TgA%2BAK70L._AC_SL1390_.jpg" width="276" /></p><p>This is my default microphone for video conferencing and recording videos. It's a great microphone. Cheaper than the crappy B350-XT above. Has several different pickup patterns. I love it. <br /><br />I'm using it together with a boom arm I got off of Amazon ('Neuma Professional Microphone Stand with Pop Protection').</p><p><b>Zom Handy H1n sound recorder:</b><br /><img alt="Zoom H1n 2-Input / 2-Track Portable Handy Recorder ZH1N B&H" height="214" src="https://www.bhphotovideo.com/images/images2500x2500/zoom_zh1n_h1n_handy_recorder_1381744.jpg" width="214" /><img alt="Zoom APH1N Accessory Pack for H1N Handy Recorder | Recorders - Store DJ" height="210" src="https://www.storedj.com.au/Images/ProductImages/ZOO-APH1N.jpg" width="210" /></p><p>This is my favoure toy though. It's small, light and have great sound. It's a stereo microphone when use as a sound recorded. You can also hook it up via USB (and have it powered via USB) and use it as a high-quality MONO microphone when recording videos or video conferencing. You can NOT record at the same time as you're using it as a USB microphone. I also got the Zoom APH 1 N/GE Accessories Bundle.</p><p>The portability makes it great for a number of uses. You can pass it between lecturers that want to record good-quality sound for lecture videos, and it's easy to take home (the Blue Yeti is a heavy beast).</p><p>You can also stick it the podium when giving a lecture and it will capture surprisingly good sound. You can record sound and replace webcam sound in post using e.g. KDENLive. You can attach a lavalier mic and use it to record sound during a live lecture and replace webcam sound in post. And more.</p><p>It has a 3.5 mm mic input and a 3.5 mm headphone output. I'm planning on experimenting with recording on the H1n at the same time as I've got the headphone output connected to the Samson (above) so that I can stream the sound to my laptop, and share it via zoo, since wireless technologies can be unstable in a lecture hall with lots of phones with wifi running (anywhere you have students). We'll see how it works out.</p><p><br /></p><p>----------------<br />Once the audio is taken care of, I plan on using the following for the visual, and use OBS Studio to tie it all together.</p><p><b>Document camera JOURIST DC80</b></p><p><img height="314" src="https://images-na.ssl-images-amazon.com/images/I/618Rc%2BvMB1L._AC_SL1500_.jpg" width="264" /></p><p><img alt="H1n Audio Recorder front view" src="https://zoomcorp.com/static/img/common/trans.png" /><img alt="H1n Audio Recorder front view" src="https://zoomcorp.com/static/img/common/trans.png" /><b>Webcam Logitech C920</b></p><p><img alt="H1n Audio Recorder front view" src="https://zoomcorp.com/static/img/common/trans.png" /><img alt="C920 HD Pro Webcam 1" height="282" src="https://assets.logitech.com/assets/65478/c920-pro-hd-webcam-refresh.png" width="328" /></p><p><br /></p><p>I've also ordered a chromakey set for fancier video production. Will be interesting to see how it turns out.<br /><img height="641" src="https://images-na.ssl-images-amazon.com/images/I/71AX4JNw01L._AC_SL1001_.jpg" width="641" /></p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-32513255886230182582020-08-22T17:42:00.003+10:002020-12-07T22:35:13.205+11:00663. Giving a zoom + on-campus lecture (on linux, win and mac)<p><b>Preamble:</b></p><p>The uni admins aren't making it easy for us. </p><p>I can handle doing everything on-campus, giving good, or occasionally very good, lectures using the white board and making it dynamic by actually engaging with the target, the students. I can often get them to share my excitement over the amazing stuff we're discussing (especially MO theory -- it's my favourite topic, and my favourite lecture). </p><p>I can handle doing everything online if necessary, optimising my lectures to work through zoom or, even better, do away with lectures completely and rely on pre-recorded videos that take advantage of the video format, and use them to flip the class. We can then meet up on zoom to discuss the topics.</p><p>But what we're being asked to do is to focus on on-campus teaching, while making sure that everything is being streamed live online to avoid students from showing up to class when infectious.</p><p>Note that in our lecture halls we don't have computers. We're expected to bring our own, and we use single projectors. We also don't get any help from IT. Nothing is ever recorded here.</p><p>This is incredibly primitive and unprofessional compared to how things were done back in Australia.</p><p><b>What I will show here:</b></p><p>A few approaches to making a lecture work OK for both on-campus and online students simultaneously, and easily. The solutions assume that there's no competency, interest or support from IT.</p><p><b>1. The Basic</b><br />The easiest approach is to start zoom on your laptop, share a set of slides and stream it. You need to think about audio though, and there are a number of wireless solutions.<br /><br />We've been told to use bluetooth headsets, but bluetooth has poor audio. Using 2.4 GHz wireless headsets, like my old logitech G930, gives better audio, but then you can't hear the local audience properly. </p><p>My preferred solution is to use a Samson XPD2: <br /><a href="http://www.samsontech.com/samson/products/wireless-systems/xpd-series/xpd2lav/">http://www.samsontech.com/samson/products/wireless-systems/xpd-series/xpd2lav/</a><br /><img src="http://www.samsontech.com/site_media/cms/images/product/samson/wireless-systems/xpd-series/xpd2lav/XPD2-Lavalier-Hero-rev2-display.jpg" /></p><p>It's not a headset -- sound won't come out of it, but you can crank up the sound on your computer (or even use external speakers -- I have a very old HP USB speakers that are just about loud enough for a lecture hall (<a href="https://support.hp.com/ca-en/document/c02574017">https://support.hp.com/ca-en/document/c02574017</a>)<br /><img src="https://support.hp.com/doc-images/976/c02574060.jpg" /></p><p>You can obviously switch input to webcam/document cam etc., but it's pretty basic.</p><p>If you have a document camera you can use this just like a webcam. Or you use e.g. <a href="https://gitlab.com/docphees/doccam">https://gitlab.com/docphees/doccam</a> to manage your document camera, and then use the window as input to zoom through share screen.</p><p><b>2. With a bit of Flair</b></p><p>This is a somewhat technical solution on linux, but I think it's easier on win/mac. What we can do is to set up a virtual webcam. The contents of the virtual webcam will be supplied by <a href="https://obsproject.com/">obs-studio</a></p><p>We then use obs-studio -- in studio mode no less -- to switch between different types of views.</p><p><i>virtual webcam</i>: If you're on linux you need to install v4l2loopback (either as the dkms in the deb repo, or by a very simple <a href="https://github.com/umlaeute/v4l2loopback">compil</a>e), and if you're on linux you need the <a href="https://github.com/CatxFish/obs-v4l2sink">v4lsink</a>. If you're on win/mac you can simply install the <a href="https://obsproject.com/forum/resources/obs-virtualcam.539/">virtual camera plug-in</a> for obs-studio.</p><p>On linux you need to create a virtual webcam:<br /><i>sudo modprobe v4l2loopback video_nr=10 card_label="OBS Video Source" exclusive_caps=1</i></p><p>In obs-studio you then choose Tools/V4L2 Video Output and choose /dev/video10</p><p><i>obs-studio</i><br />Once that's up and running, set up at least two scenes in obs-studio, and pick studio mode.<br /><br />I've set up one scene with a lion and a styracosaurus on a webcam, with the background chromakeyed out* over a molecular simulations video, and another one showing the guardian website, but one could've been the window with your slides, and another could be a document camera.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_CxTiru6XZky-GOP3YuXXR-ZfRTfKDg2_5FGIgWXU-Ak-O0tEQtcgVSfyZHyJ1yz79kj-V8nHW75uczShGXbdf_HOagqfCQh1UCFw-ZNbddCzMZsDzdWDew__pbIZFSixerHgz_-x5nZo/s1069/Screenshot+from+2020-08-22+09-33-17.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="610" data-original-width="1069" height="292" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_CxTiru6XZky-GOP3YuXXR-ZfRTfKDg2_5FGIgWXU-Ak-O0tEQtcgVSfyZHyJ1yz79kj-V8nHW75uczShGXbdf_HOagqfCQh1UCFw-ZNbddCzMZsDzdWDew__pbIZFSixerHgz_-x5nZo/w512-h292/Screenshot+from+2020-08-22+09-33-17.png" width="512" /></a></div><p><br /></p><p>I've then set up ctrl+shift+alt+5 to switch between them:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmFGUrnF9X4RDv6OlJzIMA4-JkKEqCo6-1Wh0XuOEqGo9Tg1sNahV-TfdBiDTPHrcck0-3sopCV5D50pfTRgU3q1A6kno2qNiwUnh0Y25bDeptwmSrEv6SLWJK_36xGLda1yzNhQgVaCGU/s986/Screenshot+from+2020-08-22+09-34-32.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="755" data-original-width="986" height="314" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmFGUrnF9X4RDv6OlJzIMA4-JkKEqCo6-1Wh0XuOEqGo9Tg1sNahV-TfdBiDTPHrcck0-3sopCV5D50pfTRgU3q1A6kno2qNiwUnh0Y25bDeptwmSrEv6SLWJK_36xGLda1yzNhQgVaCGU/w410-h314/Screenshot+from+2020-08-22+09-34-32.png" width="410" /></a></div><p><br />You can even have different audio input depending on the scene. Useful if you're using wired microphones and moving between different stations in your lecture hall.</p><p><i>In zoom:</i> now all you need to do is to pick the virtual webcam device as your input in zoom. There is a CPU overhead to using obs-studio, so expect the laptop to keep the fan on throughout the lecture.</p><p>*The chromakey background is the blue cover of an Office Depot notebook :)</p>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-5406824775231333662020-08-21T07:00:00.002+10:002020-12-07T22:35:58.996+11:00662. Mini-post: Getting a bluetooth headset to work on linux -- B350-XT<p> I have a BlueParrot B350-XT which is causing issues on linux. It pairs fine, and shows up as a sound device, but it won't actually play sound or record sound.</p><p><br /></p><p>Looking at dmesg -T, I see</p><p>[Tue Aug 18 01:25:33 2020] Bluetooth: hci0: BCM: chip id 63<br />[Tue Aug 18 01:25:33 2020] Bluetooth: hci0: BCM: features 0x07<br />[Tue Aug 18 01:25:33 2020] Bluetooth: hci0: BCM20702A<br />[Tue Aug 18 01:25:33 2020] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000<br />[Tue Aug 18 01:25:33 2020] bluetooth hci0: firmware: failed to load<b> brcm/BCM20702A1-050d-065a.hcd </b>(-2)<br />[Tue Aug 18 01:25:33 2020] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-050d-065a.hcd failed with error -2<br />[Tue Aug 18 01:25:33 2020] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-050d-065a.hcd not found</p><div><br /></div><div>To solve this, unplug/turn off your headset. REMOVE/FORGET the device so that you can re-pair it.</div><div><br /></div><div>Next, go to <a href="https://github.com/winterheart/broadcom-bt-firmware/blob/master/brcm/BCM20702A1-050d-065a.hcd">https://github.com/winterheart/broadcom-bt-firmware/blob/master/brcm/BCM20702A1-050d-065a.hcd</a></div><div><br /></div><div>Download the hcd file to ~/Downloads, then</div><div><div>me@niobium:/lib$ sudo mkdir /lib/firmware/brcm</div><div>me@niobium:/lib$ sudo cp ~/Downloads/BCM20702A1-050d-065a.hcd /lib/firmware/brcm/</div></div><div><br /></div><div>Now try again. </div><div>Output from dmesg -T:</div><div><div>[Tue Aug 18 01:33:59 2020] Bluetooth: hci0: BCM: chip id 63</div><div>[Tue Aug 18 01:33:59 2020] Bluetooth: hci0: BCM: features 0x07</div><div>[Tue Aug 18 01:33:59 2020] Bluetooth: hci0: BCM20702A</div><div>[Tue Aug 18 01:33:59 2020] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000</div><div>[Tue Aug 18 01:33:59 2020] bluetooth hci0: firmware: direct-loading firmware brcm/BCM20702A1-050d-065a.hcd</div><div>[Tue Aug 18 01:33:59 2020] Bluetooth: hci0: BCM20702A1 (001.002.014) build 1482</div><div>[Tue Aug 18 01:33:59 2020] Bluetooth: hci0: Broadcom Bluetooth Device</div></div><div><br /></div><div><br /></div>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-50488308099234787902020-07-09T23:32:00.001+10:002020-07-09T23:34:06.451+10:00661. Teaching during the pandemic, part 4: making simple video lecturesThis post is a bit different from the previous ones -- it simply shows what I've been doing for some time to create supporting videos for my students.<br />
<br />
<br />
I record my voice using Audacity, and I use KDENLive to make the videos. I make slides using google docs.<br />
<br />
Once you've got used to this you can make a bunch of short videos (aim at 6 minutes or so) in a single day.<br />
<br />
Here's my work flow:<br />
<br />
<b>1. Create a script for the audio. </b><br />
I basically write down everything I'm going to say before I've made my slides. I then make the slides to match the script.<br />
<br />
I use gedit to write my script.<br />
<br />
<b>2. Create the slides to match the audio</b><br />
I use google slides:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIrJBp215CR7dpn2Z1mYvgEQdlYf3M7vckJqdAqkDaRDC0Xslu0y6rpf33G7Y3JX7ixlHVvPslrXIhy5PqdQdx4jsdp-gJa9t14HyLBwy7TRM-_eLjzp_aop_ay47lUxt0Nza7BinxW5tp/s1600/Screenshot+from+2020-07-09+15-22-53.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="833" data-original-width="1510" height="176" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIrJBp215CR7dpn2Z1mYvgEQdlYf3M7vckJqdAqkDaRDC0Xslu0y6rpf33G7Y3JX7ixlHVvPslrXIhy5PqdQdx4jsdp-gJa9t14HyLBwy7TRM-_eLjzp_aop_ay47lUxt0Nza7BinxW5tp/s320/Screenshot+from+2020-07-09+15-22-53.png" width="320" /></a></div>
<br />
<br />
I export each slide as a png:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji9VMri2Pyg0c5dnrq8_tpchSomo-rSWDSLcljmJL2Vr85mCXkmoOQGNyr97sBck9kI1MxCcKhCQ0KcWRIgjL15DS5Zk5ROO4Dk9r35JfyTg9RR-o6bPB-925bFxN1X16O5jNsXWUx45VZ/s1600/Screenshot+from+2020-07-09+15-23-27.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="501" data-original-width="644" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji9VMri2Pyg0c5dnrq8_tpchSomo-rSWDSLcljmJL2Vr85mCXkmoOQGNyr97sBck9kI1MxCcKhCQ0KcWRIgjL15DS5Zk5ROO4Dk9r35JfyTg9RR-o6bPB-925bFxN1X16O5jNsXWUx45VZ/s320/Screenshot+from+2020-07-09+15-23-27.png" width="320" /></a></div>
<b>3. Record the audio in audacity</b><br />
Use a good microphone! I'm using a Blue Yeti, which is great.<br />
<br />
<b>NOTE</b>: each audio file should correspond to a single slide, or part of a slide. Not the other way around. It makes step 4 easier, and helps if you need to redo the audio for a section.<br />
<br />
Export the audio in a suitable format (e.g. flac)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTXCry380_i0ORut4xwvNoLkc4-IiGITNT1Pf23pgN5rPUGSvkp2n1inC-JcTjYzdJBLb2LtPKwpj9NyWdqYHTWTu4UdeRmVJrSyHBUPuGhKZmEDDkBZdh0fZ4DJ8laFMMQnvIJW5ipP6l/s1600/Screenshot+from+2020-07-09+15-27-05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="833" data-original-width="1600" height="166" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTXCry380_i0ORut4xwvNoLkc4-IiGITNT1Pf23pgN5rPUGSvkp2n1inC-JcTjYzdJBLb2LtPKwpj9NyWdqYHTWTu4UdeRmVJrSyHBUPuGhKZmEDDkBZdh0fZ4DJ8laFMMQnvIJW5ipP6l/s320/Screenshot+from+2020-07-09+15-27-05.png" width="320" /></a></div>
<b>4. Fire up KDENLive</b><br />
<br />
Import your clips.<br />
<br />
Add your audio to the Audio channel<br />
<br />
Then add the png files to the video channel. Stretch the duration of each image file to match the duration of the audio.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo3yMfYXZKsZdSzmtxUI1Zf1FM3_xyQUkfSlFSfS0oiBrhGDWwJwcmBxA8nFVzC1sE1u56sflBQLulobzMb8t9GqaOKwDqDXOfiahjjzqmp20U0t89UZLdKlEQolcsCa0nPX0fdn8xc1wV/s1600/Screenshot+from+2020-07-09+15-30-16.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="949" data-original-width="1600" height="189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo3yMfYXZKsZdSzmtxUI1Zf1FM3_xyQUkfSlFSfS0oiBrhGDWwJwcmBxA8nFVzC1sE1u56sflBQLulobzMb8t9GqaOKwDqDXOfiahjjzqmp20U0t89UZLdKlEQolcsCa0nPX0fdn8xc1wV/s320/Screenshot+from+2020-07-09+15-30-16.png" width="320" /></a></div>
<br />
Once you're done, render the video:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSnGV1GnN8uz2-wCrqTp8oysbuShEOYtj3dk18Xt6EmxgLaDt-MyAnIVpHMF5GO_3ius3XU6ukLuFoxd7RZI_4rD-rz_ZgqlKEjIy32XRKgFg_9XjeMWQhqKy9br-eCu0J1x3I0iHqGNfn/s1600/Screenshot+from+2020-07-09+15-31-23.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="771" data-original-width="639" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSnGV1GnN8uz2-wCrqTp8oysbuShEOYtj3dk18Xt6EmxgLaDt-MyAnIVpHMF5GO_3ius3XU6ukLuFoxd7RZI_4rD-rz_ZgqlKEjIy32XRKgFg_9XjeMWQhqKy9br-eCu0J1x3I0iHqGNfn/s320/Screenshot+from+2020-07-09+15-31-23.png" width="265" /></a></div>
<br />
That's all!<br />
<br />
<br />
Now you can combine the teaching posts to create something that works for you. Here are the links again:<br />
* Mobile phone lavalier mic: <a href="http://verahill.blogspot.com/2020/07/658-teaching-during-pandemic-part-1-how.html">http://verahill.blogspot.com/2020/07/658-teaching-during-pandemic-part-1-how.html</a><br />
* Recording (several) cameras and syncing: <a href="http://verahill.blogspot.com/2020/07/659-teaching-during-pandemic-part-2.html">http://verahill.blogspot.com/2020/07/659-teaching-during-pandemic-part-2.html</a><br />
* Dealing with audio: <a href="http://verahill.blogspot.com/2020/07/660-teaching-in-pandemic-part-3-what.html">http://verahill.blogspot.com/2020/07/660-teaching-in-pandemic-part-3-what.html</a>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-92052569991258746832020-07-09T23:19:00.000+10:002020-07-09T23:19:02.004+10:00660. Teaching in the pandemic, part 3: What I'll be doing to capture live lectures. Audio.I've looked at a few different solutions, but I've basically settled on <b>recording</b> video and audio separately. The downside of this is that I won't stream. The advantage is that I can do post-processing to add clearer pictures of slides etc.<br />
<br />
The video part is pretty straight forward. See e.g. <a href="http://verahill.blogspot.com/2020/07/659-teaching-during-pandemic-part-2.html">http://verahill.blogspot.com/2020/07/659-teaching-during-pandemic-part-2.html</a><br />
<br />
When it comes to <b>audio</b> I've explored a range of solutions:<br />
<br />
* <b>Bluetooth headset</b> -- this would've allowed me to stream, but the sound quality is just too poor with bluetooth (I tried <a href="https://www.emea.blueparrott.com/on-the-road-headsets/blueparrott-b350-xt#/">Blueparrot B350-XT</a>). For an example of how bad it can be, check out this corporate(!) video:<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/DwuSrBlhc5E/0.jpg" src="https://www.youtube.com/embed/DwuSrBlhc5E?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
Advantage: wireless, can stream, only covers one ear<br />
Disadvantage: Sound quality<br />
<br />
* <b>2.4 GHz Wireless headset</b> -- I tested <a href="https://www.logitechg.com/en-hk/products/gaming-audio/g930-7-1-wireless-gaming-headset.html">Logitech G930</a>. The sound quality is OK, but it covers both ears, and makes it hard/ uncomfortable to deal with a live audience.<br />
Advantage: sound quality, wireless, can stream<br />
Disadvantage: shuts out the live audience<br />
<br />
* <b>'Normal' microphones</b> -- I have a number of microphones, including <a href="https://www.bluedesigns.com/products/yeti/">Blue Yeti</a>. Many of them are wired (USB), and none of them will work in capturing a moving (i.e. mobile) lecturer.<br />
Advantage: superior audio -- when very close, streaming<br />
Disadvantage: poor audio unless you're right in front of the mic<br />
<br />
* <b>Mobile phone lavalier mic</b> -- See here for how to do that: <a href="http://verahill.blogspot.com/2020/07/658-teaching-during-pandemic-part-1-how.html">http://verahill.blogspot.com/2020/07/658-teaching-during-pandemic-part-1-how.html</a>.<br />
Advantage: great sound, mobile, can potentially stream<br />
Disadvantage: drains phone battery, can be tricky to set up LAN, if using receiving device (laptop) as hotspot you may not be able to connect to the internet (i.e. can't stream)<br />
<br />
My chosen solution:<br />
* <b>Using a portable audio recorder (e.g. dictaphone)</b> -- I've got a <a href="https://www.zoom-na.com/products/field-video-recording/field-recording/zoom-h1n-handy-recorder">Zoom H1n</a>, and a lavalier microphone. I love this microphone. It's lightweight, portable, not too expensive, and the internal XY microphone is great (to my ears). The amplifier for external mics is a bit weak, but it works for my purposes, especially if you post-process in <a href="https://www.audacityteam.org/">Audacity</a>. But that leaves you having to sync your video and your audio in post. I've already showed you how easy it is to do that here: <a href="http://verahill.blogspot.com/2020/07/659-teaching-during-pandemic-part-2.html">http://verahill.blogspot.com/2020/07/659-teaching-during-pandemic-part-2.html</a><br />
<br />
Note that you need to invest in a decent <a href="https://en.wikipedia.org/wiki/Lavalier_microphone">lavalier microphone </a>as well. Also note that most these days seem to come with a 3.5 mm TRRS connector (good for mobile phones), and the Zoom needs 3.5 mm TRS (the old standard). Many of the cheap/affordable lavalier mics that you find on e.g. Amazon come with TRS/TRRS adapters, so it's not much of an issue.<br />
<br />
Advantage: potentially great sound, great battery life<br />
Disadvantage: you can't stream live, needs a lavalier microphone<br />
<br />
So there we are -- I'll set up a single webcam to record video directly to my laptop. I'll capture the sound using it as well, but mostly to help me sync the audio later. I'll record my voice using a dictaphone and a lavalier microphone, post-process the sound in Audacity, then import video and audio in KDENLive, where I'll sync everything. I can then add pictures of my slides as well, and don't have to worry about the image quality during recording.lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-72871231558583595202020-07-09T22:57:00.004+10:002020-07-09T22:57:40.748+10:00659. Teaching during the pandemic, part 2: Recording with two cameras (on linux)This is a very short post. What if you need to set up two (web)cameras that capture from e.g. different whiteboards?<br />
<br />
I had a look at OBS studio, and it's not stable for me. Sometimes I get a cam image, and sometimes I don't. I also had issues with getting two cameras to work. I also looked at webcamoid and cheese. The frame rates were too bad.<br />
<br />
What does work for me is guvcview. This is available in the debian repos.<br />
<br />
I'll also show you how to sync the sound using KDENLive<br />
<br />
1. <b>Install guvcview</b><br />
sudo apt-get install guvcview<br />
<br />
2. <b>Start guvcview.</b><br />
Then go to video controls.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilBMz4_0KyWgLVNvf7Jg03dXgztPjAedaQlrc73tLm_HClE0DLnbOOCLRx_OM-ddksRlFjlDbCa9bOtH1mjD7PRSLe0kimxShgYZiEYNIdRilSfODRScnbc-lKllOHmAem_3KT81kft5-C/s1600/Screenshot+from+2020-07-09+14-37-19.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="630" data-original-width="1600" height="126" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilBMz4_0KyWgLVNvf7Jg03dXgztPjAedaQlrc73tLm_HClE0DLnbOOCLRx_OM-ddksRlFjlDbCa9bOtH1mjD7PRSLe0kimxShgYZiEYNIdRilSfODRScnbc-lKllOHmAem_3KT81kft5-C/s320/Screenshot+from+2020-07-09+14-37-19.png" width="320" /></a></div>
<b><br /></b>
Select a new Device, then select New<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP7L76oRE1Rn3EhBXGGYwLM41e-UMObs-JoY9Kzu8U01QhtyVyA1Vlg-4SeZlkCNN1EmLW5WPXYrBfSJZlJ9JHktqZ2H3MgYegnzOAsfxs2z27E5VAJfVQ_psxCaBClihpncWELFdO2fgS/s1600/Screenshot+from+2020-07-09+14-37-29.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="624" data-original-width="1600" height="124" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP7L76oRE1Rn3EhBXGGYwLM41e-UMObs-JoY9Kzu8U01QhtyVyA1Vlg-4SeZlkCNN1EmLW5WPXYrBfSJZlJ9JHktqZ2H3MgYegnzOAsfxs2z27E5VAJfVQ_psxCaBClihpncWELFdO2fgS/s320/Screenshot+from+2020-07-09+14-37-29.png" width="320" /></a></div>
<br />
Now you've got both feeds showing:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWMRgfkwN8oo5auCJ5y6lK3ITnXxQwPPCRUTXddUFb-B8w_dAZuctIiNbwvbjX-C8kXanDZvgTDiSUB171_h8-uhnqeWm0ITCHSBvumKkdsDajhp1Lg2UszZGwAKQfEIWRicMjGVdag6H8/s1600/Screenshot+from+2020-07-09+14-37-47.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="950" data-original-width="1600" height="189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWMRgfkwN8oo5auCJ5y6lK3ITnXxQwPPCRUTXddUFb-B8w_dAZuctIiNbwvbjX-C8kXanDZvgTDiSUB171_h8-uhnqeWm0ITCHSBvumKkdsDajhp1Lg2UszZGwAKQfEIWRicMjGVdag6H8/s320/Screenshot+from+2020-07-09+14-37-47.png" width="320" /></a></div>
Then you can simply record:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEin3-gTrFGBNxnC25ALqu1cDeZyyUEwkseJ_zy8nnSL0__51NcgNSNutnFiGz6eupmOSrMz7I-eg9-4KJbTkk25H1RY4R1G2iYMKZVq9Kmvo_KaRFXBiQaqiW257RgGp9bq49bQlhZNWecO/s1600/Screenshot+from+2020-07-09+14-37-58.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="968" data-original-width="1600" height="193" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEin3-gTrFGBNxnC25ALqu1cDeZyyUEwkseJ_zy8nnSL0__51NcgNSNutnFiGz6eupmOSrMz7I-eg9-4KJbTkk25H1RY4R1G2iYMKZVq9Kmvo_KaRFXBiQaqiW257RgGp9bq49bQlhZNWecO/s320/Screenshot+from+2020-07-09+14-37-58.png" width="320" /></a></div>
<br />
I won't go into how to switch back and forth between angles in KDENLive. I'll just show you how to sync the videos using the audio:<br />
<br />
Import both clips into KDENLive and put them in separate channels. Right-click on one of the tracks, and make it the audio reference:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzTBECbVEvrTXALsQmGmJlul69rEJcNekx8tT6G2zRTwnbDvxs-3VGNJibK5R8XFx5nsi-1bdtZI-81NnJoIkJw_RPzMEohutiMB3If2PGTxyGoBcqWyM_zKjKQb7FJXT8QYxJzCy5ZLM2/s1600/Screenshot+from+2020-07-09+14-48-53.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="917" data-original-width="620" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzTBECbVEvrTXALsQmGmJlul69rEJcNekx8tT6G2zRTwnbDvxs-3VGNJibK5R8XFx5nsi-1bdtZI-81NnJoIkJw_RPzMEohutiMB3If2PGTxyGoBcqWyM_zKjKQb7FJXT8QYxJzCy5ZLM2/s320/Screenshot+from+2020-07-09+14-48-53.png" width="216" /></a></div>
<br />
Align the other clip:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghwSABOcMmwdhZ2tSccpinAKOW8r5n_-KLpuhMpA0hR0IC_zdBcTapUXJeVuCj8lC4-e47c4edqMrWIcejjl8MjT-UFH8HXn00w1GtYywtrjoJ9HILW_684Vw9ShaCr9ItXO7T-FkKqJgY/s1600/Screenshot+from+2020-07-09+14-49-05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="318" data-original-width="527" height="193" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghwSABOcMmwdhZ2tSccpinAKOW8r5n_-KLpuhMpA0hR0IC_zdBcTapUXJeVuCj8lC4-e47c4edqMrWIcejjl8MjT-UFH8HXn00w1GtYywtrjoJ9HILW_684Vw9ShaCr9ItXO7T-FkKqJgY/s320/Screenshot+from+2020-07-09+14-49-05.png" width="320" /></a></div>
They are now aligned:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDYHRIgLtWwS0_eK_zOmq4OqjY2On5aUZdbSo981StcSLKHTTXtoReVJIzGTC6R2og4yGKlw1ZPmw1Mu35JpkDtQOfYkBDDE0lLfBuDtif898UNcUg3Z2swsUOeQHEzi7YcsosR1ZohL0g/s1600/Screenshot+from+2020-07-09+14-49-07.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="120" data-original-width="333" height="115" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDYHRIgLtWwS0_eK_zOmq4OqjY2On5aUZdbSo981StcSLKHTTXtoReVJIzGTC6R2og4yGKlw1ZPmw1Mu35JpkDtQOfYkBDDE0lLfBuDtif898UNcUg3Z2swsUOeQHEzi7YcsosR1ZohL0g/s320/Screenshot+from+2020-07-09+14-49-07.png" width="320" /></a></div>
<br />
Note that you could have done this with a pure audio track as well (we'll get to that in the next post).<br />
<br />
You can then start cutting away bits you don't want using the x/scissors:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwsz5hM7n2zftkQTamLy7wOGSHb2oDIUwShSxevfxO01ryIRFbFR9MScqvF7vxNzgEdy-_0DH7etX5spFdwE0SP4fkX7zNmEYAAbaQZ-T5CQkm4txZoilTrO_wzVYkxC6X22UJlAh2wvmi/s1600/Screenshot+from+2020-07-09+14-53-05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="484" data-original-width="1006" height="153" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwsz5hM7n2zftkQTamLy7wOGSHb2oDIUwShSxevfxO01ryIRFbFR9MScqvF7vxNzgEdy-_0DH7etX5spFdwE0SP4fkX7zNmEYAAbaQZ-T5CQkm4txZoilTrO_wzVYkxC6X22UJlAh2wvmi/s320/Screenshot+from+2020-07-09+14-53-05.png" width="320" /></a></div>
<br />lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-84457268630870929712020-07-09T22:24:00.000+10:002020-07-09T22:24:00.651+10:00658. Teaching during the pandemic, part 1: How to use a mobile phone as a wireless lavalier microphoneThis pandemic isn't going anywhere soon. We'll be using online/remote teaching or hybrid teaching models for at least the next two semesters up here, and it's time to figure out how to do it in a way that works for the students, as well as us lecturers, in spite of not actually getting any more time to prepare our classes than we would during a normal year.<br />
<br />
This post is linux-centric, but the solution should be applicable to OSX and Win as well.<br />
<br />
<b>Using a mobile phone as a wireless lavalier microphone</b><br />
While I've made proper videos in the past, I haven't tried recording 'live' lectures before. We've been asked to resume on-campus lectures this fall, but have also been told to make sure that we record everyhting so that students don't show up to class in spite of being sick.<br />
<br />
I've moved away from using powerpoints to using the whiteboard for my lectures (I've surveyd my students -- 95% in class after class prefer chalk-and-talk).<br />
<br />
Simply using a camera with a static microphone to record won't cut it -- it won't capture the sound properly, in particular not when you're up at the whiteboard. Also, audio-quality matters -- if you have to choose between good audio and good video, pick audio.<br />
<br />
<b>What do you need?</b><br />
You need<br />
* an android phone (similar solutions should be available for iOS)<br />
* for the phone and your recording device (e.g. laptop or computer) to be online and able to connect to each-other (e.g. a LAN). You can use the laptop as a hotspot.<br />
* the program <a href="https://play.google.com/store/apps/details?id=com.portable.lanmic&hl=en">LANMic </a>installed on your phone<br />
* <a href="https://obsproject.com/download">OBS Studio</a> to receive the stream from LANMic. There are other programs -- as long as they can receive rtsp streams, they are OK.<br />
<br />
<hr />
<b>How-to</b><br />
<b><br /></b>
<b>1. </b>Install LANmic on your phone. Connect a lavalier/lapel mic to your phone. Install OBS Studio on your computer.<br />
<br />
<b>2.</b> Both devices (phone and computer) need to be able to communicate with each other over the LAN.<br />
<br />
If you have EduRoam, this might not be the case. In that case, use your computer to set up a wifi hotspot. See the end of this post for how to do that.<br />
<br />
<b>3.</b> Start LANmic on your <b>phone</b>, select rtsp and start streaming. Note the address of your phone (here: rtsp://192.168.2.13:8080)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj73bmowamId1Zd8Dys4Vxg96hVb8VZrWFKTyO8kSB8b0xZ9JPDxKYZx8o8FUkMHxQkbgSE46TUh1oc0E2Mh9mpvWBaaFe5myOE0MqzEcsnlcU8ZTtjf0bUCHYf8Kv7swTINjeWLYzCAYuj/s1600/2020-07-09+14.05.09.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="720" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj73bmowamId1Zd8Dys4Vxg96hVb8VZrWFKTyO8kSB8b0xZ9JPDxKYZx8o8FUkMHxQkbgSE46TUh1oc0E2Mh9mpvWBaaFe5myOE0MqzEcsnlcU8ZTtjf0bUCHYf8Kv7swTINjeWLYzCAYuj/s320/2020-07-09+14.05.09.jpg" width="180" /></a></div>
It'll look like this because nothing's connect to it:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZw7yqtMeDWXGOTtCrIxYk8L1_ai9V_PvDZNVPNRA8O8XmZKJKyjwAPItIv7Ec1zi9iotQdax5IjteLQ8lqXMJtGOG9HqGOvxAXkexIVJT3U5ws7HzTNh219EZHAEneWi3TFTRHMNah9gy/s1600/2020-07-09+14.05.18.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="720" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZw7yqtMeDWXGOTtCrIxYk8L1_ai9V_PvDZNVPNRA8O8XmZKJKyjwAPItIv7Ec1zi9iotQdax5IjteLQ8lqXMJtGOG9HqGOvxAXkexIVJT3U5ws7HzTNh219EZHAEneWi3TFTRHMNah9gy/s320/2020-07-09+14.05.18.jpg" width="180" /></a></div>
<br />
<br />
<b>4.</b> Start OBS Studio and add your sources.<br />
<br />
I've just made a quick example here. To add the phone, add Media Source, uncheck local file, and enter the address from the previous step.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvYryv83NOODJpwctCONNV45Q4FEm3MxZDbA2NeBxYUdbHCGhYfyxzs3Tx1skJypuJtHt8wVcizHiuP5sv_obUiKQuPpRYWGPRSk295Or7e2AaHGBYMD2rTBapwo1CUifKZ7PE1vFyUo3z/s1600/Screenshot+from+2020-07-09+14-06-16.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="741" data-original-width="1227" height="193" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvYryv83NOODJpwctCONNV45Q4FEm3MxZDbA2NeBxYUdbHCGhYfyxzs3Tx1skJypuJtHt8wVcizHiuP5sv_obUiKQuPpRYWGPRSk295Or7e2AaHGBYMD2rTBapwo1CUifKZ7PE1vFyUo3z/s320/Screenshot+from+2020-07-09+14-06-16.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1hBA56h7GggJx_RXN9V4GZzW_8LrD7V_b1XDk-cxY9dCVog77yhR170gg7Knv6iJDL81dZfFehacDEjp3nWaimXsza8VjpSjRT0H25yxxxU-msyybl8fg07VZBCtxpcsQaaQ8e-So2nON/s1600/Screenshot+from+2020-07-09+14-06-31.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="363" data-original-width="371" height="313" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1hBA56h7GggJx_RXN9V4GZzW_8LrD7V_b1XDk-cxY9dCVog77yhR170gg7Knv6iJDL81dZfFehacDEjp3nWaimXsza8VjpSjRT0H25yxxxU-msyybl8fg07VZBCtxpcsQaaQ8e-So2nON/s320/Screenshot+from+2020-07-09+14-06-31.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNmVQs7GAd6GG1gw-0pka3WSJFLt0R3zts7vnLS6SBjFcCLs8pz1kPq91lMNRQ_dEiyoWGHu3s_B6r1VJjjdNnyQJd3bMiy4Dcv566067hFGaRNbXkL-PT7BJiNYFPoKe64ZDpH0rjesrz/s1600/Screenshot+from+2020-07-09+14-06-45.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="623" data-original-width="717" height="278" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNmVQs7GAd6GG1gw-0pka3WSJFLt0R3zts7vnLS6SBjFcCLs8pz1kPq91lMNRQ_dEiyoWGHu3s_B6r1VJjjdNnyQJd3bMiy4Dcv566067hFGaRNbXkL-PT7BJiNYFPoKe64ZDpH0rjesrz/s320/Screenshot+from+2020-07-09+14-06-45.png" width="320" /></a></div>
<br />
If all goes well you'll see the meter for the moble mic moving.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI3uR1OkUHuYC-mg-bnH0x9gHUBxs839h-damLP5LVgQYy4gdXvYyDq5aGtS0kws8In4Vr4z4F8mMH4UnR2TqQXQZB11pf0itxqgSgmJis6pn4eh7tMyMQpDQt_ctMscrTRDqbfgfFfrIR/s1600/Screenshot+from+2020-07-09+14-07-18.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="204" data-original-width="1219" height="53" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI3uR1OkUHuYC-mg-bnH0x9gHUBxs839h-damLP5LVgQYy4gdXvYyDq5aGtS0kws8In4Vr4z4F8mMH4UnR2TqQXQZB11pf0itxqgSgmJis6pn4eh7tMyMQpDQt_ctMscrTRDqbfgfFfrIR/s320/Screenshot+from+2020-07-09+14-07-18.png" width="320" /></a></div>
<br />
<br />
Your phone will now look like this:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2dAFKRuo5KAsNTqvl0TWu52h3nzRVkZdYvjHob7yM83mqfpqW6vJd9DhS4yTmTyAKMYNPNVH3DEBFXEbZdtrRF_TMzSrYqhjD4oel_BI4xx0vktTDbDdanLDznprJc2dtaNUAPtIS2Y_B/s1600/2020-07-09+14.07.10.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="720" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2dAFKRuo5KAsNTqvl0TWu52h3nzRVkZdYvjHob7yM83mqfpqW6vJd9DhS4yTmTyAKMYNPNVH3DEBFXEbZdtrRF_TMzSrYqhjD4oel_BI4xx0vktTDbDdanLDznprJc2dtaNUAPtIS2Y_B/s320/2020-07-09+14.07.10.jpg" width="180" /></a></div>
<br />
<br />
This isn't a perfect solution, but it works. Importantly, it will allow you to record everything on the fly/and or stream it and/or stream via zoom (have a look at <a href="https://obsproject.com/forum/resources/obs-virtualcam.539/">https://obsproject.com/forum/resources/obs-virtualcam.539/</a>).<br />
<br />
In the next few posts I'll be exploring other solutions<br />
<br />
<hr />
Here's how to set up a <b>wifi hotspot</b> on debian:<br />
<br />
Open Network:<br />
<div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWepDHqudz4OW4eOZ6ibnAYew1odI0GKG_FKD4d8szRVOb9FNHpB5vDQ0SbnnRqCaYHw5R6kIMEAoaNCw6IUzp7lDxNAIhnwsbAFy47v2E6qIeE1UFWTl_zBCAiKk4XR3kFZt-Vje532Ha/s1600/Screenshot+from+2020-07-09+14-01-14.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="398" data-original-width="1062" height="119" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWepDHqudz4OW4eOZ6ibnAYew1odI0GKG_FKD4d8szRVOb9FNHpB5vDQ0SbnnRqCaYHw5R6kIMEAoaNCw6IUzp7lDxNAIhnwsbAFy47v2E6qIeE1UFWTl_zBCAiKk4XR3kFZt-Vje532Ha/s320/Screenshot+from+2020-07-09+14-01-14.png" width="320" /></a><br />
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Set up hotspot:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgATpbZNo-p-Z986ImB5xlNqJkTbTqQXt_xY4N9u7YAzmsHpT5ApklFpobxxwDFxeoXVls5B-kCDjp7QPtsZrWQwQXeQo-abr2iR9IdaUGX4V2MzT02ZHxZicBsjKNpwoezYE64xBmyIplY/s1600/Screenshot_20200709_135843.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="489" data-original-width="739" height="211" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgATpbZNo-p-Z986ImB5xlNqJkTbTqQXt_xY4N9u7YAzmsHpT5ApklFpobxxwDFxeoXVls5B-kCDjp7QPtsZrWQwQXeQo-abr2iR9IdaUGX4V2MzT02ZHxZicBsjKNpwoezYE64xBmyIplY/s320/Screenshot_20200709_135843.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhosfSglj9ZUJU2WaFxUi25Rn2EXTaX4inmu6nvlXKCARk8S0IuSNmUcSLVbzxzmkvXRQiUXMYEGYghIW_vdrAL4wItQSeKtcP__lMzBrhukdfunkTSbgYDz12unZCvMyyYDKkuBFVchR2H/s1600/Screenshot_20200709_135915.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="290" data-original-width="492" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhosfSglj9ZUJU2WaFxUi25Rn2EXTaX4inmu6nvlXKCARk8S0IuSNmUcSLVbzxzmkvXRQiUXMYEGYghIW_vdrAL4wItQSeKtcP__lMzBrhukdfunkTSbgYDz12unZCvMyyYDKkuBFVchR2H/s320/Screenshot_20200709_135915.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoPQP0rwty5HhG-vNLGGCeZF9yg_s5snv9Ij2UX8w793T3UQaMQh4Y0BOjxMS7vbw4kPAA5DN12lM9YwO5w_NDaEcsmpYtzkYT2JNpx2zoT0iqyq8lArr1JWx1hWv3Bc33KqhJer7-c-Nb/s1600/Screenshot_20200709_135943.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="481" data-original-width="725" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoPQP0rwty5HhG-vNLGGCeZF9yg_s5snv9Ij2UX8w793T3UQaMQh4Y0BOjxMS7vbw4kPAA5DN12lM9YwO5w_NDaEcsmpYtzkYT2JNpx2zoT0iqyq8lArr1JWx1hWv3Bc33KqhJer7-c-Nb/s320/Screenshot_20200709_135943.png" width="320" /></a></div>
<br />
<br />
Then connect your phone to the new network. Note that this means that you won't have any network connectivity, unless you're also using a LAN cable.</div>
<br />
<br />
<br /></div>
lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-38304704696292914172019-11-29T19:08:00.002+11:002019-11-29T19:08:21.950+11:00657. More on charges in nwchem and gaussianA now ten-year old paper introduced the concept of Pauling bond-strength conserving terminations (PBS ) in the use of molecular codes for calculations involving extended crystalline systems ('Quantum-Chemical Calculations of Carbon-Isotope Fractionation in CO2(g), Aqueous Carbonate Species, and Carbonate Minerals' by James R. Rustad, Sierra L. Nelmes, Virgil E. Jackson, and David A. Dixon -- see <a href="https://pubs.acs.org/doi/pdf/10.1021/jp076103m">link</a>). The authors used <a href="http://www.nwchem-sw.org/index.php/Main_Page">NWChem</a> for the calculations, most likely due to the affiliation between the lead author and PNNL, where NWChem is developed, and where the researchers have been banned from using Gaussian.<br />
<br />
I use Gaussian almost exclusively these days, mainly due to how fast it is.<br />
<br />
Unfortunately, Gaussian and NWChem behave quite differently when it comes to introduction of specified nuclear charges, so I here compare the two codes in terms of how to set up PBS calculations.<br />
<br />
<b>NWChem (6.8):</b><br />
<blockquote>
<pre>scratch_dir /scratch
Title "charge"
Start charge
echo
charge 0
geometry noautosym noautoz units angstrom
Mg 0.00000 0.00000 0.00000
O 0.00000 2.09000 0.00000
O 1.47785 2.22045e-16 1.47785
O -1.47785 -1.11022e-16 1.47785
O 0.00000 -2.09000 0.00000
O -1.47785 2.22045e-16 -1.47785
O 1.47785 -1.11022e-16 -1.47785
H1 -0.691981 2.65500 -0.691981 charge 0.5
H1 0.691981 2.65500 0.691981 charge 0.5
H1 1.87737 0.978609 1.87737 charge 0.5
H1 1.87737 -0.978609 1.87737 charge 0.5
H -1.18539 7.33956e-09 2.56935
H -2.56935 -7.33957e-09 1.18539
H -0.691981 -2.65500 0.691981
H 0.691981 -2.65500 -0.691981
H -1.87737 -0.978609 -1.87737
H -1.87737 0.978609 -1.87737
H 1.18539 -2.20187e-08 -2.56935
H 2.56935 2.20187e-08 -1.18539
end
basis "ao basis" spherical print
H library "def2-svp"
Mg library "def2-svp"
O library "def2-svp"
END
dft
mult 1
direct
XC pbe0
grid xfine
mulliken
end
task dft energy
</pre>
</blockquote>
<br />
This gives an energy of <span style="background-color: yellow;">-655.860806066326.</span><br />
<br />
Removing the charges for H1 and setting the total charge to +2 gives an energy of <span style="background-color: #d0e0e3;">-657.044328628867</span><br />
<br />
<b>Gaussian (16.A01):</b><br />
<span style="color: red;">WRONG:
</span><br />
<blockquote>
<pre>%nprocshared=6
%Mem=800000000
%Chk=charge.chk
#P GFINPUT rPBE1PBE/def2svp 5D NoSymm Punch=(MO) Pop=(full)
charge
0 1 ! charge and multiplicity
Mg 0.00000 0.00000 0.00000
O 0.00000 2.09000 0.00000
O 1.47785 2.22045e-16 1.47785
O -1.47785 -1.11022e-16 1.47785
O 0.00000 -2.09000 0.00000
O -1.47785 2.22045e-16 -1.47785
O 1.47785 -1.11022e-16 -1.47785
H(znuc=0.5) -0.691981 2.65500 -0.691981
H(znuc=0.5) 0.691981 2.65500 0.691981
H(znuc=0.5) 1.87737 0.978609 1.87737
H(znuc=0.5) 1.87737 -0.978609 1.87737
H -1.18539 7.33956e-09 2.56935
H -2.56935 -7.33957e-09 1.18539
H -0.691981 -2.65500 0.691981
H 0.691981 -2.65500 -0.691981
H -1.87737 -0.978609 -1.87737
H -1.87737 0.978609 -1.87737
H 1.18539 -2.20187e-08 -2.56935
H 2.56935 2.20187e-08 -1.18539
</pre>
</blockquote>
<br />
gives an energy of -655.679686484!
<br />
<br />
However,<br />
<blockquote>
<pre>2 1 ! charge and multiplicity
</pre>
</blockquote>
gives an energy of <span style="background-color: yellow;">-655.860712881</span>, which is what we want.<br />
<br />
Removing the znuc specifications and using
<br />
<blockquote>
<pre>2 1 ! charge and multiplicity
</pre>
</blockquote>
gives an energy of<span style="background-color: #d0e0e3;"> -657.044229333
</span><br />
<br />
Keeping the znuc specifications and defining those protons as fragment 2, and the rest of the cluster as fragment 1
<br />
<blockquote>
<pre> 2 1 -2 1 4 1! charge and multiplicity
</pre>
</blockquote>
gives an energy of <span style="background-color: yellow;">-655.860712881
</span><br />
<br />
<br />
<b>Conclusion: </b><br />
both NWChem and Gaussian can be made to use PBS, but while you use the intended cluster charge (0) in NWChem, you need to use the unmodified charge (+2) in gaussian.
lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-682354980547632872019-09-29T16:46:00.004+10:002019-09-29T16:46:27.870+10:00656. Rant: On Academia and the English languageI used to think that (postgraduate) students didn't know how to write good manuscripts because they don't learn how to do so during their undergraduate education. I'm now even more cynical about it -- I believe that we actually actively teach them bad practices instead.<br />
<br />
1. Honours students are particularly problematic, since they haven't yet had to write a thesis and are mainly exposed to scientific writing in the form of lab reports. Unfortunately, the way lab reports are written does not resemble any form of document that the students will produce in the career -- whether they go into industry or academia. So what's the point? Sure, they get to do a bit of thinking about the science behind the experiment in the process of writing -- and that's great -- but it does not teach them how to write up science.<br />
<br />
2. The biggest problem is that students, regardless of level, are often told to write a certain number of words as part of their academic assignments --'write at least 800 words'. The idea is to make sure that they put in enough work, but the outcome is that you get papers with a lot of filler words and phrases.<br />
<br />
I had a masters (by research) student write something along the lines of <br />"'During the first week(s) of the course, a literature search will be conducted where appropriate sources are gathered'" <br />instead of<br />
"Targets will be synthesised according to literature procedures"<br />
<br />
It would be better to give students assignments where they are told what must be addressed in their essays, and then graded accordingly if they do a bad job of it. If they can complete the task in 400 words instead of 600, so be it.<br />
<br />
I now tell my students to read <a href="https://www.orwell.ru/library/essays/politics/english/e_polit">Orwell's "Politics and the English language"</a> in order to learn how to write, as it deals with this directly, and contains some great examples.<br />
<br />
3. Postgraduate science writing courses are often geared towards teaching students to write popular science texts, and are often given by people outside their fields. Firstly, they are PhD students and first need to be able to write about science as experts before learning to write pop sci -- they WILL need to do the former, but are unlikely to need to do the latter. Secondly, (bad) pop sci writing often ends up being so devoid of actual information that it's impossible for someone in the field to figure out what it's about -- the way the Nobel prize in chemistry is presented in the newspapers is often so short on detail that it's impossible to know what the discovery is.<br />
<br />
4. Role models are hard to find. Few students think that the type of writing they see in social media works for science, but they might not realise that journalists are great sinners along the lines of point 2. Authors of fiction vary in quality, and I find it hard to read modern literature because of how self-indulgent many authors are.<br />
<br />
I tell students at the beginning of their postgraduate course to have a look at some of the papers that they read when doing the initial literature search for their research, pick out one good and one bad example, and then try to work out WHY they felt that way.<br />
<br />
<br />lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-23804786918471355432018-10-30T15:45:00.002+11:002020-12-07T22:37:14.566+11:00655. Linux for Edu -- creating lecture videos on linuxWe're 'encouraged' to save money on teaching. The easiest (laziest?) way of doing this is to reduce teacher-led time. The ultimate time-saver (in terms of creation of content) is to simply record your lectures using screen-casting.<br />
<br />
It's not a very good solution though.<br />
<br />
From the point of the lecturer it is not very inspiring, recording 40 minutes of voice-over without mistakes in one take is hard, and updating the slides in the future is hard or impossible. Some solve the voice-over and update issue by using synthetic voices, but they are even more monotonous and uninspiring than most lecturers.<br />
<br />
From the point of the student it can be hard to focus for 40 minutes, especially if all you're seeing is a series of slides with a droning voice over. There are other aspects that are bad too: you don't get to interact with the lecturer or your peers, and the lecture content/pace etc. can't be adjusted based on the dynamics of the class.<br />
<br />
Some of these aspects can be solved or at least amended by using video editing software. The key is to not simply take a lecture and make a video, but to try to make the most of the medium, without having to become an expert at editing.<br />
<br />
Key to making videos is to:<br />
* make them short<br />
...so that students don't need set aside a lot of time to watch them, and can maintain their concentration. It also helps you as a lecturer stay enthusiastic about the video project until it's finished. A long video will make you sick of it before you're done.<br />
<br />
* cut everything up into small chunks<br />
...so that you can replace slides and sections, and so you can (re-)record the narration is small chunks. This way you can do as many takes as you need to make sure that the voice over is punchy. No droning!<br />
<br />
* to make them engaging<br />
...so that it's fun to watch. This latter bit I haven't cracked. I have decided on a gimmick though, where I put a countdown timer in the videos. I think/hope that it makes the student feel that the video is moving along quickly and feels 'dynamic'.<br />
<br />
Received wisdom dictates that you should include a video of yourself lecturing. There's nothing precluding you from doing that in snippets too and using short Dissolve transitions between the video snippets.<br />
<br />
<br /><b>
Software:</b><br />
One should use different tools for different purposes, so I use<br />
* <b>EasyScreenCast</b> or <b>OBSStudio</b> for capturing the desktop if necessary<br />
Make sure to record as webm. Note: You need to transcode the VP8 webm files using the following command or they may show up as black when you render the video in kdenlive:<br />
<i>avconv -i in.webm -c:v libvpx -c:a vorbis -quality best -f webm out.webm</i><br />
<i><br /></i>
* <b>Audacity</b> for recording audio<br />
<br />
* Cheese for recording videos of myself<br />
<br />
* Synfig for making simple animation<br />
<br />
* <b>kdenlive</b> for video editing<br />
<br />
So, here's a quick overview of how to make a simple video using static slides (no screen casting):<br />
<br />
<b>1. I made slides in google slides, and then exported each one as a PNG file</b><br />
<br />
<b>2. I recorded the narration using audacity. One recording for each slide. Cut and export.</b><br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHpag7SDGO9fWQazDbP84_tb_tmrneybjF6balzw0yVwVlN1DcVHb7S-swIPDanbRpUlCVneWs2pPdZgOPiVlyw1MShP55uoTwMXG-fQMCDxnnBLMWbB-g5T8exi7df7kN1h123mtAwjlp/s1600/Screenshot+from+2018-10-30+04-54-44.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="824" data-original-width="1600" height="164" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHpag7SDGO9fWQazDbP84_tb_tmrneybjF6balzw0yVwVlN1DcVHb7S-swIPDanbRpUlCVneWs2pPdZgOPiVlyw1MShP55uoTwMXG-fQMCDxnnBLMWbB-g5T8exi7df7kN1h123mtAwjlp/s320/Screenshot+from+2018-10-30+04-54-44.png" width="320" /></a></div>
<br />
<b>3. I put it together in kdenlive </b><br />
Just drag the length of the slide images to match the lengths of the narration. I also put in a <a href="https://www.youtube.com/watch?v=D8J_Lvw1wl0">countdown timer </a>as video 2, and overlayed it with the 'composite and transform' transition. I could easily have done the same with a video/videos of myself recorded in cheese.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg469bGocEdRt-xDKBLjrwHKuv76eYN0vkbLXbf0i1__c_LuFOW4d9S3ddluXYoHgX-u6I-O-KOeF5kheveBMXqSEmkRXFXilyv73Eiz0nyMLCex742yl0Aj79pFLC0LQElSYC7BXGiQpWu/s1600/Screenshot+from+2018-10-30+05-02-17.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="855" data-original-width="1600" height="171" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg469bGocEdRt-xDKBLjrwHKuv76eYN0vkbLXbf0i1__c_LuFOW4d9S3ddluXYoHgX-u6I-O-KOeF5kheveBMXqSEmkRXFXilyv73Eiz0nyMLCex742yl0Aj79pFLC0LQElSYC7BXGiQpWu/s320/Screenshot+from+2018-10-30+05-02-17.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
Either way, the point is that it's very easy to do this.<br />
<br />
<br />
I also tried to make a simple animation in synfig, but it didn't really pan out. Might be a post in the future -- the students are struggling with visualising 3D objects like orbitals and molecules, and creating animations might help here.<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dwNeny-ySFx1iM6PMCfBZAvHfEUxCI00kWrnGfc3GO1-XDKqZGpkwhiJEOFcMN9wKlHNJPykXDGITSfvtzwFg' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<br />
<br />lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-2569209308718116742018-10-26T05:02:00.001+11:002018-10-26T05:19:41.307+11:00654. Screen-casting on linux (debian 9)<b>Minipost:</b><br />
I'm interested in making course videos where I show my desktop (I might have a full-screen presentation going), but where I also want to show my face.<br />
<br />
I'm using debian.<br />
<br />
<b>Solution:</b><br />
To screen-cast the desktop I'm using EasyScreenCast, which is a Gnome Extension: <a href="https://extensions.gnome.org/extension/690/easyscreencast/">https://extensions.gnome.org/extension/690/easyscreencast/</a><br />
<br />
Not much to say about it really, other than that it works very well.<br />
<br />
To get my face on the desktop I use guvcview, which is in the repos.<br />
<br />
To make guvcview stay on top even during a full-screen presentation I followed this: <a href="https://www.linuxquestions.org/questions/linux-general-1/how-to-make-guvcview-stay-always-on-top-4175541777/">https://www.linuxquestions.org/questions/linux-general-1/how-to-make-guvcview-stay-always-on-top-4175541777/</a><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS1yf709IA7mvA1aWJ3nlH_PWX6evukZm4O6hhUWmbFiI41l1VOqyWaTff2iVwGyK6TZcNDqo1_MFbB6IGi688XZ6KpU8i_jrtbhUVcoMiN3oOvMLBz_TaMQxLTK-K-mgk2MyB0zRzcdGl/s1600/Screenshot+from+2018-10-25+20-00-09.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="900" data-original-width="1600" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS1yf709IA7mvA1aWJ3nlH_PWX6evukZm4O6hhUWmbFiI41l1VOqyWaTff2iVwGyK6TZcNDqo1_MFbB6IGi688XZ6KpU8i_jrtbhUVcoMiN3oOvMLBz_TaMQxLTK-K-mgk2MyB0zRzcdGl/s320/Screenshot+from+2018-10-25+20-00-09.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">My son's orca lecturing on the importance of experiments in formulating new theories</td></tr>
</tbody></table>
kdenlive seems like an interesting editor for post-production, but I haven't got that far yet.lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0tag:blogger.com,1999:blog-5188121942175615593.post-86199594832192916882018-08-20T23:35:00.004+10:002018-08-23T23:02:39.985+10:00653. Energy decomposition analysis the manual/multiwfn way -- nwchemI have a very large system (390 atoms, 3918 functions, 6474 primitives) where I want to analyse the bonding. Whereas I can reduce the size of the system a little bit, there's a large conjugated ad charged system in the middle which I can't really reduce. Either way, when I use GAMESS US to do NEDA, the calc seems to hang for days without ever progressing, and LMOEDA/CMOEDA keep running out of memory.<br />
<br />
I recently had a look at Multiwfn, and section 4.100.8 in the <a href="http://web.mit.edu/multiwfn_v3.3.8/Manual_3.3.8.pdf">manual</a> shows how to do simple EDA as a multistep computation. The example uses multiwfn to input initial fragment wavefunctions to compute the DE_orb with Gaussian. Incidentally, this is something which is very easy to do with nwchem without using multiwfn.<br />
<br />
I'll use NH3..BH3 as the example at RHF/6-31G*.<br />
<br />
<hr />
<b>Nwchem:</b><br />
<br />
1. Optimise NH3..BH3<br />
<pre><blockquote>
scratch_dir /home/me/scratch
Title "NH3BH3-nw"
Start NH3BH3-nw
charge 0
geometry noautosym noautoz units angstrom
N 0.0720500 -0.00961700 -0.336156
H 0.871540 0.292859 -0.862886
H -0.685935 0.618297 -0.534511
H -0.187686 -0.922713 -0.663436
B 0.415920 -0.0366410 1.31774
H 0.709693 1.10584 1.58004
H -0.612009 -0.411733 1.83072
H 1.33214 -0.818018 1.41958
end
basis "ao basis" cartesian print
B library "6-31G*"
H library "6-31G*"
N library "6-31G*"
END
scf
RHF
nopen 0
end
task scf optimize
</blockquote>
</pre>
<b><span style="color: red;">Energy=-82.61181818
</span></b><br />
<br />
2. Run SE calcs on the BH3 and NH3 fragments:
<br />
<pre><blockquote>
scratch_dir /home/me/scratch
Title "BH3-nw"
Start BH3-nw
charge 0
geometry noautosym noautoz units angstrom
B 0.192902 -0.0151808 0.928551
H 0.486935 1.12724 1.19093
H -0.834959 -0.390362 1.44154
H 1.10930 -0.796437 1.03042
end
basis "ao basis" cartesian print
B library "6-31G*"
H library "6-31G*"
END
scf
RHF
nopen 0
<b> vectors output bh3.movecs</b>
end
task scf energy
</blockquote>
</pre>
<b><span style="color: red;">Energy=-26.368337779376
</span></b><br />
and
<br />
<pre><blockquote>
scratch_dir /home/me/scratch
Title "NH3-nw"
Start NH3-nw
charge 0
geometry noautosym noautoz units angstrom
N -0.150737 0.0117141 -0.725185
H 0.648571 0.314333 -1.25225
H -0.908696 0.639770 -0.923690
H -0.410582 -0.901249 -1.05260
end
basis "ao basis" cartesian print
N library "6-31G*"
H library "6-31G*"
END
scf
RHF
nopen 0
<b> vectors output nh3.movecs</b>
end
task scf energy
</blockquote>
</pre>
<b><span style="color: red;">Energy=-56.184296916045
</span></b><br />
<br />
3. Finally, use the two movecs created in step 2:
<br />
<pre><blockquote>
scratch_dir /home/andy/scratch
Title "NH3BH3-nw"
Start NH3BH3-nw
charge 0
geometry noautosym noautoz units angstrom
N 0.0720500 -0.00961700 -0.336156
H 0.871540 0.292859 -0.862886
H -0.685935 0.618297 -0.534511
H -0.187686 -0.922713 -0.663436
B 0.415920 -0.0366410 1.31774
H 0.709693 1.10584 1.58004
H -0.612009 -0.411733 1.83072
H 1.33214 -0.818018 1.41958
end
basis "ao basis" cartesian print
B library "6-31G*"
H library "6-31G*"
N library "6-31G*"
END
scf
RHF
nopen 0
<b>vectors fragment nh3.movecs bh3.movecs output nh3bh3.movecs</b>
end
task scf
</blockquote>
</pre>
4. Parse the output from step 4:
<br />
<pre><blockquote>
iter energy gnorm gmax time
----- ------------------- --------- --------- --------
<b> 1 <span style="color: red;">-82.5357150919</span> 7.36D-01 2.88D-01 0.1</b>
2 -82.6078664771 2.30D-01 5.23D-02 0.1
3 -82.6117699706 2.03D-02 7.47D-03 0.1
4 -82.6118181287 2.23D-04 5.79D-05 0.1
5 -82.6118181326 2.51D-06 7.28D-07 0.1
Final RHF results
------------------
<b> <span style="color: red;">Total SCF energy = -82.611818132574</span></b>
One-electron energy = -190.292457149391
Two-electron energy = 67.248334359392
Nuclear repulsion energy = 40.432304657425
Time for solution = 0.1s
</blockquote>
</pre>
So, according to the Multiwfn <a href="http://web.mit.edu/multiwfn_v3.3.8/Manual_3.3.8.pdf">Manual</a> at 4.100.8, using the values from above:<br />
DEtot=-82.61181818-(-26.368337779376-56.184296916045)= -37 kcal/mol (-155 kJ/mol)<br />
DEorb=-82.611818132574-(-82.5357150919)= -48 kcal/mol (-200 kJ/mol)<br />
DEsteric=DEtot-DEorb= 11 kcal/mol (45 kJ/mol)<br />
<br />
This is essentially the Kitaura-Morokuma method.<br />
<br />
See e.g. Frenking et al.in <a href="https://onlinelibrary.wiley.com/doi/full/10.1002/wcms.71">Energy Decomposition Analysis</a> on page 44. Eq 2 defines Eint in the same way DEtot is defined above, and Eq 7 is the same Eorb as here.<br />
<br />
DEstruc here is then DEelstat + DEPauli.<br />
<br />
How to resolve these two factors from one another, is a problem for another day.
<hr>
You can also run the calcs using a single input file:
<pre><blockquote>
scratch_dir /home/me/scratch
Title "NH3BH3-nw-eda"
Start NH3BH3-nw-eda
echo
charge 0
geometry molecule noautosym noautoz units angstrom
N -0.150737 0.0117141 -0.725185
H 0.648571 0.314333 -1.25225
H -0.908696 0.639770 -0.923690
H -0.410582 -0.901249 -1.05260
B 0.192902 -0.0151808 0.928551
H 0.486935 1.12724 1.19093
H -0.834959 -0.390362 1.44154
H 1.10930 -0.796437 1.03042
end
geometry ammonia noautosym noautoz units angstrom
N -0.150737 0.0117141 -0.725185
H 0.648571 0.314333 -1.25225
H -0.908696 0.639770 -0.923690
H -0.410582 -0.901249 -1.05260
end
geometry borohydride noautosym noautoz units angstrom
B 0.192902 -0.0151808 0.928551
H 0.486935 1.12724 1.19093
H -0.834959 -0.390362 1.44154
H 1.10930 -0.796437 1.03042
end
basis "ao basis" cartesian print
N library "6-31G*"
B library "6-31G*"
H library "6-31G*"
END
set geometry ammonia
scf
vectors output ammonia.movecs
end
task scf
set geometry borohydride
scf
vectors output borohydride.movecs
end
task scf
set geometry molecule
scf
vectors input fragment ammonia.movecs borohydride.movecs output molecule.movecs
end
task scf
</blockquote></pre>lindqvisthttp://www.blogger.com/profile/11525548328692436184noreply@blogger.com0