When I read this, I have the feeling that I "hacked" the system :)
I didn't do that: I just followed the AmigaOS 4 official guideline here: http://wiki.amigaos.net/wiki/Programm ... atypes_-_Making_Life_Easy , chapter "Connecting sound.datatype and ahi.device".
I know you did, and that example code really needs an update (it's a wiki...). Clearly someone copied code from somewhere else onto the wiki.
Nevertheless, the Autodocs (i.e., the specification) state that you shouldn't rely on the sound data being there. Unfortunately, the lack of streaming datatypes meant that nobody caught the error in the example code... until now.
Now, so many people have copied that example that we're better off adding a workaround to the datatype (and preferably updating the specification too).
I know you did, and that example code really needs an update (it's a wiki...). Clearly someone copied code from somewhere else onto the wiki.
Nevertheless, the Autodocs (i.e., the specification) state that you shouldn't rely on the sound data being there. Unfortunately, the lack of streaming datatypes meant that nobody caught the error in the example code... until now.
This was my general response to Matthew when this discussion kicked off. The quoted example that the problem stems from is a naïve example - if followed verbatim you're only playing mono samples, no? Despite the possible presence of another channel or ten. Not saying it's wrong - just it's a very simple example that discounts a number of scenarios. It's also the case that if a continuous mode dt was set on OS3.9 components, the code would fail, so to be clear, this isn't a "bug" with the A-Eon implementation.
Quote:
Now, so many people have copied that example that we're better off adding a workaround to the datatype (and preferably updating the specification too).
The general solution proposed in this instance for the A-Eon data type was be to use a simple check for and loop/call to SDTM_FETCH to read the data - streaming mode or no. But, the response received was that this meant changes to the application which was undesirable (paraphrasing).
I'm looking to see how much effort and duplication it will be "fix" the subclasses to allow for non-streaming mode and sample retrieval. Might take me a while as time is at a premium right now.
Nevertheless, the Autodocs (i.e., the specification) state that you shouldn't rely on the sound data being there. Unfortunately, the lack of streaming datatypes meant that nobody caught the error in the example code... until now.
The fact is that streaming sound datatypes the way they were implemented by Commodore are basically completely useless except for simple programs that only want to play back the sound with little to no control over how it's played (like MultiView for instance).
There is no way to access the sound data from a streaming sound datatype so loading sound data into a sound editor application or any other program that needs access to the sound data is completely impossible if the datatype is implemented as streaming.
Daylight saving started last night, and the "enhanced" Time Prefs failed to cope with it.
I don't understand why its so difficult - the standard OS4.1 TimePrefs does.
My Locale specifies when daylight saving starts and ends. Why does the "enhanced" Time Prefs ignore this and default to a hardcoded daylight saving setting (for the northern hemisphere)?
Add "Search and Replace" - missing feature that has been in Notepad for ages
People are dying. Entire ecosystems are collapsing. We are in the beginning of a mass extinction. And all you can talk about is money and fairytales of eternal economic growth. How dare you! – Greta Thunberg
@Amigakit i am missing one feature in MultiEdit"Last Opened" Often i am working at the same ct over a few days. That would make it easier for me. It should remember the last opened files
in MultiEdit it's built into the default Find requester (RAmiga-F) in NotePad it requires a different menu action, Menu->Navigation->Replace or RAmiga-R
I felt that it made more sense to always have the replace in the search window as often you need a replace shortly after a search and it's a paon to close the serach and open the replace instead.
@Amigakit i am missing one feature in MultiEdit"Last Opened" Often i am working at the same ct over a few days. That would make it easier for me. It should remember the last opened files
It remebers the last saved files
Menu->Project->Open Recent
It also uses the same type of load and save file scripts as multiviewer if you want to group a few files togther for quick opening as a "project"
Thank you, missed that the find window has more options
People are dying. Entire ecosystems are collapsing. We are in the beginning of a mass extinction. And all you can talk about is money and fairytales of eternal economic growth. How dare you! – Greta Thunberg
MultiEdit.doc: RECENT=<variable> Defines the variable in which to store the recent list. Defaults to MultiEdit/Recent. But you can set the samme variable in MultiViewer to share te recent list.
RECENTENTRIES=<number> Sepcify how many entries to keep in the recent list. NB: Only files saved are stored in this list.
MultiView.doc: RECENT=<variable> Defines the variable in which to store the recent list. Defaults to MultiViewer/Recent. But you can set the samme variable in MultiEdit to share te recent list.
RECENTENTRIES=<number> Show how many entries to keep in the recent list. NB: Only files saved are stored in this list.
If you need WAV files you can use Timidity to convert .mid files to .wav files.
MIDI can be panned from extream left to extream right which (at least) in a 5.1 system will be full surround.
You can simply choose to save the file on Amiga Timidity or in Linux cd to a directory with .mid file and use timidity -Ow filename.mid and it will produce a .wav file in the same directory.
Careful, a 30k mid file may produce a 30M wave file.
@broadblues I have in MultiEdit this in the tooltypes RECENT=MultiEdit/Recent RECENTENTRIES=5 I tried it several times with a saved ct file, there happen nothing when i click "OpenRecent"
in MultiViewer this is in the tooltypes: RECENT=MultiViewer/Recent RECENTENTRIES=5 "OpenRecent" doesn`t work too