Old 5th October 2005, 04:41   #161
ZuGzUg
Junior Member
 
Join Date: Jul 2005
Posts: 36
Re: working

Quote:
Originally posted by mysongchillin
Can u explain to me ml_www i tried it but i dont get it ,...can users who choose songs input their name
I assume you mean AKDJ, as opposed to the original ml_www plugin that has no karaoke support... really should rename that plugin...

If so, yes they can, point the web browser to http://{server}/karaoke

This doesn't work so well right now tho, you should try it and then leave it to your own judgement on whether you want customers to use this directly.

You may also want to check out these sites and files:

http://www.7bamboo.com/modules.php?n...viewforum&f=21
This is the dedicated support and discussion forum for AKDJ, just got the website back up and running recently. Feel free to sign up! You may also want to read some of the other posts.

Some other docs are here:
http://www.7bamboo.com/akdj/index.htm
http://www.7bamboo.com/akdj/ml_www.txt

The documentation is under development now, so it is a bit sparse... but this may help get you started...

-Z
ZuGzUg is offline  
Old 6th October 2005, 13:56   #162
gunghouk
Junior Member
 
Join Date: Sep 2005
Location: Weymouth, Dorset, UK
Posts: 35
Hi, I just found a conflict with in_zip v0.5.6.4 and Playlist File Remover v2.0 Alpha 1.

Apart from the double entries, in v0.5.6.4, reported by Zug earlier I've found that pressing next on the player successfully removes the current file from the playlist and plays the next file, however allowing the song to playout normally does not remove the file from the playlist or advance to the next file.

Cool plugin tho

GH
gunghouk is offline  
Old 6th October 2005, 13:59   #163
DrO
 
Join Date: Sep 2003
Posts: 27,873
yeah, i think a few issues in file remover have appeared since i started messing around with the new alpha build. as time allows since i'm a bit short of any dev time for a bit i'll try and look into things as soon as real life lets me

-daz
DrO is offline  
Old 6th October 2005, 23:42   #164
DrO
 
Join Date: Sep 2003
Posts: 27,873
i've been looking at the failure of the plugin to advance to the next track with my 2.x installs of winamp (which is the only case i can re-produce the issue) and it seems to be that when run through in_zip the getoutputtime(..) function appears to enter a loop as such. from what i can tell i think winamp is then querying the isplaying(..) status of the output plugin that's currently in use to determine what is meant to be going on.

so the issue i now have is hooking up a check on the output plugin's isplaying(..) function and to use that to then call the required stop(..) function...

if i can get that done then i can get a newer build of in_zip out

-daz
DrO is offline  
Old 8th October 2005, 02:15   #165
DrO
 
Join Date: Sep 2003
Posts: 27,873
in_zip v0.5.6.8 alpha
  • Fixed in_zip's getfileinfo(..) to return -1 as the time to fix some issues when other plugins were querying information from it
  • Fixed the handling of '\' and '/' in the files being extracted to fix some incompatability issues
  • Fixed IPC_GET_EXTLIST on 2.x installs to actually work correctly (code clean before the last release broke the mode )
  • Hopefully i've correctly implemented a WM_WA_MPEG_EOF handler which should fix the majority of track advance issues reported (my Winamp 2.x install now works everytime!)
get v0.5.6.8

Hopefull this new build will fix the majority of the track advance issues. I've still to properly look into zug's reported issue (not sure how these changes will affect it or not). But it's now late and i need sleep (yes tis true i am weak )

-daz
DrO is offline  
Old 8th October 2005, 18:27   #166
mysongchillin
Junior Member
 
Join Date: Sep 2005
Posts: 41
0.5.6.8

this new version would not open the zip files ( cdg / mp3 )
files at all in winamp 5.1
It would ley me drop them in but song would not play and cdg would not appear. for now i had to reinstall 0.5.6.4
mysongchillin is offline  
Old 8th October 2005, 19:27   #167
YtseJam
Forum King
 
YtseJam's Avatar
 
Join Date: Dec 2000
Location: Israel
Posts: 2,398
Send a message via ICQ to YtseJam Send a message via AIM to YtseJam
Using version 0.5.6.8 w/Winamp 5.1.

I'm loading my .zip archive (containing 16 mp3 files which play fine outside of the zip) to the PL, the plug-in finds 16 valid files, displays them in the PL but playing-wise, it plays only a few seconds from each song.

YtseJam is offline  
Old 8th October 2005, 23:28   #168
mysongchillin
Junior Member
 
Join Date: Sep 2005
Posts: 41
great stuff

R we keeping you buzy enough with our info.

You are doing great,..keep it up....we all do appreciate the work you do put into configuring your plug-in to our needs.

I will never complain,....just give you info on what happens at my end
THANK YOU
mysongchillin is offline  
Old 10th October 2005, 13:17   #169
DrO
 
Join Date: Sep 2003
Posts: 27,873
hmm, it looks like maybe my checks for the end of the track aren't quite right then if it's aborting a few seconds or not at all into the loading process. i'll have to see if there's anything else i can do to work around the issue since the track end state message is what's needed to be sent to fix a number of other issues :/

fine times abound, heh i'll see what i can come up with in the next day or so (at least it's showing the contents, etc correctly still?)

[edit]
heh, i just managed to get a usf file to abort after a few seconds (is all i can find to test on the work machine at the moment)

-daz
DrO is offline  
Old 10th October 2005, 20:09   #170
hcs
Junior Member
 
Join Date: Apr 2005
Posts: 10
Send a message via ICQ to hcs Send a message via AIM to hcs
If you want I can take a look at the code and get it working with in_usf, I'd be glad to help out.
hcs is offline  
Old 11th October 2005, 01:23   #171
DrO
 
