Nvidia Shadowplay + Vegas Pro 16 = Crash, Desynced Audio, Audio Spikes

Mweb wrote on 10/29/2018, 7:32 PM

Alright, so this issue is really hard to explain.

First, the problem occured with Vegas Pro 15, where I would import clips and it crashed the software, sometimes while importing, sometimes while editing the clip and sometimes while rendering, then I would have to reconvert the entire clip to make it work.

Then I hoped I could fix the issue by buying Vegas Pro 16 and the crashes were no longer there.

Although: When importing these Nvidia Shadowplay clips (60 FPS, Dual Audio Track) the audio would be totally messed up, hard to explain, but all audio was completely out of sync, it did not in any way, shape or form play the correct audio, it was completely jumbled, some segments of audio would play over and over and many more problems.

Then: I fixed that issue by disabling so4compoundplug.dll by renaming it to so4compoundplug.disabled, and then it would be using the plug-in called compoundplug.dll which I also disabled.

And then: it was so close to being fixed, I can see it now uses mcmp4plug2.dll as the "plug-in", that kinda works, but has some issues as well.

There are 3 current issues I'm facing with this, there are certain "spikes" in audio that randomly happen for half a second that I have to find and delete from the audio track. The audio is very often out of sync, sometimes with milliseconds, sometimes with half a second, sometimes the start of the clip is fine, but then during the clip the audio becomes out of sync (THIS IS NOT THE CLIP ITSELF, THERE IS NO ISSUE WHEN PLAYING IT WITH VLC). And the little "preview" or "audio visualizer" is not accurate, when zoomed out, it shows that there is audio when there isn't, when zooming fully in, it is finally accurate.

TL:DR: so4compoundplug and compoundplug are crashing/messing up Shadowplay clips, while mcmp4plug2 is causing delayed audio, small spikes in audio and inaccurate audio visualizer.

EDIT: Alright, so I just found out something. I rendered an entire project (ca. 15 minutes long) where I fixed the delayed audio, but the rendered product comes out with certain parts with delayed audio that was not delayed in Vegas, but the finished product had delayed audio. So I tried, with one of the specific parts that had delayed audio in the finished rendered product, to render it by itself and then it was fine as a 20 second clip. So I guess Vegas just isn't sure where the audio is, both during editing and rendering.

Comments

Kinvermark wrote on 10/29/2018, 9:35 PM

Wow, that's quite a mess you've made of your decoders. IMO you shouldn't be doing that; you can disable the so4compoundplug decoder in the Vegas preferences if you like, but the dev's have also implemented an internal blacklist for known problem footage.

I think you should restore your install to "factory settings" and then work from there. 9/10 it's the non-standard nature of game capture footage that is the problem and likely you will need to change that to get the issues solved. Have you tried OBS with settings as shown in the Vegas FAQ's?

Musicvid wrote on 10/29/2018, 10:54 PM

You provided absolutely no details about your captured source footage. Following standard troubleshooting protocol, that would be your first step -- hopefully before changing around a bunch of internal stuff that will cripple your editing environment if you keep it up. You sound like the type who would also be tempted to install a codec "pack." Don't do that.

https://www.vegascreativesoftware.info/us/forum/faq-how-to-post-mediainfo-and-vegas-pro-file-properties--104561/

That said, many folks here and on other encoding forums gave up on Shadowplay l-o-n-g ago.

Current "best practices" for acquiring screencap footage for editing in Vegas are here:

https://www.vegascreativesoftware.info/us/forum/faq-what-obs-studio-settings-work-well-with-vegas-pro--109925/

NickHope wrote on 10/30/2018, 12:11 AM

This is how to use the blacklist to prevent so4compoundplug opening Shadowplay files without disabling it completely. Change

C:\Program Files\VEGAS\VEGAS Pro 16.0\so4_blacklist_vp15.xml to this:

<?xml version="1.0" encoding="utf-8"?>
<filter_expr type="OR" comment="exclude IDR/I files where M = 1">
    <video Title="DJI.AVC" />
    <video Title="GoPro AVC" />
    <video Title="XiaoYi AVC " />
    <!-- Formats below added by user -->
    <video Title="VideoHandle" />
</filter_expr>

