Skip to main content

Improvements to my convention videos, a process...

I’m always looking for ways to improve my work. That goes for pretty much anything I do, but lately it is convention videos that needed more improvement.

At Kollision Con I took 57 clips that I plan on making a Youtube video out of as seen in my previous post.

Keep in mind that I use Ubuntu (Kubuntu variant) and Pentax cameras, so any directions have that angle to them.

Step 1:

  • Use techniques in the field to improve video quality over my previous efforts. I went over the method I tried here. I didn’t use the main camera strap like I had in the linked article because it would interfere with using the camera for photos. I ended up trying to just get the camera straps on each camera stretched out away from me. I think it helped a bit. A lot more can be done, but I’d like to avoid expensive awkward stabilizer setups.
  • How the camera is used is just as important. My DSLRs have somewhat limited camera control in video, but I’ll give you are rundown on how I used them.
  • Manual focus, or pre-focus and then use manual.
  • Many DSLRs don’t have auto-focus in video mode, and my cameras are included in that group. Some other brands offer auto-focus in video recording mode, but it isn’t something you should use that often. Letting the camera control focus with large aperture lenses will probably result in video clips that don’t highlight what you feel is important unless you can dynamically select the focus point (I don’t know if that is possible with those cameras). Framing in video mode is just as important with still photo mode. Using manual focus allows you to easily use the entire frame to focus on and frame subjects with interesting angles.
  • Setting: Movie Aperture control (fixed, auto). Use FIXED mode. This allows you to control the aperture manually. A lot of artistic style video uses a wide aperture to limit depth of field. If you lens is f1.4 you can select that without letting the camera decide.
  • Setting: Exposure compensation, change depending on your goals.
  • Cranking down the exposure compensation allows you to create moody lighting or other effects where you don’t want mathematically perfect exposure. The camera will naturally try to “perfectly” exposure the scene, so you will need to use that setting to correct for things like blown out highlights from a bright window in the background.
  • AE-L (auto exposure lock): Set this after achieving the exposure you want.
  • Pentax cameras don’t currently have completely manual exposure control, so it is necessary to lock down the signal gain with the AE-L button. Otherwise when filming, the video will have a pulsing effect as your scene changes. For example, if most of your scene has white in the background and a person with a black shirt walks through pretty close to the camera, the camera will attempt to add gain to the signal so the black shirt is brighter. Locking down the exposure produces much higher quality video as long as you are mindful of your scenes. If you are moving from a very bright area to a dark one, it is best to just shoot a second clip with different exposure settings.

Step 2:

  • Improve video clip quality with software. Camera shake is the biggest problem, so I went in search of something to help.
  • Deshaker plugin for VirtualDub
  • The plugin works pretty well from my limited testing so far. I wanted to batch process the clips, so I figured out how to run multiple jobs in VirtualDub. The built-in job scripting is really bare-bones, so I had to resort to creating a Linux shell script that writes out a VirtualDub .jobs file with hard coded values for each video clip. The Linux script reads a directory and creates a chunk of VirtualDub jobs text for each.
  • The gist of the bash shell script file (I made the text small so it fits on the site. Select, copy, and paste it into a text editor to see it in detail):
  • #!/bin/bashOUTPUTFILENAME='/linuxdir/linuxdir2/dsscript.jobs'SOURCEDIRECTORYLINUX='/ws_dir/video_clips'SOURCEDIRECTORY='z:\\\\ws_dir\\\\ws_dir2\\\\'DESTINATIONDIRECTORY='z:\\\\wd_dir\\\\wd_dir2\\\\'echo "changing directory..."cd $SOURCEDIRECTORYLINUXecho "creating file..."echo '// $signature 0 1' > "$OUTPUTFILENAME"echo "counting files..."FILECOUNT=`ls -l | grep -v ^l | wc -l`FILECOUNT=`expr $FILECOUNT - 1` echo '// $numjobs' " $FILECOUNT" >> "$OUTPUTFILENAME"echo "starting loop..."COUNTER=1for file in `dir -d *` ; do SRCFILE="$SOURCEDIRECTORY$file" DESTFILE="$DESTINATIONDIRECTORY""ds$file" echo '' >> "$OUTPUTFILENAME" echo '// $job "Job '"$COUNTER"'"' >> "$OUTPUTFILENAME" echo '// $input'" $SRCFILE" >> "$OUTPUTFILENAME" echo '// $output'" $DESTFILE" >> "$OUTPUTFILENAME" echo '// $state 2' >> "$OUTPUTFILENAME" echo '// $start_time 01c01df3 c2eb68c0' >> "$OUTPUTFILENAME" echo '// $end_time 01c01df3 eb3d85b0' >> "$OUTPUTFILENAME" echo '// $script' >> "$OUTPUTFILENAME" echo 'VirtualDub.Open("'"$SRCFILE"'");' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetSource(1);' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetMode(0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetInterleave(1,500,1,0,0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetClipMode(1,1);' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetConversion(0,0,0,0,0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetVolume();' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.SetCompression();' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.EnableFilterGraph(0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetInputFormat(0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetOutputFormat(7);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetMode(3);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetSmartRendering(0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetPreserveEmptyFrames(0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetFrameRate2(0,0,1);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetIVTC(0, 0, 0, 0);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetCompression(...);' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.SetCompData(...,".......");' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.filters.Clear();' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.filters.Add("Deshaker v3.0");' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.filters.instance[0].Config("18|1..");' >> "$OUTPUTFILENAME" echo 'VirtualDub.RunNullVideoPass();' >> "$OUTPUTFILENAME" echo 'VirtualDub.video.filters.instance[0].Config("18|2..");' >> "$OUTPUTFILENAME" echo 'VirtualDub.SaveAVI("'"$DESTFILE"'");' >> "$OUTPUTFILENAME" echo 'VirtualDub.audio.filters.Clear();' >> "$OUTPUTFILENAME" echo '// $endjob' >> "$OUTPUTFILENAME" COUNTER=`expr $COUNTER + 1` doneecho '// $done' >> "$OUTPUTFILENAME"echo 'finished processing.'exit
  • I edited down some of the echo lines in the loop because they were too long. Your best bet here is to use VirtualDub to generate those lines and replace them and anything else you want to change. You need to do the process by hand in VirtualDub and then select File>>Save Processing steps. Anything with VirtualDub.video is related to that except VirtualDub.Open(), VirtualDub.RunNullVideoPass(), and VirtualDub.SaveAVI() that I needed to add by hand.
  • SetCompression and SetCompData go together. They define the output compression method. Select an output compression format and then replace those lines. I was using FFMPEG with the lossless JPEG codec. My clips are pretty short, so I don’t think I’ll hit a video file size limit. Otherwise you will have to segment the video output.
  • VirtualDub.video.filters.instance[0].Config (two lines) define the two passes of the Deshaker plugin. Do each one by hand and save the processing steps. VirtualDub must be a bit inflexible, so the creator of Deshaker setup his plugin to have two distinct passes with a null video pass (or preview) in between.