Join Date: Sep 2003
Posts: 27,873
i've been using in_usf as the main test for the track end fix (which is why i hadn't seen the mp3+cdg issue plus trying to code at 2am isn't ideal either ). the issue as such is determing from the input plugin(s) when the end of the track is reached so that WM_WA_MPEG_EOF will be sent which in turn will cause winamp to fire the stop(..) function. i'm trying to get a dev setup on my work machine in the next day or so which will help to do some coding when i'm a bit more awake

-daz
DrO is offline  
Old 11th October 2005, 07:34   #172
mysongchillin
Junior Member
 
Join Date: Sep 2005
Posts: 41
AKDJ

many of u may like AKDJ.....but i dont see anywhere ...where it is a good tool....it always wants to make wav files out of mp3 files and zips....and it does not delete them after use.
I will just wait patiently until in_zip incorporates NEXT SINGER OPTION - requested persons name .............
( hint hint )

:-)
mysongchillin is offline  
Old 11th October 2005, 14:46   #173
gunghouk
Junior Member
 
Join Date: Sep 2005
Location: Weymouth, Dorset, UK
Posts: 35
Mysongchillin, I think you'll be waiting a long time for the karaoke stuff. It seems to me what you hope for is well beyond the scope of this plugin especially as AKDJ does this successfully for everyone else.

I think the best you can hope for is an integration of in_zip with AKDJ.

AKDJ works excellently for me and many others and I've never seen the issues with wav files or temp files not being deleted that you report.
gunghouk is offline  
Old 12th October 2005, 02:07   #174
mysongchillin
Junior Member
 
Join Date: Sep 2005
Posts: 41
akdj

maybe i need to try it again.
where is the newest version to be found at,...and alos is there a good help info ,..to learn it fully,.or can u give me info
:-))
mysongchillin@yahoo.com
mysongchillin is offline  
Old 12th October 2005, 02:50   #175
mysongchillin
Junior Member
 
Join Date: Sep 2005
Posts: 41
not the in_zip topic

not the in_zip topic but i wanted to say i just installed that akdj....and tried it,.....when i try to open the ip address from the other pc ( networked ) it closes my winamp on pc 1.....plugin problem in winamp
mysongchillin is offline  
Old 12th October 2005, 07:41   #176
ZuGzUg
Junior Member
 
Join Date: Jul 2005
Posts: 36
Re: not the in_zip topic

Quote:
Originally posted by mysongchillin
not the in_zip topic but i wanted to say i just installed that akdj....and tried it,.....when i try to open the ip address from the other pc ( networked ) it closes my winamp on pc 1.....plugin problem in winamp
In the interest of keeping this thread focued on IN_ZIP, I'd recommend folks use this forum to talk about AKDJ specific stuff: http://www.7bamboo.com/modules.php?n...viewforum&f=21

-Z
ZuGzUg is offline  
Old 12th October 2005, 07:48   #177
ZuGzUg
Junior Member
 
Join Date: Jul 2005
Posts: 36
Re: 0.5.6.8

Quote:
Originally posted by mysongchillin
this new version would not open the zip files ( cdg / mp3 )
files at all in winamp 5.1
It would ley me drop them in but song would not play and cdg would not appear. for now i had to reinstall 0.5.6.4
FWIW, with 0.5.6.8, what I'm seeing is that when an MP3G-ZIP file is played, only the .CDG file is extracted to the %TEMP% folder, the MP3 file does not seem to get extracted... This did not happen with 0.5.6.4.

-Z
ZuGzUg is offline  
Old 12th October 2005, 23:51   #178
DrO
 
Join Date: Sep 2003
Posts: 27,873
Re: Re: 0.5.6.8

Quote:
Originally posted by ZuGzUg
FWIW, with 0.5.6.8, what I'm seeing is that when an MP3G-ZIP file is played, only the .CDG file is extracted to the %TEMP% folder, the MP3 file does not seem to get extracted...
the mp3 is extracted but since the playback is aborted so soon (due to a dodgy check internally for the end of playback check) the mp3 is deleted near enough straight away. the reason the cdg is only seen is because gen_cdg locks access on the file so i can't delete it when stop(..) is called and so the delayed clean up of files began i've still to look into a quicker delayed removal of the file which would help to clean things up faster.

i spent most of last night trying to fix the playback issues with 0.5.6.8 and i've got it to not abort playback all over the place as it does (needed to check a variable not being null) but the end of track detection is still not 100% so i'm holding out on a new build until i'm happy with the fix.

-daz
DrO is offline  
Old 17th October 2005, 01:56   #179
DrO
 
Join Date: Sep 2003
Posts: 27,873
in_zip v0.5.6.9 alpha
  • Altered the code internally to auto-detect the archive type based on the file's header information and not the file extension
  • Re-worked the end of track detection (should at least partly work now compared to the last version and a few before)
get v0.5.6.9

Let's see how this one works for the on end of track stuff (is now working fine for archived mp3's and usf files on my 2.x installs which is the only place i can re-produce the failure to advance to the next track)

-daz
DrO is offline  
Old 17th October 2005, 03:34   #180
amano
Major Dude
 
amano's Avatar
 
Join Date: Apr 2003
Location: where the llamas come from!
Posts: 952
Great work, DrO!

As always, I have to say. I hope that this plugin will be included in the Winamp bundle at some time...

eeeee eeeeeee eeeee eeeee eeeee
8 8 8 8 8 8 8 8 8 8 88
8eee8 8e 8 8 8eee8 8e 8 8 8
88 8 88 8 8 88 8 88 8 8 8
88 8 88 8 8 88 8 88 8 8eee8
amano is offline  
Old 17th October 2005, 07:11   #181
hcs
Junior Member
 
Join Date: Apr 2005
Posts: 10
Send a message via ICQ to hcs Send a message via AIM to hcs
Excellent, seems to be working fine with in_usf 1.0b20 and winamp 5.07 here.

Thanks!
hcs is offline  
Old 17th October 2005, 11:34   #182
DrO
 
