After 11 years I figure it's time to find a new job. Since you found me here, you should know that I love to code, but my professional skill set (not that I would turn down the chance to get paid to work with a media stack) is more focused on enterprise web with a short list below. It's not totally inclusive, been doing this a long time and I didn't want the list to get unmanageable. More importantly I want to learn new things, and I haven't found anything that I couldn't learn yet - so challenge me :).

I've never owned a Samsung TV, so when we moved to the UK about a year ago I bought one. It was cheaper than the comparable Panasonic PDP, and the apps platform was light years ahead. Unfortunately it broke (line of random pixels along the left) last night (or more specifically I noticed that it was broken last night), and even more unfortunate Samsung won't do anything about it. On the plus side, it wasn't that expensive and Samsung's HDMI CEC implementation baffles the mind so I won't mind replacing it that much. Even more important, I learned something about Samsung TVs - they're only good for a year :).

UPDATE:

After complaining about this on Twitter, Samsung agreed to replace the panel. So kudos to them.

I've been working on adding support for Denon networked AVR to HTREMOTE for a few weeks now and I think it's really close to being ready for a public beta. If you have a Windows Phone (7.1/8/8.1) and either an Onkyo or Denon AVR you can join. Just send your Microsoft Account (aka Live ID) email address to andyvt@babgvant.com and let me know what kind of phone you have.

For those who aren't familar with what HTREMOTE is I've included the description and some screenshots from the store and the 1.8 change log below. It is a bit underwhelming considering how much effort went into abstracting the AVR interface to make it work :).

HTREMOTE is a remote for Ethernet enabled Denon & Onkyo / Integra audio video receivers (AVR), connected HDMI CEC and IP devices (Roku, Dune HD, TiVo and PC right now; others can be added on request). Supports selection macros and Live Tiles per input. Currently only the main zone is supported.

1.0.3.2- Minor GUI changes- Populate decoder parameters using data from ffmpeg context if the MSDK can't get it from extradata- Don't feed PTS into the MSDK if we can tell that the timestamps are messed up- Set PTS = DTS when muxing if PTS is invalid from MSDK- Make sure the first DTS is valid before using it as an offset- Change basis of rendered framerate- Expose CAVLC Off/On

1.0.3.4- Only use AR to calculate width/height- Don't use ticks_per_frame to calculate input timestamps- Calculate audio/video start PTS even when not seeking forward so it can be used to adjust A/V sync- Seek to 0 (unless -ss is used to override) for all files- Respect that MSDK versions < 1.6 do not use DTS- Try to adapt to situations where the input timestamps are crap- Test AV_CODEC_ID_H264 video streams to determine if they are AVC1 to assign the correct parser - Add a feature to seek to a common start point to attempt to deal with files with A/V that doesn't start at the same time. Use -seekstart to enable.- Pick the best video stream manually- Start moving logging from printf to av_log

1.0.3.1- Track PTS so we can make up a good one when it is missing- Basic support for hard subs, use -st to specify subtitle track and -hardsub to indicate that it should be burned in. Currently hardsubing is done b/w decode and VPP (i.e. pre-DI) because ffmpeg cannot resize the pixel format so it will probably only work with progressive content. Only tested with PGS.- Fix issues when converting soft telecined content to higher framerates- Keep looking for vobs when trying to detect framerate if the first (_0) isn't found- Only set trellis, MBBRC & ExtBRC when encoding AVC (fixes MFX_ERR_INVALID_VIDEO_PARAM error when encoding mpeg2)- Fix an issue where timestamps were not set when decoding with ffmpeg- Fix an issue where timestamps were not adjusted when using -ss parameter- Known issue: converting soft telecined content to higher framerates when using DX11 does not work. http://software.intel.com/en-us/comment/1778597#comment-1778597

1.0.2.1- Language filtering for files that contain it- Copy metadata for audio tracks when not transcoding if it exists in the source stream- Set language for audio tracks when transcoding if it exists in the source stream- Support seeking to an initial start point before transcoding via ss argument- Add rmvol argument to control rematrix volume when changing formats- Add aasync argument to control SWR "async" setting- Fix DVD language track selection- Resolve ISO 639-1 to ISO 639-2 language codes- lang arg now only works with ISO 639-2 codes- Examine all the VOB in a VIDEO_TS title to make a better guess about framerate- Include "ffmpeg.exe" shell app to convert ffmpeg args to QSTranscode args

1.0.1.9- Support creation of IIS Smooth Streaming output. Use -o pathtoutput.ismv to signal the behavior (note this feature removes the ability to create whole .ismv files). The target folder must not exist (FFmpeg will create it) and the files will be created there. For e.g. -o f:\temp\out\something.ismv will output the IIS Smooth Streaming in f:\temp\out.- Set mfxBitstream DecodeTimeStamp instead of TimeStamp with generated video timestamp- Add live555 integration for RTP/RTSP streaming. Pass the desired URL via -o. RTP requires the destination IP and port (e.g. rtp://239.255.42.42:1234). Port should be even. RTSP requires IP and port (e.g. rtsp://127.0.0.1:554), but only port is used because the machine's IP is automatically discovered. Path can be passed optionally (e.g. rtsp://127.0.0.1:554/filename).