DiskOut Output Plugin v0.0.1

2000-02-26 Thread Michael Rich

http://redrival.com/alphax86dev/downloads/diskout-0.0.1.zip

This is a zip archive of the source code I'm currently working with.  It
works in a minimal fashion currently.  For lack of a custom dialog to select
where the files go, it simply take the input file, tacks a ! onto the end of
the filename, and then changes the extension to wav, and writes it to the
same directory as the original file.

Some questions:

* How to I display a customize dialog from the preferences page when I
select my plugin?
* When the plugin is outputting the data, the time counter on the main
window does not count down.  Where is the code that makes this happen at?
Could I have messed something up that causes it not to count anymore?

Any comments/improvements are welcome.  I think I have the time calculation
messed up a bit because I used WinAmps disk outputter as a test, and none of
my output files matched in time or file size, so I still have a bit of work
to go, but at least I have a start I reckon.


Michael Rich
http://alphax86dev.cjb.net
http://www.cdx.sk/userwebs/zdrpg

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: General Question

2000-02-26 Thread Mark B. Elrod

i don't think this is the issue. i think it is bc we are sanity checking the
database on startup.the more mp3s you have the longer it takes. we were gonna stop
doing it i thought with 2.0.2 though. isaac?

elrod

[EMAIL PROTECTED] wrote:

> On 25 Feb, Duc Tang wrote:
> >
> > I fully support the freeamp program, but why does Freeamp take so long to load
> > up, I am starting to use Winamp because of it. Winamp loads up much quiker, is
> > this situation similiar on everyone's computer.
>
> You should just leave FreeAmp running. :-)
>
> But seriously, FreeAmp is built on a plugin architecture where each
> plugin is in a DLL. When Windows loads a DLL from disk, it loads the
> given DLL at a certain base address that the DLL specifies. If another
> DLL is already residing at that address, the DLL needs to be re-based.
> All of the address references in the loading DLL that assumed one base
> address now need to be told that the DLL has been rebased. This process
> is time-consuming, especially for FreeAmp since we have a lot of DLLs.
>
> This can be minimized by giving base addresses to each one of our DLLs
> so that when FreeAmp loads we can prevent the conflicts which will make
> FreeAmp load a lot faster. Why haven't we done this? We've been to busy
> writing code? Naaah.
>
> Anyway, if you want to really get into depth about this issue check out
> this article: (I mentioned this article to you a while ago Elrod, I
> just now found it again)
>
> http://msdn.microsoft.com/library/techart/msdn_pagetest.htm
>
> --ruaok Freezerburn! All else is only icing. -- Soul Coughing
>
> Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert
>
> ___
> [EMAIL PROTECTED]
> http://www.freeamp.org/mailman/listinfo/freeamp-dev

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: DiskOut Output Plugin v0.0.1

2000-02-26 Thread Mark B. Elrod

right now there is not a way for plugins to have their own prefs dynamically
displayed in the pref dialog. that is something we plan on figuring out for 3.0.

i can't answer the time stuff, Rob?

i think saving the file to the same directory as the source file is the best
solution right now.

elrod


Michael Rich wrote:

> http://redrival.com/alphax86dev/downloads/diskout-0.0.1.zip
>
> This is a zip archive of the source code I'm currently working with.  It
> works in a minimal fashion currently.  For lack of a custom dialog to select
> where the files go, it simply take the input file, tacks a ! onto the end of
> the filename, and then changes the extension to wav, and writes it to the
> same directory as the original file.
>
> Some questions:
>
> * How to I display a customize dialog from the preferences page when I
> select my plugin?
> * When the plugin is outputting the data, the time counter on the main
> window does not count down.  Where is the code that makes this happen at?
> Could I have messed something up that causes it not to count anymore?
>
> Any comments/improvements are welcome.  I think I have the time calculation
> messed up a bit because I used WinAmps disk outputter as a test, and none of
> my output files matched in time or file size, so I still have a bit of work
> to go, but at least I have a start I reckon.
>
> Michael Rich
> http://alphax86dev.cjb.net
> http://www.cdx.sk/userwebs/zdrpg
>
> ___
> [EMAIL PROTECTED]
> http://www.freeamp.org/mailman/listinfo/freeamp-dev

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: DiskOut Output Plugin v0.0.1

2000-02-26 Thread Mayhem & Chaos Coordinator

> i can't answer the time stuff, Rob?

In each PMO, there is a function called:

void  HandleTimeInfoEvent(PMOTimeInfoEvent *pEvent);

Check this function out -- it sends the time info to the player. These
functions are complicated by the fact that they need to be accurate and that
the user can seek. Your case is a lot simpler -- just figure out how many
samples you've written and convert that to HH:MM:SS and send the event to
the player as the other HandleTimeInfoEvent functions do...

Let me know if you need more info than that.

> i think saving the file to the same directory as the source file is the
best
> solution right now.

Actually, we had decided that we wanted to save the wav files into a WAV
subdirectory of the users' MyMusic directory. To do that, simply call

Error GetSaveMusicDirectory(char* path, uint32* len);

on the preference object. A pointer to the prefs object is in the context
object, which each modules has. So,
m_context->prefs->GetSaveMusicDirectory(...) would get the music dir. Append
a 'WAV' and you've got your save place. Also, the output plugin should be
careful to not overwrite existing files -- it should append a -2, -3, .., to
the filename base.

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



Re: General Question

2000-02-26 Thread Mayhem & Chaos Coordinator

> i don't think this is the issue. i think it is bc we are sanity checking
the
> database on startup.the more mp3s you have the longer it takes. we were
gonna stop
> doing it i thought with 2.0.2 though. isaac?

Isaac took care of that now, and the windows DLLs are now properly based.
Startup isn't going to get much quicker than this!

--ruaok Freezerburn! All else is only icing. -- Soul Coughing

Robert Kaye -- [EMAIL PROTECTED]  http://moon.eorbit.net/~robert

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev



RE: DiskOut Output Plugin v0.0.1

2000-02-26 Thread Michael Rich

> In each PMO, there is a function called:
>
> void  HandleTimeInfoEvent(PMOTimeInfoEvent *pEvent);
>

Hmm, it appears the function is still in the code left over from where i
based it on the DirectSound plugin.  Maybe I've not updated the variables
properly.  I'll do a check against the original code and see if I can patch
it to work correctly.


> > i think saving the file to the same directory as the source
> file is the
> best
> > solution right now.
>
> Actually, we had decided that we wanted to save the wav files
> into a WAV
> subdirectory of the users' MyMusic directory. To do that, simply call
>
> Error GetSaveMusicDirectory(char* path, uint32* len);

This sounds fine, i'll see if I can modify the code to use this directory
instead.

mike

___
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev