Monday, September 17, 2012

Format Description Toolkit for Java

A small library to ease parsing and encoding of non-bean files and streams has been implemented, mapping them to/from Java Beans. This allows the developer to write a single format description, mapping parsed data to Bean properties without writing separate code between reading and writing.

jFDT has the potential to improve development time of larger file and stream parsing projects by minimizing boilerplate code.

 Link To Google Code Project

Sunday, July 15, 2012

Fireworks Display Used As Convolution Reverb IR Source On Music

Summary

A South Range, MI July 4th fireworks display is demonstrated for use as a convolution reverb impulse-response (IR) source applied to music. A Canon Powershot S3IS was used to capture the IR events on-site.

Environment
The recording environment was an out door hilly, mildly-mountainous forested area with partial urbanization, approximately twenty feet from a highway. Impulse events were approximately 500 feet above ground. Wind and spectator noise were present in the environment and were also recorded. Recorded material was edited in Audacity to mix multiple IR events, ultimately removing the noise by attrition. The resulting impulse was then tapered with the "fade out" function.

Convolution processed by ConvolveJ
http://code.google.com/p/convolve-j/

All material including music (c) 2006,2012 Chuck Ritola.

Click Here For Demonstration Video

Java-Based Audio Convolution Utility

Google Code project for straightforward java-based audio convolution utility with PCM-based WAV/RIFF media.

 
A simple CLI audio convolution utility was implemented in java as a standalone JAR which accepts 44khz signed WAV files as input and impulse and outputs a 16-bit signed 44khz PCM WAV file. The utility automatically normalizes the output to prevent clipping while maximizing volume. 

Google Code home page, with download for executable .JAR can be found here.
SimpleWAVIO
A simple WAV/RIFF I/O library and extensible RIFF parser were developed as a Google Code project licensed under the GPL v.3. Its project page is here.

This library was made to bridge the abstraction gap in Java's audio API between raw bytes and abstract DataLines, Mixers, Sources and Sinks. The pragmatic purpose is to obtain mathematically-usable numerical representations of PCM WAV/RIFF files in the [-1,1] range which is customary in digital signal processing.

SimpleWAVIO utilizes a small extensible RIFF parsing/writing library in the package com.ritolaaudio.simplewavio.files.*
RIFF chunks are identified by their position in the package hierarchy.

Tuesday, July 10, 2012

Double-stack antenna for Over-The-Air TV


A successful attempt was made at gathering over-the-air (OTA) digital television signals in the Houghton/Atlantic Mine/South Range area of the Keweenaw Peninsula. Those stations which were practically watchable are listed below. Actual channels are denoted by the prefix "RF" while contained virtual/subchannels are listed below them, noting their respective network and resolution. (480 is analog NTSC equivalent). These channels were also watchable without the amplifier, however tropo scatter required the amplifier.

WBKP(RF5) 4.5mi
   5.1 -  ABC 720
   5.2 - CW 480

WNMU(RF13) 64mi
  13.1 - PBS  720
  13.2 - PBS  480
  13.3 PBS "Plus" 480

WLUC(RF35) 64mi 
   6.1 - NBC 1080
   6.2 - FOX 480


Scenario

The antenna site is in an area known for direct lightning strikes, on a shallow south side of a copper-rich hill, approximately 1/4 mile from the hill's peak. To the north is a larger hill which mostly obfuscates LOS to Houghton/Hancock. The property is less than 3 miles from a major power junction, with 3 high-voltage lines within this radius. The site is also subject to blizzard  and snow during winters. Temperature is slightly milder than typical midwest.


The area has several powerful FM stations within a 10 mile radius, two of which are 100kW and the rest in the 6-30kW range. This becomes relevant later on. Most equipment is either passed down or was readily at hand except for the ULNA, ground wire, tuner, and wifi bridge.

Design and Configuration
Addendum: The RadioShack FM trap has been moved to between the combiner/splitter and the ULNA

The antenna is a dual vertically-stacked RCA ANT3038XR broadband UHF/VHF attached to a 7 foot mast, fed via RG-6 coaxial to a Lafayette 2-way combiner/splitter which then feeds through a Radio Shack FM trap and eventually to an AbilityHDTV AbilityAmp ULNA/EXT. (20dB NF .7-.9)

