NeroCOM Help Needed! Getting Desperate!

vbimport

#1

I’m trying to burn files to DVD under NeroCOM. >>NOTHING<< works!

I modified the supplied NeroCOM sample to burn DVDs, just changing the following line:

drive.BurnIsoAudioCD “Pop Star”, “Title”, 0, isotrack, Nothing, Nothing, NERO_BURN_FLAG_WRITE, 1, NERO_MEDIA_DVD_M_R

so that it would work with NERO_MEDIA_DVD_M_R.

Here’s the Nero Message box output:

Reading directories
Creating directories
Checking discs
Waiting for a particular media type:
DVD+R/RW, DVD-R/RW, DVD+R9 Double Layer
Please insert the disc to write to…
Done waiting for CD.
Waiting for a particular media type:
DVD+R/RW, DVD-R/RW, DVD+R9 Double Layer
Please insert the disc to write to…
Done waiting for CD.
Writing to cache
Caching of files started
Caching of files completed
Writing to disc
Burn process started at 2x (2,770 KB/s)
Writing Lead-in
Writing Lead-out
Writing short lead-out

It just hangs here… forever!

Any help would be greatly appreciated! I’ve wasted two days on this blasted thing (including spending hours trying to build my own interface to the Nero API routines so as to sidestep NeroCOM) already, all without success.

  • Mark

#2

Have you looked at Unisons example for VB6? It may not be of direct use if you’re using a different language but it may help you work out if the problem is with your code or not.

http://club.cdfreaks.com/showthread.php?t=82050?


#3

Thanx for the reference, I’d looked for that thread myself but couldn’t find it.

Unfortunately, my problem is with burning files onto a DVD, and that thread doesn’t talk at all about burning to DVDs. I can burn files onto a CD without any problem, but I don’t want to have to pump 30 CDs into my burner to meet my backup needs :slight_smile:

It appears there is a bug in NeroCOM when it comes to burning DVDs. I sure hope one of the developers hangs out here so it can be fixed!

  • Mark

#4

There is more than one place that you need to change the media type. Look at the code that finds the drive you are writing to. It is a call to the nero.Getdrives method. If you want to write to multiple formats you would do so by including each media type connected with “+”. For example, if you wanted to use CD-R/RW media or DVD-R/RW you would pass this to the Getdrives method and in the BurnISO… method.

NERO_MEDIA_CD + NERO_MEDIA_DVD_M


#5

Okay, my bad. Thanks!

The DVD is now burned, but it takes a LONG time to complete. Here’s the log:

9:14:21 AM #21 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in EEPROM, command version 2

9:14:21 AM #22 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in EEPROM, command version 2

9:14:39 AM #23 Text 0 File WriterStatus.cpp, Line 115
<_NEC DVD_RW ND-3500AG> start writing Lead-Out at LBA 3061 (BF5h), lenght 0 blocks

9:14:40 AM #24 Text 0 File ThreadedTransfer.cpp, Line 229
all writers idle, stopping conversion

9:14:40 AM #25 Text 0 File DVDR.cpp, Line 2325
EndDAO: Last written address was 3071

9:14:40 AM #26 Phase 133 File APIProgress.cpp, Line 273
Writing short lead-out

9:21:24 AM #27 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in EEPROM, command version 2

9:21:24 AM #28 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in EEPROM, command version 2

9:21:24 AM #29 Phase 37 File APIProgress.cpp, Line 273
Burn process completed successfully at 2x (2,770 KB/s)

9:21:27 AM #30 Text 0 File AudioCompilationImpl.cpp, Line 828
DRM: DRM burn session terminated.

9:21:27 AM #31 Text 0 File AudioCompilationImpl.cpp, Line 857
DRM: Closing entire DRM handling. Bye.

Notice that writing the “short” leadout took almost 7 minutes! Is that normal with NeroCOM? It doesn’t take that long burning the same file under Nero itself.

