Nero SDK

Posted on 2003-11-28
Last Modified: 2013-11-20

Can someone tell me how to burn a list of mp3 files onto an Audio CD, I have got the demo app working but it only burns one file

Question by:Dj_Fx8
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 48

Expert Comment

ID: 9841401
I think you are talking about NeroFiddles sample. It is very simple and doesn't give much for learning Nero. When I started to work with Nero SDK, I tried to change this sample to burn number of files. But this didn't giveme anythinh. To learn Nero SDK you should read the NeroCmd sample. First find the command-line parameters which produce the desired effect. After this read the program, debug it and learn.
NeroCMD makes all operations available in Nero. After learning this sample you will know all you want.
I can help you in specific issues, but currently your question is too general. To write number of files you should build NERO_ISO_ITEM list. This is code fragment from my project:

    for ( int i = 0; i < m_pDlg->m_list_files.GetCount(); i ++ )
        NERO_ISO_ITEM* pItem=NULL;

        CString sSourceFile, sDestFile;
        m_pDlg->m_list_files.GetText(i, sSourceFile);

        // destination: only file name (write only to the CD root directory)
        sDestFile = GetFileNameWithoutPath(sSourceFile);

        // create structure
        pItem = NeroCreateIsoItem ();

        if ( ! pItem )
            DeleteIsoItemTree (*ppItem);
            return EXITCODE_OUT_OF_MEMORY;

        // fill it
        strcpy(pItem->fileName, sDestFile);
        strcpy(pItem->sourceFilePath, sSourceFile);

        // add item to the beginning of NERO_ISO_ITEM list
        if ( ! *ppItem )
            *ppItem = pItem;
            pItem->nextItem = *ppItem;
            *ppItem = pItem;

This is Nero SDK forum which may be useful:

Author Comment

ID: 9842398
Hi Alex

Yes I am refering to the NeroFiddles sample, and as I still have a lot to learn I really struggling with the SDK, I had looked at the Nero forum, unfortunatly it's not got much of a range of solutions. I had a look at the code you have given and I see the princple behind it, I was working along these lines only when I try to burn the cd it fails, the log is as follows

Retrieving version information.
NeroAPI version
Filling NERO_SETTINGS structure
Initialization of the NeroAPI successful.
Found the following devices:
Image Recorder
Log line: Initialization failed

Windows 98 4.90 (ME)
WinAspi: File 'Wnaspi32.dll': Ver=1, 0, 0, 0, size=36864 bytes, created 08/06/2000 17:00:00
ahead WinASPI: File 'D:\CD\Nero 6\Nero\Wnaspi32.dll': Ver=, size=160016 bytes, created 17/06/2003 15:25:04
Nero API version:
Using interface version:
Installed in: D:\CD\Nero 6\Nero\
Application: ahead\Nero - Burning Rom
Recorder:             <PLEXTOR CD-R   PX-W1210A>Version: 1.07 - HA 0 TA 1 -
 Adapter driver:      <ESDI_506>               HA 0
 Drive buffer  :      2048kB
 Bus Type      :      default (0) -> ATAPI, detected: ATAPI
SONY DVD-ROM DDU1211 (Target 0, G:): Autoinsert On, DMA On, Disconnect ?, SyncDataXfer ?
PLEXTOR CD-R   PX-W1210A (Target 1, H:): Autoinsert On, DMA On, Disconnect ?, SyncDataXfer ?
Excluded drive IDs:
CmdQueuing     : 1
CmdNotification: 2
WriteBufferSize: 74448896 (0) Byte
ShowDrvBufStat : 0
EraseSpeed     : 0
BUFE           : 0
Physical memory     : 511MB (523704kB)
Free physical memory: 180MB (184796kB)
Memory in use       : 43 %
Uncached PFiles: 0x0
Use Static Write Speed Table: 0
Use Inquiry    : 1
Global Bus Type: default (0)
Check supported media : Disabled (0)

14:43:33      #1 Text 0 File NeroAPI.cpp, Line 3750
      Failed to create audio item
14:43:33      #2 NEROAPI 2 File NeroAPI.cpp, Line 4275
      Initialization failed

Existing drivers:
File 'IoSubSys\SCSI1HLP.VXD': Ver=4.90.3000, size=19278 bytes, created 08/06/2000 17:00:00
File 'IoSubsys\NEROCD95.VXD': Ver=, size=39882 bytes, created 11/03/2002 11:55:38
File 'IoSubsys\CDR4VSD.VXD': Ver=, size=101616 bytes, created 09/06/2003 19:00:26
File 'IoSubsys\CDRALVSD.VXD': Ver=, size=20043 bytes, created 09/06/2003 19:00:26
File 'IoSubsys\ACBHLPR.VXD': Ver=1.01, size=40508 bytes, created 02/03/2001 20:55:54
File 'IoSubsys\CDFS.VXD': Ver=4.90.3000, size=59141 bytes, created 08/06/2000 17:00:00
File 'IoSubsys\ESDI_506.PDR': Ver=4.90.3000, size=25365 bytes, created 08/06/2000 17:00:00
File 'IoSubsys\USBMPHLP.PDR': Ver=4.90.3000, size=4861 bytes, created 08/06/2000 17:00:00
File '..\System32\Drivers\1394bus.sys': Ver=4.90.3000.1, size=44240 bytes, created 08/06/2000 17:00:00
File '..\System32\Drivers\Ohci1394.sys': Ver=4.90.3000.1, size=49488 bytes, created 08/06/2000 17:00:00
File '..\System32\Drivers\Sbp2port.sys': Ver=4.90.3000.1, size=36336 bytes, created 08/06/2000 17:00:00
File 'IoSubsys\Disktsd.vxd': Ver=4.90.3000, size=18663 bytes, created 08/06/2000 17:00:00

Registry Keys:

BurnCD() : burn failed

I know this may still be very generlised but I'm really stuck on this
LVL 48

Accepted Solution

AlexFM earned 500 total points
ID: 9843166
Leave the NeroFiddles sample and start to work with NeroCMD. I think this is an only way. This will take a time, and you will see how many problems are not solved in the NeroFiddles. It is difficult to say what is wrong here, NeroFiddles is just too simple.
NeroCMD makes all you need. First find the parameters which make CD as you need. After this read the program text and investigate it. I also tried NeroFiddles first, but made a real program only after working with NeroCMD.

Author Comment

ID: 9846544
Hi Alex

I am following your suggestion and am studying NeroCmd, ummm it's deep, now I see what you mean about NeroFiddles being simple, oh well I guess I was looking for a quick way out here :-) but no such luck. Thank you for the advice and I'll award you a grade A for your troubles, no doubt I'll have more to ask at a later date


Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Expand data scrubbing tool 13 36
string initialization in java 11 117
sum13 challenge 24 135
Message not shown 5 87
If you use Adobe Reader X it is possible you can't open OLE PDF documents in the standard. The reason is the 'save box mode' in adobe reader X. Many people think the protected Mode of adobe reader x is only to stop the write access. But this fe…
Have you tried to learn about Unicode, UTF-8, and multibyte text encoding and all the articles are just too "academic" or too technical? This article aims to make the whole topic easy for just about anyone to understand.
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Finding and deleting duplicate (picture) files can be a time consuming task. My wife and I, our three kids and their families all share one dilemma: Managing our pictures. Between desktops, laptops, phones, tablets, and cameras; over the last decade…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question