A Mind Lost

Anything and everything.

Category Archives: Windows

ACEPC AK1

AK1-300

Not that I need another computer, but there’s just something about getting a new bit of hardware to play with.  After being impressed with the performance of the QNAP-TS251+ with its Celeron J1900 CPU, I’ve been itching to get a mini system with a low watt processor.  There’s a lot of options out there, from dirt cheap ARM SBCs to pricey high-end i7 Intel NUC systems.  Some of the hardware I’d been looking at includes the Udoox86 Ultra, UP Squared, Raspberry Pi 3, ODROID-XU4, and a myriad of lower-end Intel NUC and Zotac ZBOX systems.  I’ve been hemming and hawing over picking up any one of these devices for months now.

A few weeks back, GearBest had a sale on the ACEPC AK1 that I just couldn’t resist.  The ACEPC AK1 is a mini-PC similar to (some might even say cloned from) the HP Elite Slice. Slightly smaller than a stack of five CD jewel cases, its hardware specifications are:

  • Intel Celeron J3455 with integrated Intel HD Graphics 500
  • 4GB DDR3L RAM
  • 32GB eMMC storage
  • Intel AC3165 Dual Band WiFi (supports 2.4GHz & 5GHz) and BlueTooth v4.0
  • Ethernet RJ45 10/100/1000M
  • 2xUSB 2.0
  • 2xUSB 3.0
  • 2xUSB Type-C (one internal)

Read more of this post

Advertisements

Edit with GIMP Context Menu

I’ll keep this one short and to the point.

After installing GIMP 2.6.12 for Windows, I noticed the “Edit with GIMP” entry in the context menu for image files was missing (that’s the menu that pops up when right-clicking on a file).

One Google later and I was reading a blog post on “Thoughtful Code” that pointed me to the correct registry key.  A few minor changes to Mr. Reiter’s solution and I was good to go.

[HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\edit]
@=&Edit with GIMP

[HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\edit\command]
@="C:\Program Files (x86)\GIMP-2.0\bin\gimp-2.6.exe" "%1"

The “@” refers to the “(Default)” value in a key.  I opted to set GIMP as the default edit action rather than creating a separate menu item, and set the shortcut key to “E” (that’s what the ampersand in “&Edit with GIMP” does).  I also had to change the path, as I use a 32-bit GIMP on Windows 7 x64.

For the quick ‘n easy, copy and paste the following to a text file with the .reg extension (such as Edit_with_GIMP.reg), and run it.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\edit]
@="&Edit with GIMP"

[HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\edit\command]
@=hex(2):22,00,43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,20,\
  00,46,00,69,00,6c,00,65,00,73,00,20,00,28,00,78,00,38,00,36,00,29,00,5c,00,\
  47,00,49,00,4d,00,50,00,2d,00,32,00,2e,00,30,00,5c,00,62,00,69,00,6e,00,5c,\
  00,67,00,69,00,6d,00,70,00,2d,00,32,00,2e,00,36,00,2e,00,65,00,78,00,65,00,\
  22,00,20,00,22,00,25,00,31,00,22,00,00,00

Media Playback Problems Part 2

I wrote up a long post about my media playback problems, thought I’d fixed it, played two files without a problem, hit post and went to watch a few videos.  The problem returned, my frustration trebled.

I thought I had fixed it by installing ffdshow-tryouts and Haali’s splitter.  I was mistaken.

In the end, unplugging the television and running the single LED display has completely eliminated all sync and frame dropping problems.  I just played back a 22 minute video with not a single dropped frame and Sync Offsets of 0 throughout according to MPC-HC’s statistics.

I don’t know if the videocard just cannot handle both displays, or if there’s some trickery I need to try to make it perform better, but needless to say it is bloody frustrating.

Media Playback Problems

