Critical Edge: XSplit Panel Writer 2 Released!

  • Admin
Well its been several months since my last update to my XSplit Panel Writer program. There have been quite a few feature requests since then as well, and I can tell you that none of them have been implemented in this update! Instead, this update is a full complete rewrite of all the internal code for the program.

Why the rewrite? Because this program was actually the first offline application I've ever written for public release; most of my work involves online programming and web-scripting languages. As time went on, and each update to this program was released, the code became more and more "hacky" and it was starting to produce errors. That being said, while no requests have been added, there are some interesting new features.

XSplit Panel Writer 2.0.0 Release Notes:


In the past, with each update, users had to manually re-download the package in it's entirety, and there was no mechanism available to inform people that an update was available. Now there is! When the program starts up, it will check online to see if an update for the application is available. You can of course disable the auto-updater if you wish.


The rest of the program remains pretty much intact; events, 2 player matches, 4 player matches, casters (commentators) panel, captions (lower thirds, two sets are available), and of course both Twitch and Twitter integration. Besides the small changes, you will now see a "(config)" button on the bottom right of each tab. Clicking that button will bring up a config menu for that specific tag.


Each tab's configuration is now individual and separated from each other. You can define source directories for each image and data file individually. In addition to that, you can now set to export data for each field on a case by case basis. I know for myself, there were some fields in which I had no need to store new data at the end of each stream; I wanted to load a default set of data at the start, and never append new sets of data to it. Now you can do this very easily.


On both match tabs (2 Players & 4 Players) you will also see new buttons for "Copy VS", "VS 1+2", and "VS 1+3". These buttons will automatically copy match information to your clipboard so you can easily rename files. The way I stream, after every match, I name my files immediately; it saves me time doing it later in the night.

The data copied to your clipboard is based on the player names, short-hand round and game information (stuff after the | pipe), and the prefix data on the "Event" tab. The event tab screenshot above shows "Recording - ", " VS ", " & ", so if I clicked "Copy VS" on the "2 Players" tab, it will return me with: Recording - UMvC3 FR - Player One VS Player Two.


Another significant update would be with how Twitch integration is handled. In the older version, once a minute, the program would poll the Twitch API for viewer information and place the number of viewers in the title bar. The problem with this, is that during the polling, the entire program would momentarily freeze for a few seconds until Twitch returned a response; and if it didn't, it would return an error.

So with this new version, the poll for viewers has been put into a different thread; yes, this simple program is now a multi-threading application! Since the API query is on a different thread, it wont freeze the program during the poll, and if it fails, it will fail silently. API queries activated by clicks, such as clicking "UPDATE", or first signing in, are not on this separate thread by design.

In addition to this, on the Twitch tab, you will see 2 arrows. These 2 arrows will now open up the Twitch chat room directly in the program! The P button to the right of these arrows will open the chat room in it's own popup window. Be warned however that these windows are based on Windows Presentation Foundation (sort-of IE); if you use admin/mod functions in your chat room, you will receive javascript errors (although the admin/mod functions work properly).

The program itself requires .NET Framework 4.0. Why 4.0 and not 3.5? Because it supports the built in chat room better. As well, because of the many new features and settings, exported setting files from the old version will not import into the new version. There may be other new features that I am forgetting to mention...

How to purchase:
If you purchased the older versions previously, you should have been automatically emailed new download links to the new version. If you are having trouble downloading the new version, send me an email using the "Contact Us" link at the bottom of this page. Hopefully, with this new auto-update system, downloading updates won't be as complicated.
Jason Axelrod

Jason Axelrod

Owner and Operator of 8WAYRUN
Greetings Jaxel,

Thanks for the continuing development of this wonderful plugin. I've been having some issues with the output (xsplit_output) of modified source images (xsplit_images).

For example (it happens with all of them), if I take default "event-event" image and add a simple outline stroke with photoshop, when I commit the change on the panel and save it, the "event-event" image output to "xsplit_output" is not correct. The content of the image is not on the right spot and out of proportion.

None of the of the image core properties were changed in Photoshop other than adding an outline. It even happens with the untouched stock image included in the v2 package.

I even tried using the default images of the v1.2, v1.5 and v1.5a packages and it happens with edited images in all instances. If I only keep the default (no edits) of versions 1.5 and 1.5a it works.


Stock/default "event_event" png.

Output "event_event" png.
It looks like your Photoshop image is saving the size of your image as 1920x1080, when it is really 1280x720... check your settings.
Just checked and no changes are being made to the original file dimensions; this is happening to the output file even if I use the default files.

Furthermore, I deleted all previous installations of the package and started from scratch. Even a brand new extraction of the v2 package with all the original files is doing the same thing with the same output.

Note: v1.5 is working as intended with default files and Photoshop manipulated files.

