Helsinki Longsword Open (HLO) 2023 2024 Livestream

5 rings. 5 simultaneous live streams. One crazy Finn.

“What the fuck again, I thought this kind of madness has been put to a rest?””Fuck you! Never stop the madness and soon we go again!”

“What the fuck again, I thought this kind of madness has been put to rest?”
”Fuck you! Never stop the madness and soon we go again!”

“You are coming to do the streams again this year, right? Great!
Btw, we added a fifth ring. See you at the event!”

Yes sir.

Oh boy… Where to event start with this one. Maybe I should acknowledge the fact that I’m writing this full month after the event, so you can guess how hectic it’s been. Let’s see if I remember everything.

Let’s start with the preplanning phase. Second year doing the same event has it’s upsides. Last time I was still learning what the sport even is about meanwhile figuring out how to run 4 simultaneous streams. So this time I was more prepared for what was coming.

The last years “improvement list” that ended happening:

  • Audio

    • Lavalier Microphones to judges

  • Video

    • Camera angles

The last years “improvement list” that didn’t happen:

  • Video

    • Break graphics

    • Better utilization of Hemagon Statistics

Now after the event many have come forward with questions “what cameras you had, how did you route everything, how did you make everything work. While having these discussions I have tried my best to gather all the thoughts and ideas into one package.

So if you want to try to achieve something that I did at HLO’24 I hope this answers all your questions. In case it doesn’t, feel free to contact me via Facebook or Discord! More than happy to answer any questions you have.

EQUIPMENT

Cameras:

  • 2x Sony FS700

  • 2x Canon CR-N500 PTZ Robo

  • 1x Canon CR-N300 PTZ Robo

Audio:

  • 1x Yamaha LS9-16 w/ Dante

  • 5x Rode NT5 for ambience

  • 4x Sennheiser Beltback w/ ME2

  • 1x Rode Wireless Go II (Ring 5)

System:

  • 2x VMIX PC w/ Magewell 4HDMI IN

  • 1x StreamDeck XL

  • 1x Companion

  • 1x 5G Zyxel FWA710

Cabling:

  • Yes

VMIX

Basically when ever I stream, my backbone and workhorse when it comes to choosing the streaming software is nowadays VMIX. Given the space most HEMA tournaments, if not all, run their streams on OBS which I did use even in this event, but only as an encoder for the fifth ring.

The reasons are threefolded:

  1. integration. VMIX integrates nicely with Companion.

  2. Utility. The way VMIX can be bent over and submissed to do what the heck I want is unparalleled in the industry. There is no other streaming software that could do this that I know.

  3. It’s what I know how to use. I have now been playing with VMIX for 3 years professionally and have come to rely on it and have learned what it can and can’t do. And when I say it can do quite a lot is an understatement.

So here’s what my VMIX #1 pretty much looked like. Looks like I made somewhat a mess of things when prepping for the finals multicamera production, but this is pretty much the gist of it.

Now those who are familiar with VMIX will cringe to me for what I have done and how I have done things. But there’s a reason to the madness and you can just skimp over this. If you know how to do this already, go do it your way. This is the way I did it, and it worked for me.

So what is happening here is:
I’m using the preview view for Mix 3, which is labeled as “Ring 1” in the sources.
I’m using the program view for Mix 4, which is labeled as “Ring 2” in the sources
I’m sending Mix 5, which is labeled as “Ring 5” in the sources to be sent out via NDI to OBS for encoding.

This is so that I can turn on overlays on both views and see what’s going on in each stream at all times. This way I don’t have to guess if the overlay is on or off. Just take the eye to your hand an see. I have seen an implementation where the same program feed was fed to two different streams with different overlays on program feed, but I have no managed to get it to work the way I have wanted.

It would be pretty nice to be able to just throw all the overlays on top of the program and have the overlays be sent to different outputs as indicated in the settings menu, but as far as I can tell, this is not possible. There are obviously other ways of putting on Overlays (enabling/disabling multiview layers in input) but then I would loose the possibility to make custom graphics and animate them with VMIX GT Title editor.

In theory it should be possible to set all 4 outputs to send mix’s from 4 different sources and then throw all the overlays in program and have the system figure out where everything goes… but no. Annoyingly it’s just a theory that lacks implementation.