One of the things I really dislike about reinstalling Windows, whether from need or just masochism, is that I run in to all sorts of problems that I’ve never seen before.  For example, my D-Link DWA-552’s poor performance.  That’s half the reason I bother with this blog.  I’ve a terrible memory, so keeping track of the issues and my attempts at fixing them just seems like a Good Idea.  And if I can point someone else in the right direction, even better.

After fixing my audio problems I had hoped that my media playback difficulties would be resolved as well, but this was not to be.

I run a dual display setup off of my single EVGA nVidia GeForce 460 GTX.  DVI-1 connects to a 24″ Samsung SyncMaster BX2431 LED display via a DVI-to-HDMI cable, while the HDMI connection is plugged in to a 40″ Samsung LN40D630 LCD television.  The TV’s audio is plugged in to my desktop’s 2.1 speaker setup via a 3.5mm TRS plug for those moments when I need a bit more boom.

Aside from the obvious hardware changes of a new processor, motherboard (and the differences in onboard hardware), and the recently upgraded wireless card, the only other big change is upgrading Windows 7 x64 to Service Pack 1.

My preferred media player, Media Player Classic – Home Cinema has suffered terribly from dropped video frames and the audio has refused to stay in sync, growing progressively worse as the video plays on.  VLC media player fares a little better, but while playing it averages 35-50% dropped frames according to its playback statistics.  Sometimes it’s not quite as noticeable, but being near sighted has made me annoyingly sensitive to things like frame skipping and tearing (and dead/stuck pixels in a display, to my everlasting irritation).

I’ve tried everything I can think of, upgrading/downgrading/upgrading my audio drivers for my motherboard’s built-in Realtek HDAudio hardware, using the latest beta nVidia driver, and disabling Aero in favour of the Windows Classic appearance.  I’ve twiddled services, changed audio output settings, all to no avail.

The last step I tried, and the one that seems to have finally prevailed, was to install Haali Media Splitter and a recent SVN build of ffdshow-tryouts by clsid.  I set the splitter to handle everything it could, and set ffdshow to only allow whitelisted programs due to incompatibilities with certain games that I happen to play (such as Fallout 3).

MPC-HC needed a bit more tweaking to make it use ffdshow and mkvsplitter.

I think I’ve got it right, although I’m pretty clueless when it comes to the gory details of media playback on Windows.  Either way, this appears to work and MPC-HC claims it’s using ffdshow, with the notification area icons backing it up.

So far so good.  I’ve watched two videos that were horrendous, exhibiting the sync and frame dropping issues as soon as playback began.  Using the external filters appears to have cleared up my issues completely.  I haven’t looked in to enabling DXVA in ffdshow for acceleration yet, I’m just happy I can watch videos flawlessly now.

 

Well, it looks like I spoke too soon, the sync problems are back with a vengeance.

 

This is bloody annoying.

 

Oh, and happy 36th birthday to me.

Pausing and Buzzing Sound

A few weeks back I went through a round of upgrades and handing-down, where my father received my first-gen Core i5-750 and I upgraded to an i5-2500K.  The old computer has performed exceptionally since I put it together, with hardly a problem, and the old man doesn’t need the horsepower of a slightly more modern system.

The new machine has the aforementioned “unlocked” Core i5 2500K, stock clocked at 3.3GHz (with SpeedStep enabled), with 8GB of Kingston DDR3 1600 RAM at 1333, which is what the BIOS first set it to; I’ve not been arsed to bump it manually since the performance improvements would be so negligible as to be unnoticeable.  The motherboard is an ASUS P8P67 Rev3.1, featuring onboard sound, gigabit ethernet, and bluetooth.  Graphics are handled by a GeForce 460 GTX, and wireless connectivity by a D-Link DWA-552 wireless N adapter.  The graphics and wireless card previously inhabited the i5-750 machine, and worked without problems for over a year.

When watching a video, be it in Media Player Classic, VideoLan or YouTube, or listening to music with foobar2000, the interface will become unresponsive and the audio will buzz for about a second.  This happens frequently but inconsistently.