Step 3: Better audio

  • Up until now I’ve been using creative commons licensed Attribution or Share-Alike audio files. Youtube doesn’t seem to like the use of CC audio in a commercial sense, so with that problem and just a general issue with finding decent songs, I’ve started researching royalty free stock music. While there seem to be quite a few sites out there, so far premiumbeat.com has the best interface and middle of the road pricing at $29.95 per song for a standard license that allows online use. When money is tight… that seems pretty expensive, but I feel it is important with my Photography Banzai channel to move on from creative commons music and I won’t use songs without permission like many users on Youtube do.
  • Along with stock music I’d like to get into producing my own. That of course will take a lot more time and money than a few stock track purchases. I’ve used some audio programs in the past, but nothing too extensive. Just recently with my Photography Banzai camera videos, I integrated a 5 second animated logo opening with a beat that I made in Linux Multimedia Studio. That is a free open source program that has a lot of functionality.

I’d like to go into more detail on a few of those topics in later postings. 


Popular posts from this blog

First look at the Sigma 18-50mm F/2.8 for Sony E-mount bought from KEH

I've use a Sony Alpha A6000 and the PZ 16–50mm F/3.5–5.6 OSS kit lens with my computer as a webcam for a long time now. It's a lower cost option that has been very consistent outputting 1080p at 30 FPS to a USB based HDMI capture device. The kit lens is generally fine, but it has a few quirks. The biggest issue is that throughout the zoom range the maximum aperture value is not fixed. This introduces technical challenges when I want to show detailed views of product or similar use cases. There are also other considerations I'll talk about later in this article. So I decided to buy the Sigma 18-50mm F2.8 DC DN | C lens in E-mount as a replacement.  Links in this article are a mix of paid and through my affiliates. I earn from each in different ways. One is a flat fee and the others I earn from qualifying purchases. Considering them for your purchasing needs helps make the creation of this information viable!   I made a video unboxing the lens and trying it out with Open Br

Viltrox AF FE 28mm f/4.5 VCM ASPH ED Lens Overview

Viltrox asked me if I wanted to take a look at this unique compact autofocus full-frame prime lens with a focal length of 28mm and a fixed f/4.5 aperture for Sony E-mount cameras. Viltrox agreed to my standard collaboration terms before sending me the lens.    In the video I talk about features, how it works in practice, and show photos I had taken on a photo walk with the Sony a7S as well as the APS-C a6000. Viltrox is starting this off as an Indiegogo campaign. They told me that it will eventually be sold through normal retailers: https://www.indiegogo.com/projects/viltrox-af-28mm-f4-5-fe-chips-size-ultra-thin-lens They said it will be $99 USD or 109 Euros with discounts during the crowdfunding period. Check out Indiegogo for details. I am not an affiliate of that website. You can check on the status of availability through my usual affiliates: B&H Photo Video Amazon As an affiliate of these shops, I earn from qualifying purchases!    The front of the lens. Key Specifications:

7Artisans 85mm f/1.8 for Nikon Z-mount Overview

Let's take a look at the 7Artisans 85mm f/1.8 for Nikon Z-mount and compare it to the official Nikon 85mm f/1.8s lens. 7Artisans sent me this lens, but had to agree to my collaboration terms . They had no say in any content I produced and were not allowed to preview anything. My  full video on YouTube Check the lens out through 7Artisans official website store: https://7artisans.store/products/af-85mm-f1-8-full-frame-lens-for-z I am not affiliated with their website and online shop. I make no commissions through them.  See the 7artisans Photoelectric 85mm f/1.8 AF Lens through my links: Amazon.com ebay.com B&H Photo Video Adorama.com As an affiliate of these shops, I earn from qualifying purchases!   Build Quality and Features The 7Artisans lens comes with a metal casing and a metal mount. It also has a USB port in the mount for potential future firmware updates. The Nikon lens is on the left. It's got a manual focus ring, an aperture ring, and a focus mode switch. The Ni