If you really need to use an existing Shadowplay file: If you can get one of the 3 decoders to read the audio correctly then render out a Microsoft WAV file from that, then change decoders to the one that reads the video correctly, remove the audio stream track, and bring in the WAV file.

Mweb wrote on 10/30/2018, 5:15 AM

Wow, that's quite a mess you've made of your decoders. IMO you shouldn't be doing that; you can disable the so4compoundplug decoder in the Vegas preferences if you like, but the dev's have also implemented an internal blacklist for known problem footage.

I think you should restore your install to "factory settings" and then work from there. 9/10 it's the non-standard nature of game capture footage that is the problem and likely you will need to change that to get the issues solved. Have you tried OBS with settings as shown in the Vegas FAQ's?

I tried restoring to factory settings and I've also tried updating to the latest build, this did not work.

I am not using OBS, I am using GeForce Experience to capture with Shadowplay/GeForce Share. I feel switching to OBS is not an option for me, as I currently have Nvidia Shadowplay running 24/7 to capture moments. I know that's a possibility with OBS, but it will require more resources as well and it's not as "stealthy".

Mweb wrote on 10/30/2018, 5:18 AM

This is how to use the blacklist to prevent so4compoundplug opening Shadowplay files without disabling it completely. Change

C:\Program Files\VEGAS\VEGAS Pro 16.0\so4_blacklist_vp15.xml to this:

<?xml version="1.0" encoding="utf-8"?>
<filter_expr type="OR" comment="exclude IDR/I files where M = 1">
    <video Title="DJI.AVC" />
    <video Title="GoPro AVC" />
    <video Title="XiaoYi AVC " />
    <!-- Formats below added by user -->
    <video Title="VideoHandle" />
</filter_expr>

If you really need to use an existing Shadowplay file: If you can get one of the 3 decoders to read the audio correctly then render out a Microsoft WAV file from that, then change decoders to the one that reads the video correctly, remove the audio stream track, and bring in the WAV file.

Disabling it only for Shadowplay isn't going to help since I am only editing Shadowplay clips anyway. One of the problems that occur as well, is that during the editing, after fixing the delayed audio, it sounds fine in the preview, but after it has been rendered the audio is somehow even more delayed. So I also tried ignoring that it was delayed in Vegas and then rendering it as it is normally, but the rendered file still comes out with delayed audio.

Mweb wrote on 10/30/2018, 5:23 AM

You provided absolutely no details about your captured source footage. Following standard troubleshooting protocol, that would be your first step -- hopefully before changing around a bunch of internal stuff that will cripple your editing environment if you keep it up. You sound like the type who would also be tempted to install a codec "pack." Don't do that.

https://www.vegascreativesoftware.info/us/forum/faq-how-to-post-mediainfo-and-vegas-pro-file-properties--104561/

That said, many folks here and on other encoding forums gave up on Shadowplay l-o-n-g ago.

Current "best practices" for acquiring screencap footage for editing in Vegas are here:

https://www.vegascreativesoftware.info/us/forum/faq-what-obs-studio-settings-work-well-with-vegas-pro--109925/

I tried using Media Info and here's the text info on one of the Shadowplay clips

Complete name                            : S:\Shadowplay\Call of Duty  Black Ops 4\Call of Duty  Black Ops 4 2018.10.19 - 01.49.42.03.DVR.mp4
Format                                   : MPEG-4
Format profile                           : Base Media / Version 2
Codec ID                                 : mp42 (isom/mp42)
File size                                : 900 MiB
Duration                                 : 2 min 30 s
Overall bit rate                         : 50.3 Mb/s
Recorded date                            : 2018
Encoded date                             : UTC 2018-10-18 23:49:43
Tagged date                              : UTC 2018-10-18 23:49:43

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4.2 
Format settings                          : CABAC / 1 Ref Frames
Format settings, CABAC                   : Yes
Format settings, RefFrames               : 1 frame
Format settings, GOP                     : M=1, N=30
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 2 min 30 s
Source duration                          : 2 min 30 s
Bit rate                                 : 49.9 Mb/s
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Variable
Frame rate                               : 60.000 FPS
Minimum frame rate                       : 55.181 FPS
Maximum frame rate                       : 67.771 FPS
Standard                                 : PAL
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.401
Stream size                              : 893 MiB (99%)
Source stream size                       : 893 MiB (99%)
Title                                    : VideoHandle
Encoded date                             : UTC 2018-10-18 23:49:43
Tagged date                              : UTC 2018-10-18 23:49:43
Color range                              : Limited
Color primaries                          : BT.601 NTSC
Transfer characteristics                 : BT.470 System M
Matrix coefficients                      : BT.601
mdhd_Duration                            : 150217
Codec configuration box                  : avcC

