This is a very short post. What if you need to set up two (web)cameras that capture from e.g. different whiteboards?
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.
What does work for me is guvcview. This is available in the debian repos.
I'll also show you how to sync the sound using KDENLive
1. Install guvcview
sudo apt-get install guvcview
2. Start guvcview.
Then go to video controls.
Select a new Device, then select New
Now you've got both feeds showing:
Then you can simply record:
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:
Import both clips into KDENLive and put them in separate channels. Right-click on one of the tracks, and make it the audio reference:
Align the other clip:
They are now aligned:
Note that you could have done this with a pure audio track as well (we'll get to that in the next post).
You can then start cutting away bits you don't want using the x/scissors:
09 July 2020
658. Teaching during the pandemic, part 1: How to use a mobile phone as a wireless lavalier microphone
This 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.
This post is linux-centric, but the solution should be applicable to OSX and Win as well.
Using a mobile phone as a wireless lavalier microphone
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.
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).
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.
What do you need?
You need
* an android phone (similar solutions should be available for iOS)
* 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.
* the program LANMic installed on your phone
* OBS Studio to receive the stream from LANMic. There are other programs -- as long as they can receive rtsp streams, they are OK.
How-to
1. Install LANmic on your phone. Connect a lavalier/lapel mic to your phone. Install OBS Studio on your computer.
2. Both devices (phone and computer) need to be able to communicate with each other over the LAN.
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.
3. Start LANmic on your phone, select rtsp and start streaming. Note the address of your phone (here: rtsp://192.168.2.13:8080)
It'll look like this because nothing's connect to it:
4. Start OBS Studio and add your sources.
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.
If all goes well you'll see the meter for the moble mic moving.
Your phone will now look like this:
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 https://obsproject.com/forum/resources/obs-virtualcam.539/).
In the next few posts I'll be exploring other solutions
Here's how to set up a wifi hotspot on debian:
Open Network:
This post is linux-centric, but the solution should be applicable to OSX and Win as well.
Using a mobile phone as a wireless lavalier microphone
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.
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).
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.
What do you need?
You need
* an android phone (similar solutions should be available for iOS)
* 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.
* the program LANMic installed on your phone
* OBS Studio to receive the stream from LANMic. There are other programs -- as long as they can receive rtsp streams, they are OK.
How-to
1. Install LANmic on your phone. Connect a lavalier/lapel mic to your phone. Install OBS Studio on your computer.
2. Both devices (phone and computer) need to be able to communicate with each other over the LAN.
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.
3. Start LANmic on your phone, select rtsp and start streaming. Note the address of your phone (here: rtsp://192.168.2.13:8080)
It'll look like this because nothing's connect to it:
4. Start OBS Studio and add your sources.
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.
If all goes well you'll see the meter for the moble mic moving.
Your phone will now look like this:
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 https://obsproject.com/forum/resources/obs-virtualcam.539/).
In the next few posts I'll be exploring other solutions
Here's how to set up a wifi hotspot on debian:
Open Network:
Labels:
lanmic,
lavalier,
linux,
mic,
mobile phone,
obs studio,
teaching,
wifi
29 November 2019
657. More on charges in nwchem and gaussian
A 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 link). The authors used NWChem 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.
I use Gaussian almost exclusively these days, mainly due to how fast it is.
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.
NWChem (6.8):
This gives an energy of -655.860806066326.
Removing the charges for H1 and setting the total charge to +2 gives an energy of -657.044328628867
Gaussian (16.A01):
WRONG:
gives an energy of -655.679686484!
However,
Removing the znuc specifications and using
Keeping the znuc specifications and defining those protons as fragment 2, and the rest of the cluster as fragment 1
Conclusion:
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.
I use Gaussian almost exclusively these days, mainly due to how fast it is.
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.
NWChem (6.8):
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
This gives an energy of -655.860806066326.
Removing the charges for H1 and setting the total charge to +2 gives an energy of -657.044328628867
Gaussian (16.A01):
WRONG:
%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
gives an energy of -655.679686484!
However,
gives an energy of -655.860712881, which is what we want.2 1 ! charge and multiplicity
Removing the znuc specifications and using
gives an energy of -657.0442293332 1 ! charge and multiplicity
Keeping the znuc specifications and defining those protons as fragment 2, and the rest of the cluster as fragment 1
gives an energy of -655.8607128812 1 -2 1 4 1! charge and multiplicity
Conclusion:
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.
Subscribe to:
Posts (Atom)