Also, you can’t add more sessions to the DVD, like you can when having the NeroCOM sample burn a CD. Is that a limitation of the DVD recording format, the drive, or some setting in NeroCOM that I need to tweak?

I don’t have a problem burning multisession DVDs under Nero itself.

  • Mark

#6

Are you using VB6 or VB.NET?


#7

I’m using VB6 in this instance.

  • Mark

#8

I’d not noticed that its any slower under NeroCom than under Nero itself. I know its a stupid question but what speed are you setting NeroCom to when you write the DVD as opposed to Nero itself?

The code in the link (once its changed to read/write DVD’s) will burn multisession in VB6 without any problems for me.


#9

I double checked and made sure the NeroCOM sample was burning at the same speed (8x). It’s still taking way longer (4+ minutes versus 1 minute).

Would you mind zipping me and emailing me the NeroCOM example you’re having success with? I’d like to compare it against the one I have.

  • Mark

Here’s the log output:

5:59:27 PM #10 Text 0 File ThreadedTransferInterface.cpp, Line 813
Setup items (after recorder preparation)
0: TRM_DATA_MODE1 (CTransferItem)
2 indices, index0 (150) not provided
original disc pos #0 + 2016 (2016) = #2016/0:26.66
relocatable, disc pos for caching/writing not required/required, no patch infos
-> TRM_DATA_MODE1, 2048, config 0, wanted index0 0 blocks, length 2016 blocks [_NEC DVD_RW ND-3500AG]
--------------------------------------------------------------

5:59:27 PM #11 Text 0 File ThreadedTransferInterface.cpp, Line 984
Prepare recorder [_NEC DVD_RW ND-3500AG] for write in CUE-sheet-DAO
DAO infos:
==========
MCN: “”
TOCType: 0x00; Session Closed, disc fixated
Tracks 1 to 1:
1: TRM_DATA_MODE1, 2048/0x00, FilePos 0 0 4128768, ISRC “”
DAO layout:
===========
_Start|___Track|Idx|RecDep|CtrlAdr
0 | lead-in | 0 | 0x00 | 0x41
0 | 1 | 0 | 0x00 | 0x41
0 | 1 | 1 | 0x00 | 0x41
2016 | lead-out | 1 | 0x00 | 0x41

5:59:27 PM #12 Phase 24 File APIProgress.cpp, Line 273
Caching of files started

5:59:27 PM #13 Text 0 File Burncd.cpp, Line 4183
Cache writing successful.

5:59:27 PM #14 Phase 25 File APIProgress.cpp, Line 273
Caching of files completed

5:59:27 PM #15 Phase 36 File APIProgress.cpp, Line 273
Burn process started at 8x (11,080 KB/s)

