Application: streamWriter
Category: Music & Video
Description: streamWriter is able to record music broadcasted by internet-radiostations. You can record as many streams as you want at the same time (MP3/AAC). More features are track splitting, ID3 tagging as well as integrated function for manual cutting of saved MP3s. Tracks are named by a given pattern and short songs (ads) can be skipped.
Download streamWriter Portable 4.0.0.1 Development Test 1 [1.99MB download / 1,94MB installed]
(MD5: 525e20a4b0b8ef155f0e255936ffe0d1)
Release Notes:
streamWriter Portable 4.0.0.1 Development Test 1 (2012-03-31)
- streamWriter updated to latest version 4.0.0.1
streamWriter Portable 4.0.0.0 Development Test 1 (2012-03-13)
- streamWriter updated to latest version 4.0.0.0
- Usage of the PortableApps.com AppCompactor 2.2
streamWriter Portable 3.6.0.0 Development Test 1 (2011-12-30)
- streamWriter updated to latest version 3.6.0.0
- Usage of the PortableApps.com AppCompactor 2.2
streamWriter Portable 3.5.0.0 Development Test 1 (2011-10-30)
- streamWriter updated to latest version 3.5.0.0
- Usage of the PortableApps.com AppCompactor 2.2
streamWriter Portable 3.0.0.1 Development Test 3 (2011-09-12)
- streamWriter updated to latest version 3.0.0.1
- Usage of the PortableApps.com AppCompactor 2.2
streamWriter Portable 2.1.0.1 Development Test 3 (2011-06-14)
- streamWriter updated to latest version 2.1.0.1
- Usage of the PortableApps.com AppCompactor 2.2
streamWriter Portable 2.0.0.0 Development Test 3 (2011-04-19)
- streamWriter updated to latest version 2.0.0.0
streamWriter Portable 1.9.0.1 Development Test 3 (2011-03-24)
- I removed a bug regarding the impossibility to change the predefined output folder "Downloads" (=subfolder of the Data directory).
- Updated to the latest version 1.9.0.1 of streamWriter
streamWriter Portable 1.4.0.1 Development Test 2 (2011-02-25)
- The user has the possibility to save the songs in a predefined output folder
called "Downloads" (=subfolder of the Data directory). Certainly the user can choose another folder.
streamWriter Portable 1.4.0.1 Development Test 1 (2011-02-23): Initial release
- At first start of the app it's necessary to determine a folder, in which the songs can saved
Ok, I tested it and it seems
Ok, I tested it and it seems a little bit complicated cause of the way it handles its settings.
First, you should handle the
streamwriter_settings.inias user data and therefore conserve it.For that to function this file should be present in
Data/DefaultDataand not in the app folder.Then this entry in
streamwriter_settings.iniis completely messed up.
(The folder is copied from
DefaultDatatoDataand not toApp\streamWriter\on first run.)I think, your intention was to point the app to a predefined output folder (therefore your empty folder in
DefaultData). You can't do it this way.There are some options:
That would have it in a fixed position and overwrites user settings every time it is run.
streamwriter_settings.inithat matches drive letters with an existingstreamWriterPortableSettings.ini(in DefaultData/settings).I would prefer No.1.
In addition to No.2 and 3 (4) you should handle drive letter changing with
Another issue is language switching. I would leave the language to English since more people understand that and switching to German is easily done in settings.
On the other hand, automatic switching should be easy with [FileWriteN] as it is just an entry in
streamwriter_settings.iniand falls back to english automatically if the entry is not recognized.-edit-
copy/paste error...
Filename
Shouldn't the filename for downloading include devtest and the dev number as in:
StreamWriterPortable_1.4.0.1_Development_Test_1.paf.exe instead of
streamWriterPortable_1.4.paf.exe
neutron1132 (at) usa (dot) com
Sorry
Obviously I have overlooked this little blemish. But I already correct the filename and upload the file again.
Not only filename...
Put
1.4 Development Test 1in DisplayVersion in appinfo.ini and it is created with the right filename by the PA.c Installer.thank you
You have right. My DisplayVersion isn't complete. It's just my first attempt to create a *paf.exe.
Regarding your first post here I have already tempted to realize all these versions, which you described above. But anyhow it don't work.
Otherwise you have correct mentioned, that my intention was to point the app to a predefined output folder. Obviously seems the implementation to be a little bit tricky and difficult.
As your setup is not
As your setup is not completely broken but has some basic issues you have to correct some essentials to make it work - mostly file placement. They depend on each other so simply trying to adjust one issue mostly will not fix the whole thing.
If you like I could send you several setups as example so you could analyse them to get the idea. Or I could give you some kind of step-by-step instruction based on your specific issues if you want to figure them out mostly by yourself (say if you rather have them in german, I could try to translate it into english afterwards...).
-edit-
I just realized that you said you tried all options. Take into account that they are mutually exclusive. Choose just the one option that fits your idea. I think No.2 is just not right regarding PA.c guidelines.
app runs good now
In the meantime I have done some little alterations und accordingly I make a new upload. The problem with the realisation of a predefined output folder seems to collaps, because the file streamwriter_settings.ini doesn't allow it. Nevertheless this is no more meaningful. Therefore the user must arrange such an output folder one-time at the first start of the app.
Anyhow it's a good idea, if you send me several setups as example for an analyse. Please send it at the following email-address: tapsklaps@yahoo.de Thank you for your effort. You can send this in an english version or - if avalaible - in a german version.
Certainly you can send me also some step-by-step instructions. Clearly it's the best, if you send this instructions in german. Otherwise I can also send you some instructions regarding the process of the portabilization of apps.
I just read your other
I just read your other thread. Good to read you got it sorted out so I think instructions are more or less obsolete now.
I made two pafs as demo. "Mod" is done with solution No. 1, output folder defined fixed, drive letter changing etc.. "Mod2" leaves the choice to the user but copes with drive letter changing, too.
streamWriterModPortable_1.4_Development_Test_2.paf.exe
(md5: 98294daf1cd0eb34ae725044afb55338)
streamWriterMod2Portable_1.4_Development_Test_2.paf.exe
(md5: c491b64449ad97ba7abac244869ea617)
Best take a look at the file placement and ini settings before you start it as it is altered thereafter (John has told you already, I suppose). I commented the launcher.inis. Feel free to modify/take over/discard what you like.
I added language switching as it can be done very easy with this app. It has just two Languages, but seems tolerant to unknown language strings.
I prefer the first solution as it allows moving paths, too. I also find it quite annoying that the need to choose an output folder in Mod2 is accompanied with an error message. Could put some users off...
useful Links
At first great thank for your effort and congratulation for your solution regarding the creation of a predefined output folder at the first start of the app
Only a little change in the section [FileWrite2] of the file streamWriterModPortable.ini was necessary. You have note the following line:
Instead there must note this line:
With your version the language switching don't work correct. In case of usage as standalone app it's impossible to change the language permanently to german. After a restart of the app the language is again in english. And in case of usage with the PA.c Menu it's impossible to change the language permanently to english.
With regard to your second link I think, that the optimal solution is the version with the predefined output folder because of the convenience. If a user wish to determine an individual output folder, then the user has at any time the possibility to do it.
?
Are you sure? I have never seen an app where the launcher has to write to the /App/DefaultData folder. I havent looked at this example though.
"What about Love?" - "Overrated. Biochemically no different than eating large quantities of chocolate." - Al Pacino in The Devils Advocate
First Run
Isn't DefaultData for the first run only? Maybe the saves aren't happening properly, so the program thinks it is Groundhog Day and it restarts as first run every time?
neutron1132 (at) usa (dot) com
yes
thats what DrfaultData is for. If /Data isnt present (=first time I run ther app), Whatever is in /App/DefaultData gets copied to /Data. So if I need some files to be in /Data once the programm starts, I put them in /App/DefaultData so they are there on first run.
"What about Love?" - "Overrated. Biochemically no different than eating large quantities of chocolate." - Al Pacino in The Devils Advocate
Yes absolute sure
I have worked multiple hours until I figure out, that this code is the solution. But please test it yourself
No, don't do it!
You should not alter the data in DefaultData in any case as it is only used on first run. To alter it with the launcher is completely the wrong way! It would break the launchers functionallty, too, as the ini in Data is only altered once and then never.
If something is wrong with the app, the general setup is wrong and you have to find another solution!
Btw. I tested my language switching only with the platform so far but as the language variable seems to come from the platform it seems to fall back to english if nothing is specified when the launcher is started without the platform. It is written new with every start by the launcher so user defined language setting is discarded that way. (case 1)
That english cannot be selected permanently if the platform is set to german is just how it is supposed to be with automatic language switching. Set the platform to english and it is english permanently, set it to german and it is german. other languages are not supported and streamWriter falls back to english (or somehow to german if an asian language is selected, maybe an unicode issue...). (case 2)
-edit-
Ooops, mistaken your post so I deleted a good part of my post about handling Data and DefaultData. After inspecting the new dev test, I realized that you only altered the handling of language switching. Cannot be done that way nevertheless...
I'll take a look into language switching again.
Impossibility to alter the folder for saving songs
In my last version (Development Test 2) I have determine a predefined output folder, in which the songs can be saved. I realised this with the following code in the file streamWriterPortable.ini:
Due to this section [FileWrite3] now the user can't permanently determine a different folder for saving the songs. After a restart of the program the different folder will be overwritten by the predefined folder due to the section [FileWrite3].
I find out the possibility to write a custom segment in a file called Custom.nsh, which is placed in the Other\Source directory.
The code in this file Custom.nsh should produce the situation, that the section [FileWrite3] should apply only in the case, if the Value is %PAL:DataDir%\Downloads.
My question is now, if it's possible to write with NSIS such a special code?
Replace
It sounds to me like you just want replace. Set the value to something using PAL's drive and partial path mechanisms and ensure that App\DefaultData\settings\StreamWriterPortableSettings.ini has the correct last values so it'll update it for a new installation.
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
Clarification of my problem
My goal isn't to update anything for a new installation.
As I described in my original post, through the section [FileWrite3] within the file
streamWriterPortable.ini I have determined a predefined directory, in which the program save the songs. Adopted through the environment variable %PAL:DataDir% as part of "%PAL:DataDir%\Downloads" would be produced the following concret path:
In this case in the file streamwriter_settings.ini appear in the section Settings the following line of code:
If I now go in the settings of the program and try to alter this directory (for example I choose the folder called "music" in the root of drive D), then I find correctly the following entry in the section Settings of the file streamwriter_settings.ini:
But after a restart of the app again the original entry (Dir=D:\PortableApps\streamWriterPortable\Data\Downloads) was created in the file streamwriter_settings.ini. Therefore the user can't permanently alter the predefined folder due to the section [FileWrite3].
Therefore I have the idea to constrain the functionality of the construct [FileWrite3] in such a way, that [FileWrite3] only can apply in a special case. In other words: If a determine a new path (for example: D:\music) and this path is unequal to the path %PAL:DataDir%\Downloads, then the section [FileWrite3] shouldn't work. To realise this I try to create the file Custom.nsh. But I don't know, if this is possible at all.
Replace
I knew precisely what you meant and that's why I recommended replace. Replace the old path with the new one; this is a perfectly valid way of doing it. Then it won't be updated if it gets changed manually. Then you just need initial settings so that it works to start with.
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
detailed instructions
I have tried to understand your instructions, but these informations are too general and unclear for me. Can you give me more detailed tips?
qBittorrentPortable
Take a look at it, it does what you want. Read it's development thread for details
That's because you're doing it wrong...
Your advice is the solution
GREAT THANK for your wonderful advice to look at qBittorrentPortable. Now my app seems to work as I want it.
Updated to latest version 1.9.0.1
streamWriter Portable was updated to the latest version 1.9.0.1. Additionally I removed a bug, because the user can't alter the predefined output folder in the previous version Development Test 2.
Thanks for updating. The
Thanks for updating. The output folder seems to work. That leaves the language switching.
The section
FileWrite2can be deleted as it does not do anything at all (the filestreamwriter_settings.iniis not present in the specified folder). You just disabled automatic language switching.Apart from that, altering the "blueprint" file in DefaultData is simply useless as it is only referred to at first run and then never again. If you want to enable automatic language switching with it's downside that you cannot permanently switch to another language than that of the platform, just alter the streamwriter_settings.ini in %PAL:DataDir%.
Wrong way
If you ever use %PortableApps.comLocaleCode2% etc. directly, you're doing it the wrong way. As a rule, you should only ever use those variables in the [Language] section. Then use %PAL:LanguageCustom% in places like that [FileWriteN] section.
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
Thanks for clarification.
I just had a brief look at language switching and am not too confident in my idea of the concept (it lacked a fallback option - now I know why). But I learn.
I think I can start a test on photofilmstrip once the next version comes out...
Removed section [FileWrite2]
Due to the advice of depp.jones I have removed the section [FileWrite2] from the file streamWriterPortable.ini. Obviously this section is useless in my case, because the language switching also work without this section. Therefore I have now again uploaded an optimized version.
Updated to latest version 2.0.0.0
See release notes for changes.
Updated to latest version 2.1.0.1
See release notes for changes.
Updated to latest version 3.0.0.1
See release notes for changes.
Updated to latest version 3.5.0.0
See release notes for changes.
Updated to latest version 3.6.0.0
See release notes for changes.
Updated to latest version 4.0.0.0
See release notes for changes.
Updated to latest version 4.0.0.1
See release notes for changes.
Updated to latest version 4.0.0.1
See release notes for changes.
Not totally portable
If you use StreamWriter Portable on a stick and move between computers, the "Saved Song" information gets lost. The information remains lost even when the stick is moved back to the original computer.
This causes a problem when you save a number of songs on one computer and need to "trim" them on another.
I cannot identify where the information is stored. Can anyone help?
Clair