Author Topic: SampleDisplay3D.dll beta  (Read 2838 times)


  • Posts: 932
SampleDisplay3D.dll beta
« on: 3 Mar '08 - 17:59 »

I put together a .dll for any developer environment from TSampleDisplay3D.
It's in beta stage, replies are wellcome.

A component for use in Win32 (9x/ME/2K/XP/Vista) software. It's purpose is to provide the most powerful and efficient (yet easy to use), 3D sample functions like displaying the sample in 3D with configurable colors, automatic support for ID3v2 SESC, making a selection, zooming, quick-playing from click, configurable selection playback repeat count, edit and create Subsong seekpoints, etc. all on a powerfull Direct3D display.

See the homepage for more information.

The package is under "Sample Display 3D Library" in the download archive (3MB).

It's new and under development. Looking for beta testers.



  • Posts: 162
Re: SampleDisplay3D.dll beta
« Reply #1 on: 17 Mar '08 - 06:18 »

I like what you are trying to create. But the interface is not very efficient.
It would be easier/powerful when you do it like the rest of the bass_???.Dll's

For Example

    Channel:= BASS_StreamCreateFile(..., BASS_STREAM_DECODE or ?) or
             BASS_Mixer_StreamCreate(..., BASS_STREAM_DECODE or ?) Maybe
    SampChan:= SampleDisplay3D_Create(...., Channel);

        SampleDisplay3D_Render(SampChan) or SampleDisplay3D_Start(SampChan)
   SampleDisplay3D_GetPosition(SampChan, Flags) : int64;

   use it like
         start:=  SampleDisplay3D_GetPosition(SampChan, SAMPLE_START);
    length:= SampleDisplay3D_GetPosition(SampChan, SAMPLE_END);
    Mixer:= BASS_Mixer_StreamCreate(44100, 2, BASS_SAMPLE_FLOAT or BASS_STREAM_DECODE);
    BASS_Mixer_StreamAddChannelEx(mixer, channel, 0, start, length); // add the channel
    BASS_Encode_Start(mixer, 'Filename.wav', BASS_ENCODE_PCM or BASS_ENCODE_FP_32BIT);

   There is a lot of unnecessary code which unnecessarily increases the size of the dll, like
   StreamSaveWAV        << use bassenc.dll
   ID3v2 Stuff
   Feature request:
     live (spectrum3D, Oscilloscope3D, ...?) like in ...\delphi\SampleVis
    You could rename the dll to Bass_SampleDisplay3D ;)



  • Posts: 932
Re: SampleDisplay3D.dll beta
« Reply #2 on: 19 Mar '08 - 13:46 »
Thanks for the reply!

I am afraid only streams that have a lenght are supported, so can't be used on a recording channel.
Made some modifications and updated the archive.

I made another component (yet Delphi only) based on your suggestion. ;)
TSpectrum3D component for Delphi