logo

Live Production Software Forums


Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
simingweng  
#1 Posted : Friday, September 1, 2023 12:30:41 AM(UTC)
simingweng

Rank: Newbie

Groups: Registered
Joined: 9/1/2023(UTC)
Posts: 2
United States

Thanks: 1 times
Currently, the "ReplayExportLastEvent" shortcut is hardcoded to export the last event in vMix AVI encoding, which is not playable on most of the other platforms out of box. Here is a fantastic user scenario that can be enabled if this shortcut can be configured to encode in MP4:


  1. Use vMix to live stream an American football game
  2. Create a replay event for each down
  3. Hit the "ReplayExportLastEvent" shortcut after a replay event is created
  4. Event is exported as MP4 in a specific local folder
  5. This local folder is automatically synced to the Cloud (Google Drive, Microsoft OneDrive, Apple iCloud Drive, etc)
  6. The coaching staff and players on the sideline can immediately playback any of the downs on a mobile device (iOS/Android) which also synced with that shared folder. (Today, the synced video file can't playback due to vMix AVI encoding)


step 5 in the list above can actually be open to any custom automation by 3rd party software, for example:

  • post to social media platform(s)
  • post to 3rd party sports video analysis platform for real time stats and performance analysis
mavik  
#2 Posted : Friday, September 1, 2023 8:31:11 PM(UTC)
mavik

Rank: Advanced Member

Groups: Registered
Joined: 4/23/2017(UTC)
Posts: 1,143
Man
Location: Germany

Thanks: 3 times
Was thanked: 166 time(s) in 148 post(s)
Take the vmix avi and convert itt into CMAF and upload it onto S3. From there you can stream to any device using cloudfront. Just as an idea.
RichDanby  
#3 Posted : Tuesday, September 5, 2023 5:06:39 PM(UTC)
RichDanby

Rank: Advanced Member

Groups: Registered
Joined: 2/23/2019(UTC)
Posts: 129
United Kingdom

Thanks: 14 times
Was thanked: 26 time(s) in 24 post(s)
+1
dhalls  
#4 Posted : Thursday, September 14, 2023 6:00:40 AM(UTC)
dhalls

Rank: Newbie

Groups: Registered
Joined: 9/14/2023(UTC)
Posts: 2
United States

Was thanked: 2 time(s) in 1 post(s)
We have done pretty much exactly this for our high school football game. We just completed it a few weeks ago and have been doing some testing with it, and so far it has been pretty good. Our purpose was a bit different, however. Rather than using it as a tool to send plays to coaches, we are using it to enable the fans in the crowd to be able to watch replays on their phones or tablets while watching the game in person. We also make it easy to download the video clip, so users can save / share / whatever. We've got a ways to go with the UI on the viewer side, but we've been pleased so far, and the system runs pretty smoothly. It is a lot of fun to watch our fans have access to instant replay from the stands from their own devices.

The system we put together works like this:

  • We mark in/out every play with a shortcut button on a Stream Deck. Quarterback snaps the ball: mark in, whistle blows: mark out

  • If the play is "big", we have another shortcut button on the Streak Deck that triggers the export process in vMix using all of the camera angles that we have (we typically have 3 cameras - regular, closeup and wide)

  • We have a script that "watches" the folder the file is exported to, and when the export completes, it triggers an upload of the file to the our backend

  • When the file finishes uploading, we run a job on the file that converts the file type to a format that is friendly to browsers / mobile devices, compresses the video (to make playback faster), creates a thumbnail / preview image of the video

  • When the conversion process finishes (typically takes about 15 seconds), the file is copied to our CDN so it is accessible on the public web


We have a page on our website (we call it "BigPlay Replay") that connects to our backend using a web socket. If the user has the "BigPlay Replay" page open on their phone / tablet / whatever, newly created replays will automatically be pushed to their device, with a little flashing green glow around new plays so they can see when a new play lands.

When the user clicks on the play, we've configured it to play in slow motion (50%) with the sound muted, so it feels a lot like a replay you'd watch on TV. Based on the way the video is exported from vMix, it plays from each camera angle sequentially, giving the viewer the option to see the replay from all the angles we have. There is a download button which allows them to download and save the video. From there, sharing is easy.

Some additional stuff we plan to add:

  • Allow the user the option to download a version of the video with minimal compression, so that they can save the highest quality version we have.

  • Allow the user the option to download a 9:16 (vertically cropped) version of the video, making it easier to share on social media.

  • Allow us to name the play as / after it is uploaded (i.e. "J. Jones touchdown run") to make them easier to find after the game (the players love finding their stuff after the game)

  • Connect it to our scoreboard data, so that the quarter / clock time can be recorded with each event (again, making it easier to find)


You can see an example of the output from our website: https://morgansportsnetwork.com/replay

If you'd like more details or have questions, I'm happy to share more info.
thanks 2 users thanked dhalls for this useful post.
simingweng on 10/7/2023(UTC), crance99 on 1/22/2024(UTC)
simingweng  
#5 Posted : Saturday, October 7, 2023 1:51:21 AM(UTC)
simingweng

Rank: Newbie

Groups: Registered
Joined: 9/1/2023(UTC)
Posts: 2
United States

Thanks: 1 times
Hi, Dhalls, thanks for the details.

The key piece here is "When the file finishes uploading, we run a job on the file that converts the file type to a format that is friendly to browsers / mobile devices". I would assume you are doing this programmatically, aren't you? Which convertor actually allows you to automate this step to convert the exported/uploaded vMix AVI encoded video file to an MP4? The converter application coming with vMix does not seem to take any command line argument and I couldn't automate it with a script or something.

How do you automate this transcoding step on your backend server upon an uploaded vMix AVI encoded video file?
dhalls  
#6 Posted : Wednesday, October 11, 2023 6:59:58 AM(UTC)
dhalls

Rank: Newbie

Groups: Registered
Joined: 9/14/2023(UTC)
Posts: 2
United States

Was thanked: 2 time(s) in 1 post(s)
As you know, vMix creates its recordings in AVI format, but we don't work with those files directly. Those files are massive, and I can't find a media player that will play nicely with those files. So, when we want to publish a replay to the web, we perform an export on the file (using a shortcut on the Stream Deck, connected to the "ReplayExportLastEvent" shortcut). When we run that shortcut, vMix produces an MP4 file that is compressed and playable by most media players. You could stop right there an upload that file to Google Drive (or whatever) and it might work just fine.

Now, we do some additional processing on our server (to further optimize the file size, capture of a preview image of the replay, push it out to our website, etc.) but that doesn't seem to be necessary for your use case. For you, it seems you just need to:

- Mark in the replay
- Mark out the replay
- Trigger the replay export using the "ReplayExportLastEvent", which will produce an MP4. Use the target folder as a location the syncs with an online location.

If the export does not produce an MP4 for you, try to first manually export a file from within the vMix UI, and choose "mp4" as the export file type. While I'm not certain, it seems that the ReplayExportLastEvent uses the file type used for the previous export. I don't see a way to specify the file type in the ReplayExportLastEvent directly.

Curious to learn of your results.
crance99  
#7 Posted : Monday, January 22, 2024 3:04:47 AM(UTC)
crance99

Rank: Newbie

Groups: Registered
Joined: 1/13/2024(UTC)
Posts: 1
United States
Location: Ri

Thanks: 1 times
Thanks for those instructions @dhalls. They work most of the time. I wanted to know if you are having this issue.

I currently am recording(in instant replay) 3 camera's, recording my main output and streaming from one computer(top of line Alienware laptop). If I don't record the instant replay everything works without a problem. If i do start to record instant replay the system doesn't export everything correctly. The first export works then it seams to hang up and not complete any of the next exports. Did you run into any of these issues before?

Thanks
hakan_forss  
#8 Posted : Friday, February 2, 2024 8:25:32 PM(UTC)
hakan_forss

Rank: Advanced Member

Groups: Registered
Joined: 12/26/2019(UTC)
Posts: 33
Sweden

+1
RichDanby  
#9 Posted : Monday, February 5, 2024 8:35:38 AM(UTC)
RichDanby

Rank: Advanced Member

Groups: Registered
Joined: 2/23/2019(UTC)
Posts: 129
United Kingdom

Thanks: 14 times
Was thanked: 26 time(s) in 24 post(s)
I had +1 this before but have hae since found ReplayExportLastEvent uses whatever export format you last used.

So do a manual export at "MP4 High" and future scripted export will be in MP4 format.
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.