Searching for other folks with this problem, and hopefully a solution, didn’t turn up much until I came across a link leading to “the Sycon’s DPC Latency Checker“.  This program measures the latency of Deferred Procedure Calls (the link describes the concept in detail), where a problem free computer should produce output that looks somewhat like this (I am using the samples from Sycon’s site, I didn’t screencap my own use):

When there’s a problem, it looks more like:

While I wasn’t quite seeing such predictable spikes, I was getting high latency at intermittent intervals.  Determining the cause of the high latency, a poorly performing device driver, is to go through every non-essential device in Device Manager, and disable it.  After going through the first few that came to mind (the nVidia audio driver, Realtek audio driver, and Intel gigabit LAN), I finally disabled the D-Link wireless adapter and watched as the red spikes disappeared.

The suggested solution is to update the driver for the offending device and hope that the problem is fixed.  Unfortunately, the driver for this adapter hasn’t been updated since late August of 2010!

Instead I took a quick trip to a local computer shop and picked up an ASUS PCE-N15 wireless adapter (which uses a Realtek chip).  It took just a few minutes to swap adapters and plug everything back in.

So far I’ve watched an x264 720p video with DTS audio while writing this and maxing out my network bandwidth for about 45 minutes, keeping the DPC Latency checker in the background.  While it’s peaked at 721µs, it has remained in the green and the whole video played without a single stutter.

It’s odd that I never saw this behaviour previously with (almost) exactly the same hardware.  The D-Link never caused problems before (except for an issue when I was dual-booting to Linux).

The replacement adapter “only” cost just a bit less than $40 CDN.  I’ve read many accounts of people who recommend one stay clear of ASUS hardware, but after four motherboards, a DVD and BluRay burner, as well as an ASUS notebook, I’ve yet to encounter a significant problem.  Well, okay, they did ship the notebook with Windows Vista.  But aside from that, I’ve not had an issue with their products.

VirtualBox HostAudioNotResponding

Starting a VirtualBox virtual machine results in a warning popup:

This is because Windows/the audio driver has disconnected the devices due to nothing being plugged in to the relevant ports.  Modern audio hardware has a feature called jack sensing, and can disable the respective devices when there’s nothing to receive input from or send input to.

Plugging my headset/mic combo into the front-panel audio connectors results in the microphone recording source being enabled.

If you want these sources to be available to your VM, ensure they’re plugged in before starting it.

Configure failing under MinGW

A while back (almost a year, wow), I had problems with Windows 7 “locking” executable files, preventing their deletion and overwriting.  Recently I’ve run in to problems again, specifically when running NASM’s configure script, though I’d imagine it can happen any time.

I believe the Application Experience service is acting up again.  Going through the Windows Event Viewer, there are multiple entries in the System log indicating that the Application Experience service is being started and, approximately 45 seconds later, stopping.  The times coincide with my attempts to run the configure script.  Coincidentally, my display driver just crashed.  Sometimes I really hate computers.

Anyway, we’ve had Windows Vista for five years last month (!), and Windows 7 for just over two years.  I don’t, to my knowledge, run any software that isn’t Windows 7 safe, so disabling the Application Experience service once and for all shouldn’t be an issue at this point.  The problem is that just disabling the service causes problems as mentioned in my previous post on the issue.

A bit more digging around brought me to Black Viper’s entry on the service in question, complete with a description of how to turn off this “feature” entirely.  This needs to be done via the Local Group Policy Editor, a feature which may not be available on all versions of Windows.

Using the Run dialog (WinKey+R), run “gpedit.msc”.  Navigate to Local Computer Policy->Computer Configuration->Administrative Templates->Windows Components->Application Compatibility.  The two settings we’re interested in are “Turn off Application Compatibility Engine” and “Turn off Program Compatibility Assistant Engine”.

All that’s left is to set the Application Experience service to disabled and reboot.