Join Date: Sep 2003
Posts: 27,873
Quote:
Originally posted by hcs
seems to be working fine with in_usf 1.0b20 and winamp 5.07 here.
was using in_usf as the main test for this along with in_mp3 so i'm hoping the checks i've got in place now will handle other plugins since there's a load of different exit conditions which i'm still not sure on how winamp detects it like it does for my main install

amano: thanks

-daz
DrO is offline  
Old 17th October 2005, 18:52   #183
hcs
Junior Member
 
Join Date: Apr 2005
Posts: 10
Send a message via ICQ to hcs Send a message via AIM to hcs
I just tested with 2.95 and it seems to just skip all the tracks (probably a failure to load). Uninstalled it and installed 5.1, works fine. This is with in_usf, again.
hcs is offline  
Old 18th October 2005, 07:58   #184
ZuGzUg
Junior Member
 
Join Date: Jul 2005
Posts: 36
Quote:
Originally posted by DrO
in_zip v0.5.6.9 alpha

Let's see how this one works for the on end of track stuff
Seems to be working here OK...

-Z
ZuGzUg is offline  
Old 18th October 2005, 09:49   #185
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Notes, information, calls and questions about read_file.dll

Hi.

The read_file.dll is a really powerfull .dll which was/is shipped in:

+ Winamp 2.77 and ++
+ Winamp5
+ Peter Pawlowski's Plug-ins Package (4P)
(
In this package there is also an non-public TFMX input plug-in, which is much, much more better than this one:
http://listen.to/tfmx .
There is further great stuff inside the package, which was never be published on Winamp's plug-ins page.
Take google and web.archive.org to try get the Plug-ins Package.
Or ask me to get this great package.
)

Well, nearly nobody really knows all the features that the read_file.dll has:


1. ARJ/RAR/ZIP archives will be handled as directories.

With the help of read_file.dll, Winamp can directly open files in archives without using
"special urls/uris" in playlist entries which are currently used by DrO's in_zip.dll

Example for what is Winamp (& the certain input plug-in + read_file.dll)
currently able to handle:

F:\MyMusic\turrican.rar\Turrican_2\intro_and_title.tfm


2. Play files/areas inside container files

Tunes/certain areas in (game specific)"container files" will be handled as playable tracks.

Example:
http://205.188.244.9/showthread.php?...501#post707501
-->
partial://000000A2-00126FD0:C:\UT\Music\Botmca9.umx\Botmca9_0063.IT


To do not do the search manually, Peter Pawlowski also built a great Windows Ripper tool
which can detect embedded stuff (music, midi, video, graphic related) in different files:

"WinRipper".


While scanning files with WinRipper it can:
+ extract ripped files to a certain place or
+ add the ripped tune as a playlist entry in/to winamp automatically.


http://bnobtc.pix-art.com/images/win...onstration.png

For example, scan your Command and Conquer, ..., Red Alert CDs with WinRipper and you should get playlist entries like this:


Command and Conquer Tiberian Dawn game music:
(inside scores.mix ; "#" describes any CD drive)

code:
partial://00000192-001457B3:#:\SCORES.MIX\SCORES_0000.AUD
partial://001457B3-0036FA3D:#:\SCORES.MIX\SCORES_0001.AUD
partial://0036FA3D-00484C7E:#:\SCORES.MIX\SCORES_0002.AUD
partial://00484C7E-0051E7E2:#:\SCORES.MIX\SCORES_0003.AUD
partial://0051E7E2-006F7653:#:\SCORES.MIX\SCORES_0004.AUD
partial://006F7653-00860D57:#:\SCORES.MIX\SCORES_0005.AUD
partial://00860D57-00A4B78B:#:\SCORES.MIX\SCORES_0006.AUD
partial://00A4B78B-00D846E3:#:\SCORES.MIX\SCORES_0007.AUD
partial://00D846E3-00F86307:#:\SCORES.MIX\SCORES_0008.AUD
partial://00F86307-01158A4B:#:\SCORES.MIX\SCORES_0009.AUD
partial://01158A4B-01359336:#:\SCORES.MIX\SCORES_0010.AUD
partial://01359336-014FEA82:#:\SCORES.MIX\SCORES_0011.AUD
partial://014FEA82-016E9EF2:#:\SCORES.MIX\SCORES_0012.AUD
partial://016E9EF2-01921466:#:\SCORES.MIX\SCORES_0013.AUD
partial://01921466-01B0C2C9:#:\SCORES.MIX\SCORES_0014.AUD
partial://01B0C2C9-01D31875:#:\SCORES.MIX\SCORES_0015.AUD
partial://01D31875-01ED7001:#:\SCORES.MIX\SCORES_0016.AUD
partial://01ED7001-02026495:#:\SCORES.MIX\SCORES_0017.AUD
partial://02026495-021A54A9:#:\SCORES.MIX\SCORES_0018.AUD
partial://021A54A9-02391175:#:\SCORES.MIX\SCORES_0019.AUD
partial://02391175-02587B19:#:\SCORES.MIX\SCORES_0020.AUD
partial://02587B19-025EFCCD:#:\SCORES.MIX\SCORES_0021.AUD
partial://025EFCCD-027C8220:#:\SCORES.MIX\SCORES_0022.AUD
partial://027C8220-029797EE:#:\SCORES.MIX\SCORES_0023.AUD
partial://029797EE-02B5F24A:#:\SCORES.MIX\SCORES_0024.AUD
partial://02B5F24A-02BEEF7E:#:\SCORES.MIX\SCORES_0025.AUD
partial://02BEEF7E-02DA3F82:#:\SCORES.MIX\SCORES_0026.AUD
partial://02DA3F82-02FAD176:#:\SCORES.MIX\SCORES_0027.AUD
partial://02FAD176-03167502:#:\SCORES.MIX\SCORES_0028.AUD
partial://03167502-0332C85E:#:\SCORES.MIX\SCORES_0029.AUD
partial://0332C85E-03548242:#:\SCORES.MIX\SCORES_0030.AUD
partial://03548242-035ACC97:#:\SCORES.MIX\SCORES_0031.AUD
partial://035ACC97-03607B4C:#:\SCORES.MIX\SCORES_0032.AUD