VMIX team, please fix!

When doing this you have to very very very careful to not send anything unwanted to the preview view. Per default when you click any source it sends it to preview. Which in this instance is what we DON’T want! Luckily this default behavior can be turned off, but has to be done on source-basis and manually.

Companion

I have been playing with Companion for quite some time now and I just love the tool. It’s like VMIX, it can do what ever you want, and then some more.

On the image you can see my base for the control scheme. Each ring got their own row. Almost. Ring #5, there was no space for you. Sorry.

Since we wanted to run ad’s before the matches I knew that there was no way in hell I would be able to stay on top with five rings starting at random times. Yeah, I know, the tournament format that was chosen ‘will have all the matches start at the same time’… in ideal world. But this is HEMA tournament. Where the format got changed immediately after it was found out that Hemagon couldn’t run it the way we would have liked.

Thank god I brought this up and agreed with Nikos in our preliminary meeting that I’ll make it so that every single ad reel is 1 minute long and every table has a button that they need to press when the judge is about ready to start. This way when that button was pressed, it would run a sequence that started the ad reel and came to the camera view automatically.

This was done in Companion and looked as follows:
Got that? Great let’s continue… just kidding.

Key F21 (did you know that the F-keys don’t end at 12 like on your keyboard? They go far beyond that!) was used because even Companion doesn’t have everything, or atleast I couldn’t find a button that started a list play manually. Normally it would automatically start playing the list when it is sent to Program, but since we are not using Mix 1 Program view it never triggers. So instead that key press makes sure, that the list play starts when it should.

Other than that the sequence is quite self explanatory.

  1. Transition “ad ring1” to mix 2 program

  2. Start the video playback

  3. Wait 59000ms (59seconds), fade “cam ring 1” to mix 2 program

  4. Wait 60000ms (60seconds), turn on overlay 1 on preview.

Preview? Yes. As mentioned above, preview is what shows Mix 2 all the time and what stream Encoder Output encodes, so we want to bring the overlay to preview. It’s a fucked up system, but it works.

For future there’s going to added automation so that “audio- follows-video”. Due to the way I routed audio this year ended up causing situations where tournaments starts, but me being tired as hell forgot to move the sliders back up. So instead of making ready mixed, I’m going to route all audio inputs from the sound desk to VMIX and control the channel muting with automation.

The very nice thing with this approach is that Companion runs a web server. And that web server can be opened by a remote PC’s browser. Since all the tables were already connected to my wireless network (next time wire them in!) this meant a few things.

You might have already guessed that having an easy “push this button and let the system do the rest” was not hard to teach for the people who ran the table. I made it even more simpler for them by creating views, where they literally had only one button on a single page. Can’t make accidental button presses if there’s nothing to press!

So this is what the table saw when they opened the page. For future use I might add a countdown clock, since it’s possible to set a clock to one of the buttons to tell how much time is left so that it gives the table a better understanding what’s going on and that the trigger has actually triggered.

Talking about audio routing, this was the year I got to play with Dante all by myself for the first time. I went with the same mentality as last year, everything comes to the desk and the desk does all the routing. In theory a sound advice and wise thing to do. In practice I could have automated audio so that there were no silence when matches started due to me falling asleep.

As you can see from the equipment listing, each rings had two microphones. One ambience and one for the referee. Now due to my workload, I enabled the mute button on the beltbacks and told the referees how to use it. This ended up being both a good and a bad thing. Bad in the sence, that during the finals you can see the cameraman (thanks Sargaroth for jumping on camera duty ad-hoc!) to turn the mute off. These thing happen. :D

On the audio side things are not that interesting. As you can see on the image, I was using bus A, B & C. Rings 1,2 & 5 respectively. Ad’s had their own audio and mixer was supplying ready-to-go mix through Dante.

This is where the biggest change for the next event comes from: instead of having a ready-to-go mix, I’m going to use the mixer as a audio processor and patch all the sources as individual audio sources to VMIX. This way I can setup automation “going to break through ad’s -> turn on break music after ad’s” and “going to ring through ad’s -> turn on microphones after ad’s”.

This way audio-follows-video, and I don’t have to worry about remembering to turn on the channels.

Edellinen
Edellinen

HLO 2023