The mast is pointed by an Allied U-100 rotor with a refurbished roof tripod installed atop the southmost end of a 2-storey separated garage, approximately 25 feet above ground level. This location was chosen because it is the farthest elevated area from the dwelling, minimizing personal lightning danger, as well as because it has access to the clearing to the southeast. Gain and impedance charts were not currently available for the RCA antennas.

A grounding system was added to the tripod using a clamp attached to a #6 copper ground lead which leads downward along the wall, separated and anchored using porcelain high-voltage insulators. The RG-6 downlead runs parallel to the ground wire, spaced at approx. 6 inches. spaced from the wall using screw-in wall anchors.

RG-6 downlead passes a drip-loop and a grounding block, electrically tied to the true-ground wire which continues downward to a driven stake and a tie-in with AC ground. Following the grounding block the RG-6 downlead passes through a small caulked hole in the wall into the 2nd storey of the garage.

To eliminate the need to bury cable, to maximize lightning isolation from the garage, and to ensure best signal quality, a remote-controlled HDHomeRun tuner was used, which can tune to two separate channels simultaneously and send them as a digital stream over ethernet, which could then be bridged to a carefully-configured WiFi network between buildings wirelessly.

Against the wall, slacked RG-6 is coiled to a 1ft. wide loop then fed through an AbilityAmp DC injector, then to an HDHomeRun LAN-based tuner, whose Ethernet output (100-200MHz) was sent straight down through the floor to the ceiling of the first storey to minimize interference with the antenna array. All of these devices were wall-mounted for neatness. DC power feeds to the wall-mounted devices were strung through a choke magnet as a precaution.

Ethernet from the HDHomeRun leads northward approx 30 feet and then up through the ceiling/floor back to the north wall, second-storey of the garage to a Netgear WNCE2001, serving as a WiFi bridge into the house LAN. It is crucial to accommodate a LOS, strong and stable connection to the WiFi router of the main dwelling such that the sustained throughput meets or exceeds 42Mbps on both RX and TX; any drops below this threshold would result in video breaks from the HDHomeRun. WPA encryption did not appear to cause problems with this link.

Overdrive Problems

The proximity to FM became a serious problem: With no amplification, the stack still overdrove the tuner, with 98.7MHz WGLI-FM (100kW@6mi) creating an even harmonic which saturated RF10(~98.7MHz x 2 = ~196MHz) with some bleed into RF9 and RF11 and even interfering with RF13. When power was applied to the ampifier, most of the low-VHF and high-VHF was overdriven, apparently also overdriving the ULNA, with zero signal quality and no receivable stations other than RF5. Pointing the stack toward any of these FM towers worsened the situation.

A  Radio Shack FM trap was installed between the splitter/combiner and the ULNA. This dramatically improved reception and removed the harmonic distortion. The FM trap was moved between the DC injector and HDHomeRun (tuner) with lessened improvement. Consequently the FM trap was returned to in-between the combiner and the ULNA.

Experimenting with a 54MHz hi-pass filter and clamp-on choke was also performed with inconclusive results.

Rotor Control

The U-100A rotor's control wire was old and cracked and replaced with modified CAT5e cable such that the four twisted pairs were tied together to make the four conductors needed to control the U-100A. All junctions of these wires were done using screw-terminal electrical blocks which were then coated with SPI conductive silver-impregnated paint. At the entry point into the wall, a lightning drain was installed between the rotor-control line's "common" and the antenna's downward ground lead. The possibility of controlling the rotor by ethernet is being considered.

Disclaimers

    The brands and products mentioned in this article are for reference and example only and do not constitute an endorsement, recommendation, or affiliation with any related party. Though this information is intended to be useful and functional, it is offered AS-IS without warranty even for safety or fitness for any particular purpose.


Helpful Documentation

TV Frequency Table

Kyes Antenna Guide

Channel Master Off-Air Installation Guide (for professional installers)

Tropo Scatter In Da UP