Audio #1
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 2 min 30 s
Source duration                          : 2 min 30 s
Bit rate mode                            : Constant
Bit rate                                 : 197 kb/s
Nominal bit rate                         : 96.0 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 3.52 MiB (0%)
Source stream size                       : 3.52 MiB (0%)
Title                                    : SoundHandle / System sounds
Encoded date                             : UTC 2018-10-18 23:49:43
Tagged date                              : UTC 2018-10-18 23:49:43
mdhd_Duration                            : 150032

Audio #2
ID                                       : 3
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 2 min 30 s
Source duration                          : 2 min 30 s
Bit rate mode                            : Constant
Bit rate                                 : 192 kb/s
Nominal bit rate                         : 96.0 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 3.49 MiB (0%)
Source stream size                       : 3.49 MiB (0%)
Title                                    : SoundHandle / Microphone
Encoded date                             : UTC 2018-10-18 23:49:43
Tagged date                              : UTC 2018-10-18 23:49:43
mdhd_Duration                            : 150016

Here are the "properties" info from inside Vegas

General
  Name: Call of Duty  Black Ops 4 2018.10.19 - 01.49.42.03.DVR.mp4
  Folder: S:\Shadowplay\Call of Duty  Black Ops 4
  Type: MainConcept AVC/AAC
  Size: 922,00 MB (944.132.096 bytes)
  Created: 19. oktober 2018, 00:49:42
  Modified: 19. oktober 2018, 00:49:45
  Accessed: 19. oktober 2018, 00:49:42
  Attributes: Archive

Streams
  Video: 00:02:30,220, 100,000 fps progressive, 1920x1080x32, AVC
  Audio 1: 00:02:29,989, 48.000 Hz; Stereo, AAC
  Audio 2: 00:02:29,973, 48.000 Hz; Stereo, AAC

Summary
  Year: 2018
  Text length: 150015

ACID information
  ACID chunk: no
  Stretch chunk: no
  Stretch list: no
  Stretch info2: no
  Beat markers: no
  Detected beats: no

Other metadata
  Regions/markers: no
  Command markers: no

Media manager
  Media tags: no

Plug-In
  Name: mcmp4plug2.dll
  Folder: C:\Program Files\VEGAS\VEGAS Pro 16.0\FileIO Plug-Ins\mcmp4plug2
  Format: MainConcept AVC/AAC
  Version: Version 16.0 (Build 307)
  Company: MAGIX Computer Products Intl. Co.

 

NickHope wrote on 10/30/2018, 6:21 AM

Beyond what you have tried, I don't think there is much else that can be done unless Magix fix support for Shadowplay files. They have been alerted to Shadowplay issues a number of times in the past, but the more reports they get, the more likely they are to fix it, so please report this by submitting a support request. Concentrate on the issues you've had with so4compoundplug. That decoder is still in development but the other 2 aren't.

Musicvid wrote on 10/30/2018, 10:05 AM

Streams   Video: 00:02:30,220, 100,000 fps progressive, 1920x1080x32, AVC

★★★★★★★★★★

Frame rate mode                          : Variable

Frame rate                               : 60.000 FPS

Minimum frame rate                       : 55.181 FPS

Maximum frame rate                       : 67.771 FPS

Vegas does not work with variable frame rate source, nor do most Windows NLEs.

The symptoms of putting vfr on the timeline include refusal to open, crashes when opening and editing, severe loss of audio sync, and long hangs. Now you know why I asked for your source properties as if it was important to know about them first.

Nick has given you expert downstream guidance, but your source needs to be architecturally compatible with the engine FIRST. Any .dll surgery, as needed, would necessarily come LATER.

If you ignore that order, you may never arrive at a solution. Would you put on your pants before your shorts?

That is what I mean by troubleshooting protocol -- a series of linear-sequential steps, that when used correctly, will rule out impossible or extraneous factors, leaving only probable and improbable solutions, one or more of which will ultimately prove to be correct. [Grovel] Apologies to Sir Arthur Conan Doyle).[/]

