Monday, July 31, 2017

Get Started In Video Editing In 22 Minutes

What You Need To Know For Video Editing

Tools

The editor I pick is Shotcut.
There are only 2 reasons for that - ease of use and free!

The version I pick is the 64-bit Windows portable. (Download here).
You might choose the one that fits your own setting.

Setup (00:53 - 01:56 of video)

To use the program, simply extract the downloads to your destination drive.
Get into the Shotcut folder and double click the "Shotcut" exe file.

When you get into Shotcut, you will see a blank interface.
The first thing to do is adding a timeline (see  02:54 - 03:43 of video)


Basic Principles

I am talking about the fancy effects here.
Simply learn the hotkey to
1) move along the playhead (cursor of timeline) (forward, pause, rewind)
2) cut (called "split" in Shotcut) and ripple delete (delete part of the clip and snap the following one to the previous clip)
3) transition (from one clip to another)
4) change clip speed (make the video faster or slower, applicable to audio as well)
and do
5) picture in picture (PIP, that means, put an image/video on top of another video track)

The details are shown in the YouTube video below.


Conclusion

If you used other editor before, you might notice the lack of keyframming feature in Shotcut.
It's the major disadvantage of this little giant.
But still, I like the hotkey and ability to add effects (filters) with simple CSS and HTML.
Shotcut might not be suitable for big projects though.

Anyhow, It's a good starting point to learn video editing.

Forza! 

Disclaimer:  All features are applicable to my setup which might not function the same in your cases.  Use at your own risk.

Wednesday, July 26, 2017

Install OpenCV on Python 3.6 in Virtual Environment

Step1 - Downloaded The Wheel File (whl file)

In this case, my downloaded whl file "opencv_python-3.2.0-cp36-cp36m-win_amd64.whl" is in my folder "Downloads" inside "F" drive

Step 2 - Activate Virtual Environment

If you haven't setup a virtual environment, please follow along the following video
(00:09 sec - 00:17 sec) to install virtualenv
and
(00:18 sec - 01:16 sec) to virtual environment setup

https://www.facebook.com/clueple/videos/1930124850534185/

Go to the virtual environment that you want to use the whl file
In this case, my virtual environment "testGraphics" inside
folder "graphics" in "F" drive.

Go to "F" drive (if you're from default C drive,
simply type "F:"; if you're already in "F" drive,
type "cd \" to get back to the top directory of "F" drive

Activate your virtual environment with the script below:

.\graphics\testGraphics\Scripts\activate.bat

where "graphics" is the folder that holds the virtual environment
and "testGraphics" is the virtual environment folder

Step 3 - Get to the Whl File Location

Once you've activated the virtual environment ("testGraphics"),
go to the file location that your downloaded whl file sits:

In this case, my whl file ("opencv_python-3.2.0-cp36-cp36m-win_amd64.whl")
sits inside folder (F:\Downloads).

Since I am in F drive already, I simply type:
cd Downloads
to get to the "F:\Downloads" folder

Step 4 - Pip Install The whl File And Import Package

Now, you're in F:\Downloads folder.
Type the code below to install the whl file:

pip install "opencv_python-3.2.0-cp36-cp36m-win_amd64.whl"
(hit [enter])

You're ready to use the new Python package

Step 4 (Optional) - To use openCV in Python 3,
you need to import the following:

import cv2
import matplotlib
import numpy

Hope it helps.

Feel free to discuss here:

www.facebook.com/clueple

Pip Install OpenCV in Python 3 virtual environment

P.S. I just shoot a video on how to install OpenCV in Python 3.6 virtual environment (Windows 7)
The steps are more or less the same


Saturday, July 22, 2017

Record Screen From Other PC | Capture Card Avermedia C875 LGP Method

Intro

My desktop (name it "deskA") can't run certain programs that I target to capture.
But that program can be run on my laptop (name it "lapB") .

Therefore, I decide to play the program on "lapB" and mirror everything there to "deskA"
To do this I prepare the following hardware route:

1) "lapB"(laptop) - running the program
1.1) HDMI male-to-male cable 