There’s a bevy of additional “tweaks” that can be made with the Policy Editor; Google can be your friend.  Double check before you enable/disable anything!  Also, if you do this, be aware of what you’re installing – make sure you use software that is known to work properly with Windows 7.  Now I’m off to restart.

Media Center Extender Woes

I spent a few hours banging my head in frustration trying to get Windows 7 and my XBox 360 to work together.  Windows Media Center was failing to connect, and not providing any helpful error messages.  I dug through firewall rules, services, the event log viewer, anything I could think of, but nothing was working.

In the event viewer, under Applications and Services Logs -> Media Center, the only slightly helpful error I could find was “Media Center Extender Setup failed as the Extender was detected on the network but the UPnP search for the Extender failed (timed out after 20000ms).

Anyway, long story short, it turns out that if Internet Connection Sharing is in use (which it is, I run an old wired router from my desktop’s ethernet connection to allow my television and blu-ray player to connect to the Internet), Media Center barfs and can’t connect.  So the fix, in my case, was as simple as turning off Internet Sharing on my wireless connection.

I found no documentation on any of Microsoft’s support sites mentioning this as a reason for MCE to not work.  In fact, their troubleshooting documentation is pretty crappy all around.

Zenburn for MS VC++ 2010

I found a fairly decent implementation of the Zenburn colour scheme for Microsoft’s Visual C++ 2010.  It appears to work just fine with the Express version, so hat’s off to Luke Sampson for the “port”.

It’s available here (from studiostyl.es), with styles for the 2010, 2008 and 2005 versions of Visual Studio.  The samples don’t show C/C++, but it looks pretty much like the C# sample.  Here’s a snapshot:

 

Looks pretty good.  Again, I use Envy Code R (see previous post for link).  I might have to tweak it a bit as I’m not overly fond of bold fonts in code display, but it looks good.

Microsoft Visual C++ 2010 Express Edition

I like the Visual Studio IDE.  Unfortunately, I haven’t found a free-software alternative that offers the features of Microsoft’s IDE in an appealing and customizable way.  I’ve tried CodeLite and Code::Blocks, and a handful of other environments, but there’s always something that irks me about them.  I could bug the devs, or (gasp) contribute, I suppose, but instead I’ve taken the easy route and installed the Express Edition of Microsoft’s C++ environment.

While setting it up, I ran in to a small problem with the Windows SDK – it was failing with an unclear error.  It turns out that if a newer version of the Visual C++ 2010 x86 redistributable package is installed, the SDK setup program barfs.  Removing the redistributable package via Programs and Features allows the SDK setup to do what it’s supposed to.

The version I had was 10.0.4-something.

To use the newer SDK, it must be specified on a per-project basis via the project’s property sheets (Configuration Properties/General->Platform Toolset dropdown).

The Windows SDK Configuration Tool, included with the SDK, does not work with Visual Studio 2010 unfortunately.  I would imagine one could edit the appropriate registry keys to set the updated SDK as the default, but a couple mouse clicks isn’t that inconvenient.

While Consolas is a nice enough fixed-pitch font for editing code, I prefer and recommend “Envy Code R” by Damien Guard.  I find its slim, clean lines aesthetically pleasing (I also use it with MinGW in conjunction with mintty).  Eventually I may try to figure out how to get 64-bit builds working (via the Windows DDK), but for now I’m off  to find a decent Zenburn-like colour scheme for the IDE…

 

Here’s a few links if you’re interested in playing with VC++.  Note that these are all legal links to Microsoft’s website, not some shifty “warez” crap.

Visual C++ 2010 Express.
Windows SDK for Windows 7 and .NET Framework 4 (ISO).
Windows Driver Kit v7.1.0 (ISO).

 

I think I need to practice my writing skills a bit more.  I usually get an idea for a post, but I peter out halfway through writing it.  While I generally manage to convey the main points I wanted to, reading over it reveals just how lacking/crappy the article is.  =)