Jump to content

Archive (zip/rar/...) file content


andrejk

Recommended Posts

It's me again ;) Today about archives.

It would be nice (and maybe useful) if uTorrent know some archive file formats and is able to:

1. show archive contents = file/dir structure

2. extract completly loaded files from partialy loaded torrents

I know that (1) will be possible only after loading some parts of torrent and after loading more pieces it may rescan archive to update structure.

Also (2) is functionality not related to main purpose of uTorrent, but may be useful.

I'm curious why people seed archives of install packages | images | videos and not plain directory. In general it's not worth to compress some types of files and it's harder to work with such monolythic files as torrent content.

When archive is not 100% downloaded the only way to extract files is copy the file into new location, rename and then run repair process to extract at least some files, which is time and space consuming (and zip sometimes tend to repair into archive with broken file which is 2GB full of nulls).

Link to comment
Share on other sites

well there is one situation where it would make sense to integrate some archive awareness directly into µTorrent

let's say a torrent consists of one big rar and you want to just peek at the contents to verify that they are what you are expecting (sometimes descriptions can be a little lacking)

with some archive reading built in, µTorrent would know exactly which blocks need to be retrieved in order to reconstruct the archive directory

and even more advanced, it could then give you the option of just downloading specific files WITHIN AN ARCHIVE

that would be hella cool, but my first priority is still 'Delete and -> Move Files' ;)

Link to comment
Share on other sites

well you could say either

1) it doesn't support solid archives (so many are NOT solid that i would still consider it a very worthy feature)

2) it would have to download everything up till that file if it is solid

and even forgetting downloading actual files, content peeking would still be very helpful

Link to comment
Share on other sites

well there is one situation where it would make sense to integrate some archive awareness directly into µTorrent

let's say a torrent consists of one big rar and you want to just peek at the contents to verify that they are what you are expecting (sometimes descriptions can be a little lacking)

You've got it! Thanks!

with some archive reading built in, µTorrent would know exactly which blocks need to be retrieved in order to reconstruct the archive directory

and even more advanced, it could then give you the option of just downloading specific files WITHIN AN ARCHIVE

As discussed before (in my previous request about selective downloading just some files of multifile torrent that are fully available) this is considered as harmful to torrent community and won't be good at all.

But just peeking into archive would be very nice...

Link to comment
Share on other sites

> As discussed before (in my previous request about selective downloading just some files of multifile torrent that are fully available) this is considered as harmful to torrent community and won't be good at all.

i don't think that is the same thing

that was automatically only downloading files that were 'complete' in the swarm when the client has no real way of knowing that information

this is manually deciding you are only interested in certain files, which is no different than selective file downloading now

Link to comment
Share on other sites

The features you're asking for basically want an extract-ready copy of winrar or 7zip built into uTorrent.

If you want to see what's in the files, use an archiver application.

QFT. Let's leave µTorrent as a BitTorrent program only, please. Use 7-Zip, for all your compressed file(s). :/

-1.

Link to comment
Share on other sites

with some archive reading built in, µTorrent would know exactly which blocks need to be retrieved in order to reconstruct the archive directory

Gah, way too complicated and unnecessary before we even get into the "downloading PARTS of archives" bit.. :/

Link to comment
Share on other sites

with some archive reading built in' date=' µTorrent would know exactly which blocks need to be retrieved in order to reconstruct the archive directory[/quote']

Gah, way too complicated and unnecessary before we even get into the "downloading PARTS of archives" bit.. :/

Hmm, quite interesting idea. Just imagine that some torrent client implements this - you can see what is in archive AND archive index blocks will be available in more clients.

I think this would be hard to code but may be useful.

Link to comment
Share on other sites

Firon: I checked the rar archive format and there is clearly set file size and decompress algorythm use it.

For torrent with rar-compressed-files much bigger than torrent block size this will work and it's possible to do. You don't need to have whole block to know where next block starts, block lenght is in block header.

Link to comment
Share on other sites

Right, I didn't mean random incomplete rar but rar with pieces I need to display structure. When you (fortunately) have all headers in current downloaded torrent blocks you're able to show archive file list.

When you have file with all block headers - even if everything else (compressed file content) is 0x00 - the archived file list will be available. After downloading the first archive block you can count which next block you need to read to be able to parse another block header.

Link to comment
Share on other sites

Eh? Any RAR file I've downloaded from HTTP servers don't display files until the entire file is received. Even if I have 50% of a file, and I'm downloading from my browser's internal download manager (meaning no splitting of files, but straight sequential download), I can't see the file list. It just tells me that I have a corrupt RAR archive.

Link to comment
Share on other sites

Yes, but there is probably some way that I'm not aware of to extract the RAR partially using other software (which could, potentially, be built into a torrent client). Most RARchivers will just say the archive is corrupt, however.

Anyway, I'm still strongly against it, it's way too complex and inconsistent. Maybe you could petition some Azureus plugin developers to work on it and see if that goes anywhere? :)

Link to comment
Share on other sites

Yeah, and it seems out of the scope of a torrent client. That utility:ease-of-coding ratio that I always talk about seems very low in this case too. Just to let users see what's in an archive, ludde would have to go through more crap to try to do it. In any case, RAR is a proprietary format, and you'd need licensing from the developers. Don't see it happening for that format, at the very least.

Link to comment
Share on other sites

> In any case, RAR is a proprietary format, and you'd need licensing from the developers.

not to reopen all the other points, but i just want to say that this is not true, decode source is freely available on their website

you only need a license for compressing

Link to comment
Share on other sites

so for the definitive answer on this i looked up the rar format specs:

http://www.win-rar.com/index.php?id=24&kb=1&kb_article_id=162

it looks like there isn't one centralized catalog like zip, it is interspersed throughout the file like

[f1header][f1compresseddata][f2header][f2compresseddata][f3header] . . . etc

each header contains only the info sufficient to find the next header

so if some sort of partial downloading algorithm was done it would have to download the 1st file header, calculate the position of the 2nd file header, download that, calculate the position of the 3rd file header, etc, etc

so it isn't necessary to download the entire archive, but it obviously would be be a very inefficient and slow method, especially if there were a lot of files

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...