2) capture card - take in what's done in on "lapB" via the HDMI-in
2.1) capture card (micro-usb 2.0 out to "deskA" (desktop))

3) "deskA" - turn on the recording program to record everything
passed through the capture card in (2)

Step-by-Step Instruction

Step 1 - Install capture card to your recording PC ("deskA")

In my case, I have a legacy capture card, Avermedia C875 (LGP) that can record up to 1080p @60fps.

1.1)Plug the usb cable (given along with your capture card) to "deskA" .
1.2)Switch to the PC mode (in this case, the blue light indicates PC mode is on whereas red light
signals PC-free mode is on) 
1.3) Go download the driver at the following site (depends on your capture card)
https://www.avermedia.com/gaming/download/live_gamer_portable
1.4) download ALL the drivers and then follow the installation (basically double click the firmware and follow along the installation process)

Now, you're done and you're in PC mode (that means your PC ("deskA") will be able to take in video and audio signal via the capture card.
What you'll see is the capture card with Blue light on (fixed no flashing blue light)





That capture card is hooked up to "deskA" (your recording machine) via micro-USB cable like below



Since we're going to capture what's done from another computer ("lapB"), we need to setup
our capture card to capture "Other PC"

Step 2 - Hookup your video source (e.g. "lapB") to the capture card

Before that, you need to hookup your video source device (e.g. "lapB") to the capture card's via HDMI.  It'll be like this:


At that point, you're hooking up the machine like this:

Recording PC ("deskA") -> micro-USB -> capture card -> HDMI(in) -> Video Source (e.g. "lapB" HDMI(out))

Step 3 - Setup capture card on recording PC ("deskA") to grab video 

Now, go back to "deskA".

Turn on the setup program (in our case, the RECentral),
Click the "Wizard" and go to "Platform", select "Other PC" like below

This means "asking "deskA" to get signal from "Other PC", which is "lapB" that we just hooked up".

Click "Video Source" and you'll see what's playing on "lapB" like below:
If you're playing game or YouTube, whatever, then, you'll see them in "deskA" also.
Remember, the above screen is on "deskA".

Then move on to "Audio Source" and you'll see below:

At this stage, your "deskA" (recording PC) is ready to capture both video and audio from
"lapB" (video source PC).

But, things get tricky here.

Normally, you "lapB" (laptop) won't be playing sound from the capture card
(you'll only hook up the capture card to your laptop ONLY WHEN YOU NEED TO RECORD)

So, we need to jump to step 4

Step 4 - Route the video source PC's audio ("lapB") to play through capture card

You're now back to your video source ("lapB" laptop that you want to capture)

Normally, you play your audio with the default speaker.
First of all, from your laptop ("lapB"), move your cursor to the "speaker" icon and then "right click" it.

Then, click the "Recording Device" tab.
Your default audio recording device (which in my case, the default speaker) has a green "tick" beside.

Double click the default device (e.g. the default speaker) icon and you can select "listen to"
devices (like the right hand side of the above image)

"Tick" the "listen-to device" and select your capture card (e.g. Avermedia C875 capture card) like below


Now, both the video and audio you play on "lapB" will be streamed to "deskA"

Step 4 - Record on "deskA"



Go back to "deskA" and start recording:

At this stage, you have 2 options:
1) Use the capture card's software (e.g. RECentral) to record to "deskA"
OR
2) Use other recording software to record the "screen being streammed from "lapB" to "deskA")

I prefer the route (2) because I can use software like OBS Studio (download here) to add overlay and other tweaking on my video rather than purely recording the raw screen being streamed from "lapB".
Again, this is a personal preference.
Do whatever you see fit.


Final Note

The way of capturing other PC from one PC is called "Dual PC setup".

It's mainly adopted in gaming on legacy PC.
Let's say if I want to game on my more advanced laptop ("lapB") but I don't want to push too hard
to it.  Then I will record my laptop with another desktop ("deskA").

Of cause it might seem costly but if, in my case, I got an extra legacy desktop and capture card,
I could use the dual PC setup to capture much better video and audio.

Hope it helps.