Command and Conquer Tiberian Dawn addon: "Covert Ops" game music:
(inside scores.mix ; "#" describes any CD drive)
code:
partial://000001F2-0033BD1E:#:\SCORES.MIX\SCORES_0000.AUD
partial://0033BD1E-005FDB52:#:\SCORES.MIX\SCORES_0001.AUD
partial://005FDB52-00839866:#:\SCORES.MIX\SCORES_0002.AUD
partial://00839866-00B20D92:#:\SCORES.MIX\SCORES_0003.AUD
partial://00B20D92-00DFEC46:#:\SCORES.MIX\SCORES_0004.AUD
partial://00DFEC46-0105599A:#:\SCORES.MIX\SCORES_0005.AUD
partial://0105599A-0130999E:#:\SCORES.MIX\SCORES_0006.AUD
partial://0130999E-015A7AC2:#:\SCORES.MIX\SCORES_0007.AUD
partial://015A7AC2-016ED0E3:#:\SCORES.MIX\SCORES_0008.AUD
partial://016ED0E3-0191736D:#:\SCORES.MIX\SCORES_0009.AUD
partial://0191736D-01A2C5AE:#:\SCORES.MIX\SCORES_0010.AUD
partial://01A2C5AE-01AC6112:#:\SCORES.MIX\SCORES_0011.AUD
partial://01AC6112-01C9EF83:#:\SCORES.MIX\SCORES_0012.AUD
partial://01C9EF83-01E08687:#:\SCORES.MIX\SCORES_0013.AUD
partial://01E08687-01FF30BB:#:\SCORES.MIX\SCORES_0014.AUD
partial://01FF30BB-0232C013:#:\SCORES.MIX\SCORES_0015.AUD
partial://0232C013-0252DC37:#:\SCORES.MIX\SCORES_0016.AUD
partial://0252DC37-0270037B:#:\SCORES.MIX\SCORES_0017.AUD
partial://0270037B-02900C66:#:\SCORES.MIX\SCORES_0018.AUD
partial://02900C66-02AA63B2:#:\SCORES.MIX\SCORES_0019.AUD
partial://02AA63B2-02C91822:#:\SCORES.MIX\SCORES_0020.AUD
partial://02C91822-02EC8D96:#:\SCORES.MIX\SCORES_0021.AUD
partial://02EC8D96-030B3BF9:#:\SCORES.MIX\SCORES_0022.AUD
partial://030B3BF9-032D91A5:#:\SCORES.MIX\SCORES_0023.AUD
partial://032D91A5-0333405A:#:\SCORES.MIX\SCORES_0024.AUD
partial://0333405A-03398AAF:#:\SCORES.MIX\SCORES_0025.AUD
partial://03398AAF-0353E23B:#:\SCORES.MIX\SCORES_0026.AUD
partial://0353E23B-0368D6CF:#:\SCORES.MIX\SCORES_0027.AUD
partial://0368D6CF-0380C6E3:#:\SCORES.MIX\SCORES_0028.AUD
partial://0380C6E3-039F83AF:#:\SCORES.MIX\SCORES_0029.AUD
partial://039F83AF-03BEED53:#:\SCORES.MIX\SCORES_0030.AUD
partial://03BEED53-03DA0321:#:\SCORES.MIX\SCORES_0031.AUD
partial://03DA0321-03E084D5:#:\SCORES.MIX\SCORES_0032.AUD
partial://03E084D5-03FE0A28:#:\SCORES.MIX\SCORES_0033.AUD
partial://03FE0A28-041C6484:#:\SCORES.MIX\SCORES_0034.AUD
partial://041C6484-042561B8:#:\SCORES.MIX\SCORES_0035.AUD
partial://042561B8-0440B1BC:#:\SCORES.MIX\SCORES_0036.AUD
partial://0440B1BC-046143B0:#:\SCORES.MIX\SCORES_0037.AUD
partial://046143B0-047CE73C:#:\SCORES.MIX\SCORES_0038.AUD
partial://047CE73C-04993A98:#:\SCORES.MIX\SCORES_0039.AUD
partial://04993A98-04BAF47C:#:\SCORES.MIX\SCORES_0040.AUD



Command and Conquer Red Alert 2 game music:
( + inside theme.mix ;
+ "#" describes any CD drive)

code:
partial://000000C6-0031D102:#:\theme.mix\theme_0000.WAV
partial://0031D106-00877142:#:\theme.mix\theme_0001.WAV
partial://00877146-00D7AD82:#:\theme.mix\theme_0002.WAV
partial://00D7AD86-0129E5C2:#:\theme.mix\theme_0003.WAV
partial://0129E5C6-016F1602:#:\theme.mix\theme_0004.WAV
partial://016F1606-01C21E42:#:\theme.mix\theme_0005.WAV
partial://01C21E46-0218EA82:#:\theme.mix\theme_0006.WAV
partial://0218EA86-025A2EC2:#:\theme.mix\theme_0007.WAV
partial://025A2EC6-029AEF02:#:\theme.mix\theme_0008.WAV
partial://029AEF06-02F93B42:#:\theme.mix\theme_0009.WAV
partial://02F93B46-03571782:#:\theme.mix\theme_0010.WAV
partial://03571786-03A3AFC2:#:\theme.mix\theme_0011.WAV
partial://03A3AFC6-03DF0C02:#:\theme.mix\theme_0012.WAV
partial://03DF0C06-04311442:#:\theme.mix\theme_0013.WAV
partial://04311446-047D3482:#:\theme.mix\theme_0014.WAV
partial://047D3486-0494D4C2:#:\theme.mix\theme_0015.WAV