Capture of the whole "xsplit-output" folder including the png properties using nothing but default settings and files.
Go to: Control Panel\All Control Panel Items\Display

Are you set to Smaller, Medium or Larger?

Also, what is your DPI size set to?
Give me a capture of your xsplit-input folder with properties. The size of the output images are based on the sizes of your source images. It sounds as if your computer is reporting wrong sizes for your source images.

using (FileStream output = new FileStream(outputFile, FileMode.Create))
    BitmapImage bitmap = new BitmapImage(new Uri(sourceFile, UriKind.Relative));
    DrawingVisual visual = new DrawingVisual();
    using (DrawingContext image = visual.RenderOpen())
        image.DrawImage(bitmap, new Rect(0, 0, bitmap.PixelWidth, bitmap.PixelHeight));
        buildText(image, "event_event1", this.event_event1.Text);
        buildText(image, "event_event2", this.event_event2.Text);
        buildText(image, "event_event3", this.event_event3.Text);
    RenderTargetBitmap target = new RenderTargetBitmap(bitmap.PixelWidth, bitmap.PixelHeight, bitmap.DpiX, bitmap.DpiY, PixelFormats.Default);
    BitmapEncoder encoder = new PngBitmapEncoder();

Also, if you can contact me on AIM... we can try to debug this together.
Thanks for the prompt response. Not sure what time zone you're in, but I'll get the screen shots as soon as I get home this evening. I'll DM the AIM details then.

There is no "xsplit-input" folder, so I'm assuming you meant "xsplit-images" folder. Attached is a screen cap of the "xsplit-images" folder with the properties as you requested. This was captured from a fresh install of v2 on a totally different computer running Win7.

I tried to save and it returned the same output as before.

"xsplit-images" folder (default/stock png)
I figured it out... it was the images I included; nothing was wrong with the program itself. For some reason, Photoshop stored the image sizes incorrectly... I have fixed the images and re-uploaded the package. But either way, if you just make your own new images, the problem shouldn't persist.

You're the man. I was starting to go nuts, since I tried everything under the sun trying to figure it out. LMAO

Should we use the same download link?

Man, just when I thought I was home free. I'm getting Twitter and Twitch API errors on v2.0.1. All other versions (v1.5/v1.5a) still work with both sites.

Running .NET 4.0

First off thank you to such a lovely piece of work! Easily worth the $10 and then some.

Now everything is working fine but the commercials in the twitch tab dont work. i can update my status, but pressing the commercial button does nothing and of course the auto does nothing as well.

Am i the only one with this problem?
Hey Jaxel,

Just did a new build and am running into the same problem as PaPaGrim. I downloaded it with the link sent via email, and just now tried it on both my large rig and portable (current one I am using) rig.

I checked everything in the posts above, DPI, image sizes, etc and also have done the following.

Taken the Panel Writer output image, placed it in photoshop and used my size test 1280x720 image and it resized it to what PPG was experiencing.

I took the same file and placed it into the XSPLIT 1.5 writer and the output came out like it was supposed to.

And possible idea of what might be wrong?


  • image.gif
    97.7 KB · Views: 432
With firewall and anti-virus disabled, still same outcome on 2 different computers.
Just did a new build and am running into the same problem as PaPaGrim.
I've looked into this... and I think I've figured out the problem...

Make sure you have .NET4 installed on your machine... .NET4 Client Profile isn't enough. You need the entire .NET4; which is only 7mb bigger than the client profile version.
I'm experiencing the same issue with output images getting resized that PPG and slash5150 reported. Any advice on this? I'm trying to figure out how my images differ from the provided sample images, but nothing is jumping out at me.

edit: Actually, now that I'm digging deeper into the PNG file info, it looks like Photoshop is throwing in some extra data if I open the sample image and then resave it.

Using ImageMagick to analyze the files, your original image shows "Units: undefined", but after resaving in Photoshop I get "Units: PixelsPerCentimeter \ Resolution: 28.35x28.35 \ Print size: 45.1499x25.3968". Both show "Geometry: 1280x720+0+0". There are a few other minor differences, but none of them seem relevant.

edit #2: Nevermind, if I create an entirely new image and set the DPI to 96, it works. Photoshop for some reason was defaulting to 72 DPI when I was resaving the included files (I assume because it isn't specified in the PNG file itself).

Live streams

38 Viewers
Educational Stream. Ranked/Set/Lab. EOD tourny later today!
10 Viewers
[SCVI PC| ESP/ENG] Mi-na Main In Session
6 Viewers
SOUL CALIBUR VI - Con BubaxOne & Eapont +18
5 Viewers
Soul Calibur 1-3 Marathon | [Tag 5] Soul Calibur 2 am Start. Waffenmeister und die neuen Charakter Arcade Story erledigen, evtl. SC3 noch.

Forum statistics

Latest member