I was thinking of starting a shared lossless thread here. I don't think someone has attempted this here unless I'm wrong. What do you guys think? I respect the hardfile format archiving but I think many will appreciate tag rips in a modular format.
How is converting, for example, an original .adx (or any hardfile extension) to .wav exactly lossy? Does this not output to an identical wave file, with the exception of lossy sources such as mp3 or ogg vorbis?
I'm still learning so excuse my limited knowledge. From my understanding vgmstream converts the hardfiles into wave (are they even pcm/wav at all?)
I think what they mean is that the files you find inside games are already lossy. They've already been encoded into formats that aren't lossless.
I'm just guessing though. I've worked with Killer7 sound/music files before and they're out of this world better than any rips I've heard from say the OST. Game files not being lossless is news to me =P
takumoru said: I think what they mean is that the files you find inside games are already lossy. They've already been encoded into formats that aren't lossless.
That's exactly what they mean. I am in agreement. Why post WAV/APE/FLAC/TAK or whatever, when the ADXs are smaller anyway? You want to post files that support tagging? I say convert the looping files to LOGG (aka, looping OGG) and tag the OGG files appropriately. Don't want OGG because it loses data between conversion from ADX to OGG? Leave them as ADX/BRSTM/DSP/etc., and include all the "tag data" in a *.TXT file (you can create a separate TXT file for each song (same name as the song it goes to), instead of one TXT file as well).
If you're really interested in doing this, instead of distributing files that are significantly larger than their originals, create a slew of scripts/batch files that do the necessary work. For example:
BAT file contents --------------- for %%i in (*.ADX) do test.exe -l 2 -f 10 -o "%%i.wav" "%%i" ---------------
This will take a directory of ADX files, and convert them to wave, looping twice, with a 10 second fade, and the output files will look like "<ORIGINAL FILENAME>.ADX.WAV"
Then, you have another BAT file (well, it could be part of the above BAT file actually) that encodes the WAV files to FLAC/APE/OGG/MP3/etc. using the appropriate tools (there's command line tools for all the major formats, as far as I've seen). During the encoding of these files, the appropriate tag data is applied (which, again, can be done from the command line. I've created LOGG conversions, including tags, using the command line tools).
I could provide a comprehensive example, but you'll have to give me some time to set one up (it's been awhile since I've actually done that). And, it'll be using oggenc, as it's easier to set up for that.
The pros for this method are, essentially, size. Excluding the streams themselves, this method would easily be less than 20 MB (and should be less than 10 MB, but I'm not sure how big the necessary tools are). Even including the streams (in their original format) it'd be smaller than distributing FLAC/APE/etc (unless the original format is PCM/WAV). Just tell people "Put my toolset, and the files to be converted, into the same directory, and then double-click the *.BAT file, and then just sit back." Theoretically, you could create a system/set of tools that's completely automated, and requires no additional updates. Just provide a new *.TXT file (with the appropriate tag data), and distribute that. That, however, may require someone to write a program that parses the TXT file appropriately.
What we *really* need is a way to tag the streams, without having to convert them at all. This has been discussed on IRC a number of times, but no consensus has ever been reached, and no one has stepped forward to do the necessary work for this to happen. IIRC, the two methods that seem to be the most popular, is an accompanying TXT for each song (possibly even a single TXT for the entire set, depending on how it's implemented), that contains tag/meta data, or to GENH everything, and then allow the GENH to define tags. Do note that the "GENH everything" is frowned on, but that something similar could be implemented, that doesn't require a "wrapper format".
Last - unknownfile created a thread (I'm pretty sure it was uknownfile), quite some time ago, dedicated toward distribution of lossless sets. I'm pretty sure it was for lossless OSTs though.
That took far longer than I expected it too. Sorry for the massive wall of text. Mouser X over and out.
Without going into complex stuff (because I don't have great knowledge anyhow), converting lossy game files into lossless is completely useless. Games so rarely use a native lossless format, and then it would have a purpose, but this way no.
I get the rippers nowadays almost always provide a flac version of their rip even if it's not necessary. They have logic like this: I want to losslessly encode original game streams, because that is so cool. What they forget is the SOURCE FILE. Why would you do that when the game streams are lossy, and sometimes very lossy? What would you have from doing that apart from huge files? The sound data is lost the moment when game creators compressed the streams and there's not a chance the lossless transcoding will "restore" you that data. The best choice, in my opinion, for transcoding lossy game sound files is using ogg at q10. That is absolutely the greatest quality for a lossy codec you'll ever need. Sometimes mp3 is enough too, if the origimal files are more compressed aka even more lossy.
To break it down like this:
Would you take an mp3 and transcode it to flac? HELL NO!!
The same goes for almost all game formats, they are 95% of the time lossy, so for instance, transcoding ADX to flac is also useless (ADX, AIX, AAX, they are all lossy too).
The point is you have to know whether the original game stream is lossy or not, if it is lossy, don't make lossless transcodes, no matter how cool it may look like.
And to add some examples where you actually have original lossless game streams: there is a lossless variant of wma, a lossless variant of atrac (but even normal lossy atrac is a pain to decode)also as Mouser X said sometimes the game uses wav, pcm for audio and so on. But again, that situation is very, very rare.
The point is to avoid introducing any more loss. A concern is that mismatches between the transforms and psychoacoustic models could compound into a loss greater than the sum of the component losses. This may be fine for you (and I regularly transcode lossy stuff to Vorbis myself when needed), but the kind of people who spend a lot of time perfecting their tagged, timed, mixed, etc. rips tend towards perfectionism.
Wow I've been waaaay off. I myself have been making rips straight to flac but thats because I had no idea the majority of the rips were even lossy and that vgmstream converted these straight to pcm.
Thanks cooljacker for clearing this up for me. :epicfacepalm:
Now these are streams we're talking, what about sequenced music? From my understanding, its basically lossless right?
No worries man, It's better to understand the concept at some point, and I appreciate your efforts as a ripper, OrangeC should be happy to have such great people by his side, in ripping bussiness I mean :D
Sequenced music is a different story, I think. No streams there, sound chip produces the music by reading correct sequence and instruments, so yes, that would be lossless, the melody is made 'on the fly' so to speak.
Sequence music from the PlayStation 1 & 2, and DS are all 4-bit ADPCM with different frequencies. Not exactly lossless. Same with SNES sequences. They also vary but are PCM I believe.
It's the same argument as for using lossless for rips from (lossy) streams. If the decoder is implemented accurately, you have a perfect representation of what the game would produce.
So, based on the fact the samples (or rather instruments) are lossy, even the sequenced music, as a combination of these samples, could be considered as lossy?
Interesting, not once thought about this, never was into ripping sequenced music, no wonder...
But what if all the samples are lossless? Would the resulting melody be lossless too, in this case?
The following maths were done by the creator of OctaMED; for a streamed recording of a 4 channel module (with the pitch range available to Amigas; that is a maximum of ~28khz at 8 bit sample quality each) you'd need to record the tune at 4Ghz for it to be lossless.
This will of course only increase with more channels and the capability to play higher quality/frequency samples.
Therefore recording a 4 channel mod at 40000hz is recording the tune at ~1% quality. If you want to get semantic about lossiness, recording sequenced tracks to any sampled format is not the way to go either.
No! Some of you are still way off! :( cooljacker, your page 2 statement is sensible on from a practical point of view, but it's completely misleading with regards to archiving.
hcs gets it. It's not about getting truly "lossless" files or magically transforming things into CD-quality, it's about preventing further loss.
If you're going to archive streamed files (I'm talking about personal archives, not any kind of proposed share for here or elsewhere on the web), rip it to WAV / FLAC if you've got the space. You'll have a truly compatible snapshot of the original stream's output, free to use on any device / software without having to rely on vgmstream.
If you keep doing lossy -> lossy -> lossy -> lossy, it's like photocopying a photocopy of a faxed photocopy (that originated from a mimeograph).
Pretty much my point. I say personal archiving in FLAC is the way to go regardless if its lossy sourced or not iust to prevent any more loss.
Also yes I'm a neat-freak and love to have everything tagged and labeled in order. Besides you can't burn a hardfile to a CD expecting to be a playable audio format.
"If you keep doing lossy -> lossy -> lossy -> lossy, it's like photocopying a photocopy of a faxed photocopy (that originated from a mimeograph)."
I wouldn't say it's quite that bad. It's a judgment call. Personally I keep the original formats and convert to whatever format is convenient when I want to listen to them; if only the lossless conversion was there I could do the same thing, but if they were MP3'd I wouldn't have any good option but to stick with whatever encoding settings the converter chose.