Before scanning, disable the "convert to .wav" switch in WinRipper's both AUD settings and
enable: "send files to Winamp without extracting"
(Winamp should already be opened, before/while scanning files.)

etc...

Many other games / game container files and file formats (e.g. midi, mod,...) are supported.

After rippping, check the Waveform Decoder Plug-in and enable AUD support.

Now you can play files from your Command and Conquer CDs/CD Images directly without extracting the game music.

If a file / music format can be played from/inside a zip/rar archive can be played or not,
only depends on the input-plugin which has: "read_file.dll" support.



Here is a list of input plug-ins which use the "read_file.dll"
+ to handle areas as files and
+ to handle zip/rar archives as directories:


Input plug-ins with read_file.dll support:


+ Nullsoft MIDI Player 3.07 (older versions too) [in_midi.dll]


( Notes/interesting information: The current MIDI Plug-in in Winamp5 (and in older Winamp2 releases) was 99,99999% (or 100% ?) built by Peter Pawlowski.
Briefly: Nullsoft kicked Peter Pawlowski and the the MIDI Plug-in is still part of Winamp.
...you should check Winamp 1.xx or early 2.xx releases to see the differences between the old MIDI Plug-in and the new which was improved by P.P.
The main part of improving all other Winamp's plug-ins was also done by Peter Pawlowski. )

+ Nullsoft Module Decoder v2.2.11 (older version too) [in_mod.dll]
+ Winamp2 SPC player plugin v2.07 [in_spc.dll]
+ Winamp2 TFMX Player 1.25 /TFMX plugin v1.25 for Winamp2 [in_tfmx.dll]
+ Winamp2 VQF Decoder v1.12a [in_vqf.dll]
+ Ogg Vorbis Decoder* [in_vorbis.dll]
+ Winamp2 Waveform Decoder [in_wave.dll]


*=This was the only .dll file where I could not find a read_file.dll string.
That means ogg vorbis decoder plug-in maybe does not support the read_file.dll.

The latest known "read_file.dll" was built on:
20th July 2002 and the latest Winamp5 release still uses this read_file.dll version.

However, I only have a readme.txt-file from read_file.dll version:
01/25/2002
And there you can see that the ogg vorbis input plug-in should be able to play files in compressed archives/ container files.

code:
================================================================================
read_file.dll, build 01/25/2002
(c) 2001-2002 Peter Pawlowski, http://www.blorp.com/~peter/

This dll is a part of winamp setup; it is used by my input plugins to read
compressed files. in winamp3, all input plugins will use access local files via
read_file.dll so you will be able to play zipped mp3s for an example. Of course,
it also reads regular non-compressed files.
You are not allowed to redistribute this DLL anywhere without my permission.

currently supported formats are:
- zip and gzip (powered by all-time great ZLIB)
- rar (powered by UnRAR source code)
- arj (powered by UnARJ source code)

plugins that support read_file.dll:
- in_midi (in winamp setup)
- in_wave (my one, not Nullsoft's plugin from Winamp setup)
- in_vorbis (will be in the next winamp setup)
- in_mod (updated version will be in the next Winamp setup)
- in_vqf
- in_spc
- in_tfmx

most of plugins listed above can be found on my web site

read_file.dll's major purpose is to decompress compressed mods /
midis (archives containing single file) 'on the fly'.
the file is being completely decompressed into memory while opening.
be careful with this stuff - if you compress 50-meg wav, you will need 50 megs of
free RAM in order to play it and it will take several seconds to open it.

new versions have some other features:
- CD letter detection - replace drive letter with # character,
eg. "#:\main.mix" and read_file.dll will automatically scan all drive letters for that file.

- partial file access - eg. "partial://xxxxxxx-yyyyyyyy:x:\dir\file.ext\file.mid" where :
xxxxxxxx - start offset in hex (must be 8 characters!), yyyyyyyy -
end offset in hex, x:\dir\file.ext - path of file,
file.mid - 'display name' of file (most input plugins will recognize it as file name);
extension is important to make sure that proper input plugin opens the file. example: install my in_wave,
insert Red Alert CD1 english and open "partial://188391D4-18C4BEC0:#:\main.mix\Hell March.aud".

- zip/rar file extraction - eg. "c:\music\spc\FF5.rar\ff5-1-01.spc".
you can compress all your SPCs with RAR and create playlists referencing RAR files;
this will save huge amounts of disk space (about 30 megs for me).

TIP: if you want to compress whole directory of files, append '.rar' (or '.zip') to its name,
then create big playlist with files in it, save it in parent directory, remove '.rar' ('.zip') extension,
compress contents with rar/zip (make sure that rar/zip file name is the same as
altered directory name before) and put rar/zip file in parent directory (where your playlist is).


*** Using read_file.dll in your plugins ***
Read_file.dll is based on pre-released Winamp3 specs (Tempura).
It should even still work with Tempura. (Almost) complete specs were inside
Winamp3 pre-sdk which used to be available on NSDN - http://www.winamp.com/nsdn/ (and might be still there).
Exported symbol is int readerSource(HINSTANCE ,reader_source**) (this is not mentioned in Tempura specs).





Well, now the questions:


Where can I get the mentioned "Tempura"?

Does anybody know, how to add read_file.dll support in own (input)plug-ins?

What are the calls/API commands that the "read_file.dll" offers?

Is there any possibility to grab/dump/capture the read_file.dll-calls which the input plug-ins do,
while opening compressed files / container files in Winamp?

(E.g. like using Visual Studio's Spy.exe program to capture Windows messages.)



PS:
To get WinRipper or its sources or other/old Winamp related stuff, just ask me.

Last edited by Borg Number One; 18th October 2005 at 11:26.
Borg Number One is offline  
Old 18th October 2005, 11:01   #186
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Hi.

There is a huge false/ not really correct statements which were posted at the beginning of this discussion/thread and other threads:


"DrO" wrote:
Quote:
Yes there are other archive reader plugins but none i've found properly handle multi-file archives
"DJ Egg" wrote:
Quote:
afaik, read_file.dll only works with Peter's input plugins (in_midi, in_wave, in_vorbis, in_mod), and is also limited to single files (the first file in the zip/rar).

The latest read_file.dll is able to play all supported* files
which can be found in ARJ, RAR and ZIP archives.

*=It depends on the input plug-ins and if they support the "read_file.dll" feature(s) or not.
-->see previous thread.
Borg Number One is offline  
Old 18th October 2005, 11:17   #187
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Here is an example:

1.) download the attached D2mid.rar file.

2.)
Copy following text...:

D2mid.rar\D2mid\dune1.mid
D2mid.rar\D2mid\dune2.mid
D2mid.rar\D2mid\dune3.mid
D2mid.rar\D2mid\dune4.mid
D2mid.rar\D2mid\dune5.mid
D2mid.rar\D2mid\dune6.mid
D2mid.rar\D2mid\dune7.mid
D2mid.rar\D2mid\dune8.mid
D2mid.rar\D2mid\dune9.mid
D2mid.rar\D2mid\GS-DUNE.MID

...to a simple plain text file (e.g. using Windows' Notepad) and save it as :
"xyz.m3u" in the same directory where you downloaded the D2mid.rar file.

After this, open the m3u file with Winamp.
(drag'n'drop is recommend).
Attached Files
File Type: rar d2mid.rar (72.7 KB, 508 views)
Borg Number One is offline  
Old 18th October 2005, 13:32   #188
DrO
 
Join Date: Sep 2003
Posts: 27,873
Re: Notes, information, calls and questions about read_file.dll

Quote:
Originally posted by Borg Number One
With the help of read_file.dll, Winamp can directly open files in archives without using
"special urls/uris" in playlist entries which are currently used by DrO's in_zip.dll
which is no more different than appending folder\file names onto the end of the real archive entry. in_zip is a wrapper plugin to give those plugins without the ability to handle archives directly and essentially the working is very close to how read_file works anyway. my issues with read_file were that there's no properly documented api for it (as you've blasted all the threads frames out incidating) and that when i was testing it with midi file archives, as soon as a non valid file appeared in it then the plugin would skip tracks hence why i decided to create my own extraction features aka in_zip.

as for the multi-file instance i refer to not having to add in/create the playlists to then play the files contained in them in that way (as i had to do to test out that rar file with the midi plugin). in_zip at least adds the entries automatically as soon as the root is played (which is how i prefer it to work). it's really a matter of taste but i prefer storing the entries as zip://filepath_name,idx since it's a easier method to maintain without breaking other plugins which have their own archive support.

Quote:
The latest read_file.dll is able to play all supported* files
read_file only extracts what it is asked to extract (just the same as the in_zip extraction core) so you're still limited to the in_* plugins to support the formats hence why egg made the comment that you quoted.

the benefit of in_zip is that it works for whatever format that winamp is currently saying it supports (based on what the in_* plugins report back to winamp) irrespective of if the format can be natively played as an archive by the respective in_* plugin. also it means you don't have to mess around with the updating of legacy plugins to support archive support (which essentially makes it easier for everyone i believe).

-daz
DrO is offline  
Old 18th October 2005, 14:26   #189
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Hi.

1.)
The in_zip.dll is a great plug-in too.
And its ability to automatically detect all files/tunes/tracks inside an archive is one of the most important feature that read_file.dll does not have.

