Question: I have a very large bz2 file which I want to convert to a ISO image. Are there any good open source/free programs that can do this WITHOUT having to extract it first?

**EDIT:** When I mean "without having to extract it first", I mean not having to extract the entire archive to my hard drive and then convert it to ISO.

Answer: 
> 
> When I mean "without having to extract
>  it first", I mean not having to
>  extract the entire archive to my hard
>  drive and then convert it to ISO.
> 
> 
> 

The bad news: you will have to extract it.

The good news: you don't have to extract it to your hard drive, you can do it all by piping to stdin, so it all happens in memory (which is basically what converting would do).

You'll need `mkisofs` and `bzcat` (or `bzip2 -dc`), both can be installed with [cygwin](http://www.cygwin.com/). Then it's just a matter of:

```
bzcat file.bz2 | mkisofs -o image.iso -stream-media-size #
```

where `file.bz2` is your archive and `#` is the media size in sectors. 

If your archive is actually a bzipped TAR archive, something like this would be more appropriate:

```
tar --to-stdout xjf file.tar.bz2 | mkisofs -o image.iso -stream-media-size #
```
No!

They are packaged inside a bz2 file therefore part of the conversion process would be to extract.