Announcement

Collapse
No announcement yet.

Input Plugin Api Information / Discussion

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • animetedzone
    replied
    look like someone is stack in the real problem.

    Leave a comment:


  • thinktink
    replied
    Double whoops, I just had a look at the Wayback Machine. It was "Reading_and_Writing_Extended_Metadata_Information.txt", not "Reading_and_Writing_Extended_Metadata_Information.h", I must've renamed the file so that it would pop up and show formatted in my editor. It was also not in an archive, it was just hosted directly as a txt file on his server.

    Leave a comment:


  • thinktink
    replied
    Originally Posted by thinktink View Post
    ...the copy I got from the SDK download if memory serves. I'll double check that.
    Scratch that, it wasn't from the SDK, I think it was an archive from DrO's website that I downloaded a long time ago linked in a post above. DrO has taken it down so I can't verify my statement because I seem to have misplaced the archive download, how I don't know since I still have the original SDK download right in my Downloads folder.

    Leave a comment:


  • thinktink
    replied
    Originally Posted by Benski View Post
    ohh. weird. where does it specify that? ...
    In the documentation "Reading_and_Writing_Extended_Metadata_Information.h", at least the copy I got from the SDK download if memory serves. I'll double check that.

    Leave a comment:


  • Benski
    replied
    ohh. weird. where does it specify that? it should definitely be const char * for winampSetExtendedFileInfo

    Leave a comment:


  • thinktink
    replied
    Originally Posted by Benski View Post
    ...
    the unicode variants of the dllexported metadata functions do in fact take the field name as a char * (ascii string)
    Oops, wait a minute, you said "field name." Are you referring to the "data" parameter or the "val" parameter? I was talking about the "val" parameter, "field name" implies the "data" parameter.
    Last edited by thinktink; 19 September 2015, 23:40.

    Leave a comment:


  • thinktink
    replied
    Originally Posted by Benski View Post
    hi.mp3 (or hi.ext) is used to find the input plugin associated with the 'default extension' in the preferences.

    ...
    Oh! Dadgumn was I wrong. Thanks.


    Originally Posted by Benski View Post
    ...

    the unicode variants of the dllexported metadata functions do in fact take the field name as a char * (ascii string)
    Excellent (well, not the documentation part.)

    Leave a comment:


  • Benski
    replied
    hi.mp3 (or hi.ext) is used to find the input plugin associated with the 'default extension' in the preferences.

    the unicode variants of the dllexported metadata functions do in fact take the field name as a char * (ascii string)

    Leave a comment:


  • thinktink
    replied
    winampSetExtendedFileInfo(W)

    [Quandry]

    In the documentation "Reading_and_Writing_Extended_Metadata_Information.h" it defines both of the writing function winampSetExtendedFileInfo(W) as both having wchar_t * values but the value parameters for winampGetExtendedFileInfo(W) as char * and wchar_t * respectively.

    The following taken from "Reading_and_Writing_Extended_Metadata_Information.h":
    code:
    extern "C" __declspec(dllexport) int winampGetExtendedFileInfo(const char *fn, const char *data, char *dest, size_t destlen)
    extern "C" __declspec(dllexport) int winampGetExtendedFileInfoW(const wchar_t *fn, const char *data, wchar_t *dest, size_t destlen)
    extern "C" __declspec(dllexport) int winampSetExtendedFileInfo(const char *fn, const char *data, const wchar_t *val)
    extern "C" __declspec(dllexport) int winampSetExtendedFileInfoW(const wchar_t *fn, const char *data, const wchar_t *val)

    Is it supposed to be like that or is the documentation wrong on the value parameter for winampSetExtendedFileInfo?

    Leave a comment:


  • thinktink
    replied
    Originally Posted by sheh View Post
    Are there any docs explaining the more exotic functions, like Vis, DSP, etc.?

    The input plugin interface is really a surprise. I expected a simple interface for decoding and metadata, and found out the whole playback plugin chain is controlled by the input plugin. Now I know why various things behave strangely depending on input plugin used.
    No separate docs for the other plugin types you mentioned as far as I know. Just look at the comments in the SDK headers and the example plugins included in the SDK.

    Leave a comment:


  • sheh
    replied
    Are there any docs explaining the more exotic functions, like Vis, DSP, etc.?

    The input plugin interface is really a surprise. I expected a simple interface for decoding and metadata, and found out the whole playback plugin chain is controlled by the input plugin. Now I know why various things behave strangely depending on input plugin used.

    Leave a comment:


  • thinktink
    replied
    Originally Posted by thinktink View Post
    ...document "hi.mp3"?...
    /bump

    Leave a comment:


  • thinktink
    replied
    Would it be possible to document "hi.mp3"? I think I know what it's for but I would like to be sure.

    Leave a comment:


  • DrO
    replied
    heh, i think that one's caught me out a few times way way back. at least you're sorted now so that's the main thing

    -daz

    Leave a comment:


  • thinktink
    replied
    Zomg I'm a f'ing blind boning bone-head. It said it right there in the SDK and I didn't even see it or even to think to check for it while debugging:

    #define GETFILEINFO_TITLE_LENGTH 2048
    void (*GetFileInfo)(const in_char *file, in_char *title, int *length_in_ms); // if file == NULL, current playing is used

    I never checked for NULL file parameter. GAH!!!!! I've finally got it working right without the /class hack.

    Leave a comment:

Working...
X
😀
🥰
🤢
😎
😡
👍
👎