In my previous thread, I just explained, how powerfull read_file.dll is.
I do not have any bad arguments against your new plug-in.

However, some hours ago, I could read some threads where users would not be really happy
if they have to add a further .dll into the Winamp's directory.

Well, this cannot be avoid, I think.

2.)
But there are some bugs:

a)
If I play different compressed stuff
(e.g. a rar3-compressed Turrican 1...3 TFMX collection with Peter Pawlowski's TFMX plug-in)
then many tunes will be skipped while using your in_zip.dll.

After drag'n'drop the turrican.rar archive to Winamp's playlist, the first entry is:
<< Turrican >> (Contains 44 valid files).

After double click this first entry,
in_zip.dll begins to:
+ unpack and list all files under/below the first entry
+ play the first file inside the loaded archive.
(
This effect rulez!!! a "vice-versa-effect" would also be great:
--> after double click the first entry, all sub-entries should disappear like closing a drawer.
)


Well, titles without duration information will be skipped.
You just hear less than one second of a title which has no duration information.


b)
Furthermore, after pressing "stop" then
the next title inside the archive will be played.

When I press stop, then I expect that Winamp (and your plug_in)
should normally stop.


c)
File format / input plug-in specific file/title information from tunes inside a loaded archive cannot be viewed/opened.
(To maybe solve the problem, in_zip.dll should use a temporary directory where the currently played file will be extracted.
Or in_zip.dll should use a temporary directory where a tune will be extracted when "File info" will be opened.)


3.)
Try this small selfmade Turrican TFMX collection:
http://bnobtc.pix-art.com/winamp/turrican.rar


Here is the m3u playlist if you want to do some experiments with the read_file.dll

http://bnobtc.pix-art.com/winamp/amiga-turrican.m3u


4.) Interesting stuff:

You can check the Plugins with "read_file.dll" support and you will find following API call/command/string:
+ readerSource

Because of the midi plug-in has the ability to convert exotic midi files to "normal" midi files,
it uses the additional commands:
+ RF_create
+ gzip_writefile


All three commands/calls:
+ readerSource
+ RF_create
+ gzip_writefile

...can logically be found in read_file.dll.

-->Use Dependency Walker (google) and open the read_file.dll.