5:59:27 PM #16 Text 0 File ThreadedTransferInterface.cpp, Line 2344
Verifying disc position of item 0 (relocatable, disc pos, no patch infos, orig at #0): write at #0

5:59:27 PM #17 Text 0 File DVDR.cpp, Line 1942
Recording mode: Sequential Recording Mode for Multisession

5:59:27 PM #18 Text 0 File Mmc.cpp, Line 20531
Set BUFE: supported -> ON

5:59:27 PM #19 Text 0 File DVDR.cpp, Line 2083
Start write address at LBA 0
DVD high compatibility mode: No

5:59:27 PM #20 Text 0 File Cdrdrv.cpp, Line 8128
---- DVD Structure: Physical Format Information (00h) ----
Layer: 0, Address: 0 (0 h), AGID: 0; Length: 2050
Book Type: DVD-R (2), Part Version: 5
Disc Size: 120 mm, Maximum Rate: <not specified> (F h)
Number of Layers: 1, Track Path: Parallel Track Path (PTP), Layer Type: recordable
Linear Density: 0,267 um/bit, Track Density: 0,74 um/track
Starting Physical Sector Number of Data Area: 30000 h (DVD-ROM, DVD-R/-RW, DVD+R/+RW)
End Physical Sector Number of Data Area: 26127F h
End Sector Number in Layer 0: 0 h
Data in Burst Cutting Area (BCA) does not exist
Start sector number of the current Border-Out: 2FE10 h
Start sector number of the next Border-In: 2FFA0 h
Media Specific [16…63]:
00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 …
00 02 FE 10 00 02 FF A0 - 00 00 00 00 00 00 00 00 …
00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 …

5:59:27 PM #21 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in RAM, command version 2

5:59:27 PM #22 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in RAM, command version 2

5:59:45 PM #23 Text 0 File WriterStatus.cpp, Line 115
<_NEC DVD_RW ND-3500AG> start writing Lead-Out at LBA 2016 (7E0h), lenght 0 blocks

5:59:45 PM #24 Text 0 File ThreadedTransfer.cpp, Line 229
all writers idle, stopping conversion

5:59:46 PM #25 Text 0 File DVDR.cpp, Line 2325
EndDAO: Last written address was 2015

5:59:47 PM #26 Phase 133 File APIProgress.cpp, Line 273
Writing short lead-out

6:03:25 PM #27 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in RAM, command version 2

6:03:25 PM #28 Text 0 File DVDR.cpp, Line 5367
Booktype counter: 500, Booktype selected in RAM, command version 2

6:03:25 PM #29 Phase 37 File APIProgress.cpp, Line 273
Burn process completed successfully at 8x (11,080 KB/s)

6:03:26 PM #30 Text 0 File AudioCompilationImpl.cpp, Line 828
DRM: DRM burn session terminated.

6:03:26 PM #31 Text 0 File AudioCompilationImpl.cpp, Line 857
DRM: Closing entire DRM handling. Bye.

Existing drivers:
File ‘Drivers\CDRALW2K.SYS’: Ver=6.0.0.171 , size=24839 bytes, created 1/13/2003 10:19:26 AM
File ‘Drivers\ASPI32.SYS’: Ver=4.71 (0001), size=17005 bytes, created 8/14/2002 3:03:36 PM

Registry Keys:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon\AllocateCDROMs : 0 (Security Option)

Burn finished successfully!

  • Mark

#10

BTW, I just noticed that the discs coming out of NeroCOM are single session, while the ones from Nero itself are multisession. Could that make a speed difference on the lead out writing?

  • Mark

#11

Try only closing the session, not the whole disc by adding NERO_BURN_FLAG_CLOSE_SESSION flag to your burn flags.


#12

I’m doing my development in VB.NET so the only example I have in VB is Unisons from the above link that I downloaded and modified when I couldn’t get the session import to work in VB.NET. Other than rem’ing out some of the non-burning options I only changed all of the CD refs to DVD as in

Set Drives = Nero.GetDrives(NERO_MEDIA_DVD_P_RW)

and

If Drive.Capabilities And NERO_CAP_BUF_UNDERRUN_PROT Then
Drive.BurnIsoAudioCD “Unison”, “Backup”, 0, ISOTrack, Nothing, Nothing, NERO_BURN_FLAG_WRITE + NERO_BURN_FLAG_BUF_UNDERRUN_PROT + NERO_BURN_FLAG_CLOSE_SESSION, 0, NERO_MEDIA_DVD_P_RW
Else
Drive.BurnIsoAudioCD “Unison”, “Backup”, 0, ISOTrack, Nothing, Nothing, NERO_BURN_FLAG_WRITE + NERO_BURN_FLAG_CLOSE_SESSION, 0, NERO_MEDIA_DVD_P_RW
End If

Let me know if you still want it.


#13

The link above is an old version of Unisons example.

http://club.cdfreaks.com/showthread.php?t=84858&page=2

is the one with import session code if its any use.


#14

Thanks very much for posting the examples and the link. I was finally able to figure out what was wrong (basically, at the slower writing rates used in the sample writing the “short” leadout takes a long time – up to 8 minutes – to complete).

  • Mark