There is NERO_WRITE_FREESTYLE_CD type where NERO_FREESTYLE_TRACK structure has to be added to. The content of the track can either be provided by using a callback or by providing a path to a file that contains the content of the track. If you want to use the callback, set nftSourceDataExchg::ndeType to NERO_ET_IO_CALLBACK, otherwise to NERO_ET_FILE_RAW and fill in the necessary information.
For ou intention NERO_ET_IO_CALLBACK should be used, where the callback method is defined as below:
// Data exchange between application and NeroAPI is done with
// a function that gets a pointer to its own structure, a buffer
// pointer and the amount in bytes to be read or written. It
// shall return the actual amount of bytes transferred. Other
// functions indicate that the EOF file has been reached when
// reading or a serious error occured.
typedef DWORD (NERO_CALLBACK_ATTR *NERO_IO_CALLBACK)(void *pUserData, BYTE *pBuffer, DWORD dwLen);
Please look inside NeroAPI.h file and NeroAPI documentation from NeroSDK package to get more detailed information.