Now, how to use the commands/calls in own plug-ins?
Borg Number One is offline  
Old 18th October 2005, 15:01   #190
DrO
 
Join Date: Sep 2003
Posts: 27,873
i'm aware of those exports in read_file but i'm not going to waste the rare dev time i have trying to figure it out so you're on your own on that.

as for the issues with in_zip..
b) it's probably the new on track end detection code at fault, does the stop failing to work happen with 0.5.6.4? this is mainly why the plugin is still marked as alpha (since the emulation layer of in_zip needs to call the stop(..) function but winamp is a pain for trying to detect this..)

c) the plugin currently extracts the file to a temp folder on playback but does not on viewing/querying information since it just doesn't do that currently plus i'm looking to some psuedo tagging for archives (at least for zip files) so that they can be properly queried by the ml, etc which would solve the majority of the speed issues with viewing the titles of the archives.

-daz
DrO is offline  
Old 18th October 2005, 19:07   #191
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Hi.

Reffering to "b)", I used the latest v0.5.6.9 alpha release.

Well, in the last post I already mentioned that I prepared a rar file for you...:
http://bnobtc.pix-art.com/winamp/turrican.rar

(The TFMX plugin can be downloaded here: http://bnobtc.pix-art.com/winamp/plu...ut/in_tfmx.rar )

So, you can test it.

You will see that some tfmx files (in its original form) have no time duration information.


Many other formats (in their original form) have no time duration information too.


Before you go to a "in_zip.dll" release canditate,
you should change the "system", so that time duration is not important for in_zip.dll anymore.

Such a step will surely avoid many other problems.
Borg Number One is offline  
Old 18th October 2005, 20:38   #192
DrO
 
Join Date: Sep 2003
Posts: 27,873
from looking at that test dll i can see that the on end of track detection is messing up the support of the tfm/mdat+smpl files but even without that code enabled only the tfm files play since you need a rules entry for the mdat files
e.g.
ext2=mdat
rule2=%file%.smpl

would need to be added to the in_zip_rules.txt (the preferences to make that easier will be implemented either in 0.6 or 0.6.5 of the plugin)

until i can 100% replicate how winamp detects the end of a track then there will be some issues but that's the fun of an emulation layer.

also i have to say that with that example midi rar, it was a lot easier to use in_zip to start playing any of the files compared to the read_file method and having to create a playlist and all that hassle..

as a note i've adjusted your first posts so that it doesn't break the forum frames as badly as it did before (could do more but i have better things to be doing).

-daz
DrO is offline  
Old 18th October 2005, 21:08   #193
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Hi.

1.)
How does your in_zip.dll work?
Your plug-in becomes more and more interesting!!!

Please, do not publish source code!!!
That is not what I would like to see.

Just publish "pseudo code" or just describe how in_zip.dll detailed works.



2.)
Suggestion:

in_zip.dll should work like a "wrapper"
a.) zip:// --> activates the in_zip.dll plug-in

b.) zip://drive:\directory\archive.ext\directory\tune.ext2

ext= RAR, ZIP, GZIP, ACE, ARJ, LZH, LHA, 7ZIP.
ext2= extension of any tune format which is supported by Winamp's input plug-in

After unpacking "tune.ext2" to a temp directory,
it should be wrapped to %tempdir%\tune.ext2.

So, each input plug-in "believes"
that: "zip://...\tune.ext2"
is: "%tempdir%\tune.ext2"


In other words:
Every file specific request(s)/function(s) by the (input) plug-ins,
which will be send/received to/by the currently played title/track/song
should automatically wrapped
from: "zip://...\tune.ext2"
to: "%tempdir%\tune.ext2"

If in_zip.dll will be able to catch/trace more Winamp-process/thread and sub-process/thread related stuff then there should be no trouble to catch/trace the "get-file" function while opening "splitted tunes" like the original TFMX files.
Furthermore it would be possible to display the file info box.

Also detecting a currently necessary track duration would not be required anymore.


If you load a xyz.mdat file into winamp then the tfmx plug-in looks for a xyz.smpl file.

But if you do the sam with tfmxfiles in compressed archives then in_zip.dll currently catches and wraps/simulates/emulates/forwards just some
file handle related functions that a plug-in can send/request.


PS:
Try sys-internals filemonitor in following state:
+ open the "Add url" box and enter: "zip://x:\Turrican.rar,29" ...you will see stuff like:


"22:55:30 winamp.exe:1208 OPEN C:\DOKUME~1\ADMINI~1\LOKALE~1\Temp\arc203.tmp\zip:\c:\ NAME INVALID Options: Open Directory Access: All "
-->
Temp\arc203.tmp\zip:\c:\ ...what? It is an invalid path. If I would be an OS then I would not understand it too.


or:

"22:55:30 winamp.exe:1208 OPEN C:\Turrican.rar NOT FOUND Options: Open Access: All "

Here, the Turrican.rar file is not not on drive C:\ .

Last edited by Borg Number One; 18th October 2005 at 21:55.
Borg Number One is offline  
Old 19th October 2005, 06:32   #194
priestlyboy
Junior Member
 
priestlyboy's Avatar
 
Join Date: Dec 2003
Location: Brooklyn, NYC
Posts: 43
Send a message via AIM to priestlyboy Send a message via Yahoo to priestlyboy
Latest Alpha works great in Winamp 5.1

Although the track lengths aren't reported in the playlist editor when i used MODs and S3Ms in an rar.

Play advancement works prefectly so far on what i'm using.
priestlyboy is offline  
Old 19th October 2005, 09:07   #195
falcn
Junior Member
 
Join Date: Oct 2005
Posts: 3
Hello DrO.
I just want to say 'Thank you' for this wonderful plugin.
I've downloaded fresh release and this time it works perfectly! (Winamp 2.95)

There was feature which allow adding archives to playlist from "Add file" dialog without selecting "show all files" in filter dropbox in the early releases, where did it gone? It was very handy. (update: I mean, rar and zip files no more shown with the "all supported types" mask)

