I have been working on a script to let the user capture a long clip (perhaps the entire tape) and then render it into smaller clips without having to capture again. The big problem has always been how to get the capture infomation (tapename, timecodein/out) into the resulting rendered clips, OR get the capture infomation about the rendered clips into the Vegas Capture database. Without at least one of these solutions, there would be no way to recapture a smaller clip if the clip file were to be deleted.
I have recently explored using the Offline Media generation capability in Vegas 5 to get capture information into Vegas Capture. It appears that it is going to work, but I have uncovered a crash as documented below. I submitted this to Vegas support already...
The only drawback to this approach is that the user has to initiate the "Recapture all Offline Media" action to actually launch Vegas Capture. It would be nice if there was a script action to do that, or better yet a script action to simply transfer the offline media info to Vegas Capture for inclusion in the Vegas Capture database. I don't actually need to recapture the media at this point since I have already rendered it to a new file. I just want to get the info about the clips into the capture database in case they need to be recaptured in the future.
Randall Campbell
=== Problem Submission to Vegas Technical Support ====
I have written a script for Vegas 5 to generate offline media (video) in the media pool. The timeline contains a clip that was captured by vegas capture. The user defines one or more regions in this clip and then runs the script. The script creates a offline media object for each region, setting the tapename, timecodein/out from the original clip. Then the region is rendered to a file using the same path that was used to create the offline media. Basically the idea is to break a long clip into smaller clips while retaining the ability to recapture the smaller clips from vegas capture.
When I click on Recapture all Offline Media, video capture is launched correctly and the media is added to the batch capture list. All looks good. Now, if I DON'T capture the media, and just exit the video capture utility, the following exception is thrown when returning to Vegas.
If I delete the rendered clips (that have the same path as the offline media objects) before I launch Vegas capture, then the exception is not thrown.
The problem might be that when Vegas tries to read the clips that capture supposedly just captured, Vegas might be looking for the tapename and timecodein/out fields in the metadata (INFO part of the AVI). Since those fields can not be created by rendering and therefore do not exist in the AVI file, this may be causing the exception.
Thanks,
Randall Campbell
Sony Vegas 5.0
Version 5.0a (Build 134)
Exception 0xC0000005 (access violation) READ:0x8 IP:0x56DA13
In Module 'vegas50.exe' at Address 0x400000 + 0x16DA13
Thread: GUI ID=0xD50 Stack=0x12F000-0x130000
Registers:
EAX=00000000 CS=001b EIP=0056da13 EFLGS=00010206
EBX=02e07940 SS=0023 ESP=0012f350 EBP=0012fdec
ECX=00000000 DS=0023 ESI=7c350420 FS=0038
EDX=0012ee8c ES=0023 EDI=02e07460 GS=0000
Bytes at CS:EIP:
0056DA13: 8B 48 08 8B 50 04 51 52 .H..P.QR
0056DA1B: 8D 83 98 09 00 00 68 78 ......hx
Stack Dump:
0012F350: 02E082C4 02D20000 + E82C4
0012F354: 0074E704 00400000 + 34E704 (vegas50.exe)
0012F358: 00000000
0012F35C: 00000000
0012F360: 00000000
0012F364: 02E07940 02D20000 + E7940
0012F368: 04556114 04390000 + 1C6114
0012F36C: 00000000
0012F370: 00000000
0012F374: 00000001
0012F378: 00000001
0012F37C: 00000000
0012F380: 00000000
0012F384: 00000000
0012F388: 00000000
0012F38C: 00000000
> 0012F3BC: 00780030 00400000 + 380030 (vegas50.exe)
0012F3C0: 00380034 00380000 + 34
> 0012F3C4: 00780030 00400000 + 380030 (vegas50.exe)
> 0012F3C8: 00340032 00340000 + 32 (sfspti2.dll)
0012F3CC: 00000000
0012F3D0: 00000000
0012F3D4: 00000000
0012F3D8: 00000000
> 0012F5BC: 77D43B33 77D40000 + 3B33 (USER32.dll)
> 0012F5C0: 00740053 00400000 + 340053 (vegas50.exe)
> 0012F5C4: 006C0069 00400000 + 2C0069 (vegas50.exe)
- - -
0012FFF0: 00000000
0012FFF4: 00000000
0012FFF8: 007287E0 00400000 + 3287E0 (vegas50.exe)
0012FFFC: 00000000
I have recently explored using the Offline Media generation capability in Vegas 5 to get capture information into Vegas Capture. It appears that it is going to work, but I have uncovered a crash as documented below. I submitted this to Vegas support already...
The only drawback to this approach is that the user has to initiate the "Recapture all Offline Media" action to actually launch Vegas Capture. It would be nice if there was a script action to do that, or better yet a script action to simply transfer the offline media info to Vegas Capture for inclusion in the Vegas Capture database. I don't actually need to recapture the media at this point since I have already rendered it to a new file. I just want to get the info about the clips into the capture database in case they need to be recaptured in the future.
Randall Campbell
=== Problem Submission to Vegas Technical Support ====
I have written a script for Vegas 5 to generate offline media (video) in the media pool. The timeline contains a clip that was captured by vegas capture. The user defines one or more regions in this clip and then runs the script. The script creates a offline media object for each region, setting the tapename, timecodein/out from the original clip. Then the region is rendered to a file using the same path that was used to create the offline media. Basically the idea is to break a long clip into smaller clips while retaining the ability to recapture the smaller clips from vegas capture.
When I click on Recapture all Offline Media, video capture is launched correctly and the media is added to the batch capture list. All looks good. Now, if I DON'T capture the media, and just exit the video capture utility, the following exception is thrown when returning to Vegas.
If I delete the rendered clips (that have the same path as the offline media objects) before I launch Vegas capture, then the exception is not thrown.
The problem might be that when Vegas tries to read the clips that capture supposedly just captured, Vegas might be looking for the tapename and timecodein/out fields in the metadata (INFO part of the AVI). Since those fields can not be created by rendering and therefore do not exist in the AVI file, this may be causing the exception.
Thanks,
Randall Campbell
Sony Vegas 5.0
Version 5.0a (Build 134)
Exception 0xC0000005 (access violation) READ:0x8 IP:0x56DA13
In Module 'vegas50.exe' at Address 0x400000 + 0x16DA13
Thread: GUI ID=0xD50 Stack=0x12F000-0x130000
Registers:
EAX=00000000 CS=001b EIP=0056da13 EFLGS=00010206
EBX=02e07940 SS=0023 ESP=0012f350 EBP=0012fdec
ECX=00000000 DS=0023 ESI=7c350420 FS=0038
EDX=0012ee8c ES=0023 EDI=02e07460 GS=0000
Bytes at CS:EIP:
0056DA13: 8B 48 08 8B 50 04 51 52 .H..P.QR
0056DA1B: 8D 83 98 09 00 00 68 78 ......hx
Stack Dump:
0012F350: 02E082C4 02D20000 + E82C4
0012F354: 0074E704 00400000 + 34E704 (vegas50.exe)
0012F358: 00000000
0012F35C: 00000000
0012F360: 00000000
0012F364: 02E07940 02D20000 + E7940
0012F368: 04556114 04390000 + 1C6114
0012F36C: 00000000
0012F370: 00000000
0012F374: 00000001
0012F378: 00000001
0012F37C: 00000000
0012F380: 00000000
0012F384: 00000000
0012F388: 00000000
0012F38C: 00000000
> 0012F3BC: 00780030 00400000 + 380030 (vegas50.exe)
0012F3C0: 00380034 00380000 + 34
> 0012F3C4: 00780030 00400000 + 380030 (vegas50.exe)
> 0012F3C8: 00340032 00340000 + 32 (sfspti2.dll)
0012F3CC: 00000000
0012F3D0: 00000000
0012F3D4: 00000000
0012F3D8: 00000000
> 0012F5BC: 77D43B33 77D40000 + 3B33 (USER32.dll)
> 0012F5C0: 00740053 00400000 + 340053 (vegas50.exe)
> 0012F5C4: 006C0069 00400000 + 2C0069 (vegas50.exe)
- - -
0012FFF0: 00000000
0012FFF4: 00000000
0012FFF8: 007287E0 00400000 + 3287E0 (vegas50.exe)
0012FFFC: 00000000