Windows testing on Travis
=========================
Travis [added Windows support last month](https://blog.travis-ci.com/2018-10-11-windows-early-release), and curiously I also added Windows support to KVM48 last month, so it would be a nice little experiment to add Windows testing on Travis.
I iterated in the [`windows-test`](https://github.com/SNH48Live/KVM48/tree/windows-test) branch for a while, but unfortunately it doesn't work once I was finally able to actually run `kvm48`. See https://travis-ci.org/SNH48Live/KVM48/jobs/451224396; the problem is in `caterpillar`'s invocation of ffmpeg:
```
[ERROR] ffmpeg failed with exit status 3221225781
[CRITICAL] unknown error occurred during merging
```
3221225781 is 0xC0000135, i.e., `STATUS_DLL_NOT_FOUND` (see [`NTSTATUS`](https://msdn.microsoft.com/en-us/library/cc704588.aspx)), so although the FFmpeg executable can be called (actually, the one called is the shim provided by Chocolatey), but somehow it couldn't load some of the required dlls.
Now, I have zero knowledge of Windows dll search paths, and a quick read of Microsoft docs isn't that enlightening — I kinda know what to try and what to dump, and I have my suspicions (environment variables are all messed up — I already know that from previous iterations just getting `kvm48` to install and run), but I'm not really dying to go down the rabbit hole; not at 1am on a work day anyway. What I do know is `kvm48` does work on my Windows tower, and I've been using it every day for a while now, so whether it fails on CI isn't a big deal.
I'm setting this aside for another day, maybe when I'm bored, or feeling heroic enough (to deal with Windows crap again).
P.S. By the way, I had success with Chocolatey-installed FFmpeg on AppVeyor in the past, so it might be a Travis environment issue (or it might be AppVeyor transparently refreshing the environment after `cinst` to make my life easier). It also could be due to me putting things in .ps1 scripts instead of laying out everything in `.travis.yml` (which is a terrible option). One could also try to use Git Bash (seems to be blessed by Travis) instead of PowerShell (second class citizen, at least for now), but I'm actually trying to learn a bit of PowerShell at the moment, which is kind of an interesting language (I don't like it, but it's undeniably interesting).