By the way, in_zip plays .tar files It doesn't show tracklist, just plays whole album as a single huge mp3. Nice

As for .ace archives, it shows correct total time(update: no, it's incorrect, just close), but doesn't extract & play files from archive. Since you use unrar.dll, I assume you can handle any archive type which rar itself support?

Thanks again

//falcn
falcn is offline  
Old 19th October 2005, 13:12   #196
DrO
 
Join Date: Sep 2003
Posts: 27,873
falcn:
Quote:
Added in support for 'exts=1' to be added to the plugin's settings section (in_zip block) in Winamp.ini which will add zip, rar and 7z to the file types list (which allows for Winamp to detect these files when using the add file(s), add folder, etc features)
that's from the v0.5.6.3 changelog. you'll need to manually add it in until i get the prefs options implemented for the 0.6.x series of the plugin

as for tar and ace, i know for sure that it doesn't do ace (was looking at the unace dll code integration last night tho which should be added soon i hope..)

with the unrar.dll usage, as long as the dll supports the file passed to it then it should work

priestlyboy: is that happening when you're playing the files

Borg Number One: i'll reply to your post later since it's going to take longer to reply back than i have time for in my lunch break today

-daz
DrO is offline  
Old 19th October 2005, 21:10   #197
Borg Number One
Member
 
Join Date: Sep 2002
Posts: 62
Hi, DrO.

1.)
Ignore my ideas in the previous post.
They just reflect exactly the same what your plug-in already does.


2.)

DrO wrote:
Quote:
Borg Number One: i'll reply to your post later since it's going to take longer to reply back than i have time for in my lunch break today


I tested some other 3rd party input plug-ins and it seems to be that some plug-ins work perfectly and some plug-ins do not.


This could be a reason that some plug-ins use "normal"/common file handle commands and some plug-ins do not.

So, it is just a question of improoving the wrapping / emulation.
(
When you improove the wrapping/emulation then avoid to adjust/fit/suit the in_zip.dll to certain input plug-ins.

Please, do it in general way and
please do not try to improve the wrapping / emulation in a
input plug-in specific way.
)


3.)
When I try to load the HVSC archive:
http://gallium.prg.dtu.dk/HVSC/rando...ll-of-them.rar
then in_zip.dll shows:

<< HVSC 43-all-of-them >> (Contains 0 valid files)

The Sidplay2 input plug-in was used.
http://winamp.com/plugins/details.php?id=144643

You can also try sidamp:
http://winamp.com/plugins/details.php?id=97433

Last edited by Borg Number One; 19th October 2005 at 21:40.
Borg Number One is offline  
Old 20th October 2005, 01:52   #198
hcs
Junior Member
 
Join Date: Apr 2005
Posts: 10
Send a message via ICQ to hcs Send a message via AIM to hcs
If you have any time to explain, how are you detecting end of track? The first thing that came to mind for me was to create a window and pass that handle on to the input plugin, then wait for your window to get the EOF message and do your stuff then, then pass another message off to the real winamp window.
hcs is offline  
Old 20th October 2005, 02:28   #199
DrO
 
Join Date: Sep 2003
Posts: 27,873
the main issues i've found with other in_* plugins is that either the format to be played requires a rule to be setup for that file type (i'm happy to add more rules to the default list if people let me know) or it hits on the stop(..) detection issues with the current code. that detection code isn't tied to any specific plugins as is the case with the rest of the code. the only specific handling is done from what's read in from the in_zip_rules.ini file and apart possibly from messing around with *.gym files (since they have a dead simple header and with the inclusion of bzip2 support in a few builds hopefully i can improve the extraction success of that format ref: mouser x's posts a page or tow back), i don't really intend to have any really specific in_* handling in in_zip.

with regards to the rar file of sid's you posted, i'm having issues with it trying to read the file as well. initially i wasn't sure if it was due to the custom unrar.dll i (finally) built tonight since i'm trying ideally to make a static unrar.lib to include in the dll since i'm not too keen on the folder for unrar.dll though once i get unace.dll support in then i'm back to the same situation (but 33k off unrar.dll ain't bad - is a 77k saving if i link to msvcrt.dll instead of statically linking to libc).

anyway, from looking at what the code is doing, after it's read the first entry in the rar file it aborts further processing. i'm not too sure why, but RARReadHeader(..) is returning ERAR_END_ARCHIVE after the first entry so something is weird with the rar file/unrar.dll isn't liking it somehow (might be useful i can now build a debug version of unrar.dll so i can look more into what's failing over the next few days)

hcs: the end of track detection at the moment is based on a few checks against the current playback position from the in_* currently being controlled with repect to the output plugin's is_playing status and also some comparisons against the current track's length. this is far from ideal but for the plugins i was testing with at the time it works well. when the conditions are met then WM_WA_MPEG_EOF is fired off and winamp then calls in_zip's stop(..) which in turn calls the relevant in_* plugin.

what worries me is that on my main installs (home and now work) the playback advances to the next track without any intervention needed whereas i have to use a 2.91 install to replicate the issue otherwise where from spy++ that postmessage is never being received/detected i'm going to walk through the code and see if there's anything which could be causing such a block (but that will have to be later since i should have hit the sack ~3hours ago seeing as it's gone 2:30am here)

-daz
DrO is offline  
Old 20th October 2005, 16:30   #200
hcs
Junior Member
 
Join Date: Apr 2005
Posts: 10
Send a message via ICQ to hcs Send a message via AIM to hcs
OK, if that's how it's working then I guess it's fine, it just seems to me to be a bad idea trying to detect the end based on time and is_playing, since the input plugin will do it's own end of track detection.
hcs is offline  
Closed Thread
Go Back   Winamp & Shoutcast Forums > Winamp > Winamp Discussion

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump