It is July 2020, the year of the COVID-19 pandemic. Jokes in the IT sector is that the novel coronavirus is the leading agent for digital transformation and not the CxOs. The pandemic has spurred the world to change the way many things operate, especially desk bound job roles. Now, it is also transforming how I work from home.
Many of us who can simply work at a desk, with a computer that has internet access can essentially work from home. This is all thanks to the development of high speed Internet access for homes, and the maturity of many other technologies lie VPN, VDI, Remote Device Management softwares, Windows, MacOS and many more. One of the very highly utilised tools is the remote collaboration & conferencing solutions. This led to the rise of Zoom, and the likes.
Zoom was adopted by Nutanix before the pandemic, and became the de facto by the time we went into a global WFH mode. Although we still have access to other tools like Webex, but that’s another discussion altogether.
Let’s get back on topic, using your phone as a webcam. No, this is not simply to join a Zoom call on your smart phone and use the camera there, but to tether your smart phone to your laptop, and use the camera on the phone. Either as a replacement to the built in cam on the laptop, or as an additional camera.
Prior to this mass movement to work from home, turning on webcams in a web conference call was a rare practice. Once a while, someone will switch it on, and half that time it could be by accident. Now that we hardly see each other face to face in the office, it’s become common practice to enable the camera by default.
Web Conference Etiquette
All these while, I’ve been using the built in camera in my MacBook Pro, and I’m starting to see areas of improvement. It’s primary about the camera angle. I have extended my home office set up to have multi cameras, and more often than not, I am not looking at my laptop’s screen. From the perspective of the other parties I’m on a call with, I appear to be looking else where. I became even more aware about this as I come across posts about web conferencing etiquettes.
As I prefer to look at my larger screens, the solution to improving the experience is to leverage an external webcam. There are may choices in the market nowadays, and a popular cam like the Logitech Brio can go way beyond S$300. Till the day I need to do live streams at 4K resolutions, I’m fine to try something cheaper.
The hunt for budget 1080P web cams
Searching through the usual online portals like Amazon, Lazada, Shopee and Taobao, and picking up reviews over YouTube, I came across 1080p cams with large variance of prices. Logitech ones still command over S$160 a unit, and unknown brands can be like S$25. S$25 would have seem too cheap for a product give a good experience, and let alone any Mac OS support. Not taking risk there. The middle ground would be those that have been covered by YouTube reviews and they generally show samples of the image quality. I eventually narrowed the selection down to the Jelly Comb 1080P Webcam, or the Nanshiba 1080P Webcam. Granted, both are not by well known webcam manufacturers, but at least from YouTube reviews, they are good enough, and within the comfort of my budget.
S$10 EpocCam gives another life to my aged iPhone 5S
Just as I was about to place an order, I discovered on more way. Using my existing smartphones as the webcam. There are a couple of solutions out there, and one worked sufficiently well with my iPhone 5S and Mac OS X. That is the EpocCam by Kinoni. There are free (Ad driver) versions of the app to try. If you like it, you can then buy the Pro version from the app store. It is S$10.98 on the Singapore Apple app store. I really appreciate that these are no in-app purchases, and they fully support sharing the paid app via Family Sharing. The Google Play store also has a similar versions of free and paid apps. The Pro not only removes the in app Ads but also unlocks more functionality, like allowing higher resolutions than 640×480, and the use of the phone’s mic.
Setting up EpocCam with Zoom
To get it going is pretty straight forward, and with a caveat. Install the app on the smart phone, and the driver on the computer. When the app on the phone launches, it will automatically detect the computer and start streaming the camera feed to the computer. To use the feed in Zoom, we simply need to set the camera in zoom to EpocCam.
Here’s the first gotcha on Mac OS X, the security in the OS blocks the use of virtual cams. (I suspect maybe because they are unsigned). The Kinoni website has the workaround documented in their FAQ, under the Troubleshooting section. It’s a simple 2-3 steps process. I’ll repeat it here, in case that changes in the future.
- Install Xcode command line tools via Terminal.app by typing: xcode-select –install
- Remove application’s code signature with Terminal.app, for Zoom type: sudo codesign –remove-signature /Applications/zoom.us.app/
- Quit and relaunch the app with signature removed, it will now detect EpocCam
After restarting Zoom, you should start to see EpocCam as an available Camera source. I’ll touch on the other OBS Virtual Camera in a bit.
The other feature I like with the EpocCam Pro is that it also allows the phone to be used as a microphone. This is extremely handy on my 2014 Mac Mini that doesn’t have a MIC port. I must admit that it works quite well too.
EpocCam is great but not perfect
I’ll say first that I really like what the S$10 solution is giving me. Like everything else, there are room for improvements. I hope Kinoni can address this eventually.
- The app does not rotate at all, and only works in landscape mode. It will also not flip around if the phone rotates 180°. If you like landscape or need to flip the phone (like I do), you will need another intermediate software, OBS, and the add on OBS Virtual Cam. That is why there is the additional camera in my camera list above. The diagram below shows the components I have installed to get the final result. With OBS there are also other cool things that can be done, it’s a post for another day.
- This is probably not something EpocCam can improve on, but be aware. The phone can run pretty hot if using the main camera. As comparison, when I run a banking app, the phone gets really hot too. With the front facing camera, no heating issue. I ran it for 3 hours plus while writing this blog and the temperature remained comfortable. My guess is that it’s probably due to the aged processor of the iPhone 5S being driven hard by iOS 12.
My set up
Here is a combination on how I set up the software, just simple points to guide you along. I’m also very new to OB, if you have suggestions to improve on it, please do share.
- iPhone 5S – with EpocCam HD Webcam for Mac & PC (S$10.98)
- Mac Mini 2014 – with macOS Catalina and the following software
- Kinoni – EpocCam Driver
- OBS (Open Broadcaster Software) – OBS Studio (contribute)
- OBS Virtual Camera (buy coffee)
Software Configurations and Operations
Installation of the apps are pretty straightforward, I assume you should be able to do that on your own.
- EpocCam on iPhone – set the resolution to 1280×720 & switch to front camera
- EpocCam Driver – nothing else needed, at most a reboot
- OBS – Don’t need to configure any streaming options;
- Settings – set the Video base canvas and output resolutions to 1280×720
- Sources – Add a Video Capture Device, choose EpocCam, with 1280×720 preset, no need for buffering. Name the source meaningfully, especially if you use more than one. Move the source to fit where you want on the canvas. Simplest is just to line them up, as they are the same size.
- If the video image is not at the right way up, select your source and use Transform to rotate/flip as necessary.
- Zoom – follow the steps on Kinoni FAQ to allow the use to Virtual Cams on macOS
Once all these are up, you are ready to use the set up. Remember, what will be seen by the Zoom participants are what you assemble together in OBS Studio. So to get it all from Phone cam to Zoom, we need to complete these steps, in no particular order.
- Start EpocCam HD on the phone
- Start OBS Studio and make sure you can see the camera feed
- Within OBS Studio select Tools > Start Virtual Camera
- If we miss this step, you’ll see a nice filler instead
- Start Zoom meeting, choose OBS Virtual Camera as camera source
That’s all to it for a quick start. Have fun and enjoy experimenting around.
I’m going to try a double cam feed on my upcoming Zoom calls. It will be interesting to find the right angle and OBS layout.
Other features I will look at exploring are having various scenes, and to switch between them. One use case I have is when having long calls, like workshops that I run, I can switch the scene to show “break time”, instead of just an empty seat.
OBS is a very popular software used by many streamers and there are so much more things we can potentially do with it. One potential integration I can imagine now is with the Elgato Stream Deck. That’s another rabbit hole for another day.