The path to a solution for you is equally logical. Give Vegas CFR files (step one), then as needed, follow additional interventions, one at a timet as spelled out by Nick (steps 2....n).

Your existing VFR source may (will) need to be remuxed with ffmpeg (preferred methid) or converted in Handbrake to CFR before becoming usable in Vegas with any decoder configuration.

 

Mweb wrote on 10/30/2018, 11:20 AM

Streams   Video: 00:02:30,220, 100,000 fps progressive, 1920x1080x32, AVC

★★★★★★★★★★

Frame rate mode                          : Variable

Frame rate                               : 60.000 FPS

Minimum frame rate                       : 55.181 FPS

Maximum frame rate                       : 67.771 FPS

Vegas does not work with variable frame rate source, nor do most Windows NLEs.

The symptoms of putting vfr on the timeline include refusal to open, crashes when opening and editing, severe loss of audio sync, and long hangs. Now you know why I asked for your source properties as if it was important to know about them first.

Nick has given you expert downstream guidance, but your source needs to be architecturally compatible with the engine FIRST. Any .dll surgery, as needed, would necessarily come LATER.

If you ignore that order, you may never arrive at a solution. Would you put on your pants before your shorts?

That is what I mean by troubleshooting protocol -- a series of linear-sequential steps, that when used correctly, will rule out impossible or extraneous factors, leaving only probable and improbable solutions, one or more of which will ultimately prove to be correct. (Grovel: Apologies to Sir Arthur Conan Doyle).

The path to a solution for you is equally logical. Give Vegas CFR files (step one), then as needed, follow additional interventions, one at a timet as spelled out by Nick (steps 2....n).

Your existing VFR source may (will) need to be remuxed with ffmpeg (preferred methid) or converted in Handbrake to CFR before becoming usable in Vegas with any decoder configuration.

Thanks for the answer. My problem with converting to CFR, is that often that results in increased file size, reduced quality or other side-effects. Another problem lies with how many clips I have to individually convert to CFR and a third problem is that I have 2 audio tracks, one for windows audio and the other for the microphone. I haven't come by any converters that handle 2 tracks very well.

I used to convert my clips, but it takes too long and is very inconvenient. I will try to research possibilities of converting clips to CFR without needing to mess with quality or audio of the clips.

Thanks

Musicvid wrote on 10/30/2018, 11:44 AM

My problem with converting to CFR, is that often that results in increased file size, reduced quality or other side-effects. 

Well you've set up a number of preconditions on your workflow, any of which may or may not be possible within Vegas. None of the objections you raised to "converting" (muxing) to CFR are inherently true, and yet your insistence on doing things the same way has effectively ruled out using Vegas as your editor at this time.

In fact, it may be a long time before any version of Vegas works with Long-GOP VFR source, yet I know they are working on it. Do you do any coding? Do you know what a "muxer" does?

I don't work for Magix; I am trying to get you to reflect on your expectations, and the weight of the technology that would be required to meet them.

-- Run one of your Shadowplay files through the Quickstream Fix utility in the VideoRedo free trial, and see if it behaves even a little differently in Vegas. I haven't needed to black out any DLLs in order to use it. VideoRedo is a muxer, and it is fast if it works on your files.. It will also do routine cuts and joins for you.

-- Also, ffmpeg is totally free, if you're willing to learn a couple of command line basics.

-- And if you are totally lazy, Handbrake will encode your files in a couple of hours, with really good results.

-- Low-level freeware muxers like AVIDemux and TSMuxer do not close your GOPs, correct errored streams or dropped sync frames, so those files may still choke Vegas.

Good luck going forward, do let us know which editor you settle on, and how it works out!

......................................….....................................................

Q: What's the first thing I need to do to get out of a hole?

A: Stop digging.

Musicvid wrote on 10/30/2018, 11:46 AM

I currently have Nvidia Shadowplay running 24/7 to capture moments. I know that's a possibility with OBS, but it will require more resources as well and it's not as "stealthy".

And that description actually explains a lot about your reasons for insisting on using Shadowplay and not the pre-qualified method. Best.

Clauril wrote on 1/6/2019, 5:22 AM

I had also audio latency, but just click CTRL + U on the audio track and then just move the track little bit until it's fine. Sorry bad English.