Posts: 192
Threads: 9
Joined: 2022 Sep
Thanks: 6
Given 114 thank(s) in 66 post(s)
Country:
(2023-05-04, 09:26 PM)bronan Wrote: BitPerfect 2.1 is coming soon. Bunch of improvements including sample reading speedup, LUF/LRA analyzing, fixed Extensible WAV reading (eac3to likes to generate these for even 1-2 channel files), FLAC support and more.
I've also been thinking a bit about the dual mono test. Right now it just checks if they are exactly duplicated digitally, but I'd like to make it more flexible for older movies with analog duped channels. Basing it off the old ffmpeg inverse trick, what I'm thinking is subtracting one channel from another, then running RMS over that in 1 minute or so sections. Those sections can then be gated at some audible level, and scored for over the course of the movie. I've seen stereo bumpers at the beginning of features, so breaking it up into sections could put lower weight on content from beginning or end of the track.
Good stuff and good idea about the mono check which would be really useful. Would be cool if it could also detect fake stereo (the kind that can be folded to mono) but no idea how hard that would be to implement.
Posts: 2,693
Threads: 47
Joined: 2015 Jan
Thanks: 1637
Given 954 thank(s) in 608 post(s)
I myself think it's great because if an LD mono is just duplicated, then fine, one can delete a channel.
However in many cases, the LD mono is a straight 2.0 capture, and deleting one channel put the sound in the middle, and brings all kinds of nosy problems to it.
So IMHO, if the check is that they are both the same, fine. If the check reveals they have some differences and they widen the soundstage.
Keep it as is.
Posts: 759
Threads: 34
Joined: 2018 Feb
Thanks: 648
Given 1064 thank(s) in 404 post(s)
Country:
2023-05-04, 10:36 PM
(This post was last modified: 2023-05-05, 03:11 AM by bronan.)
I can understand keeping a dual mono since the noise will be different on each channel with an analog capture. The test is primarily just meant to detect if its actually stereo content, or just duped - analog or digital.
On further thought, I think the one thing that would still mess it up is if one channel is recorded significantly louder than the other. This could possibly be fixed by taking RMS for both channels, normalizing channel 2 to channel 1's level, subtract the normalized channel 2 from 1, and finally taking the RMS of that. If the RMS is in the audible range then there is definitely something going on there!
Posts: 2,693
Threads: 47
Joined: 2015 Jan
Thanks: 1637
Given 954 thank(s) in 608 post(s)
To me the problem is that one channel reduce the audio dead center and thus the sounfield.
If you have a mono 2.0 track, the stage can often be wider than dead center.
That's because the difference of levels, but also of EQ, might have been used to make the mono sound bigger than nosy (ie dead center).
We have no clue what source was used when some of these tracks are found to be 2.0 on many VHS and LDs and discs.
If an optical track 1 channel is the source, then OK. But what if the sources are the DME elements, that were folded one way for left channel, (with some EQ and volume adjustments), and another for the right channel?
It could be cool if we could sort out differences on mono stuff.
Posts: 2,049
Threads: 56
Joined: 2016 Dec
Thanks: 161
Given 1008 thank(s) in 612 post(s)
(2023-05-05, 09:44 AM)Stamper Wrote: But what if the sources are the DME elements, that were folded one way for left channel, (with some EQ and volume adjustments), and another for the right channel?
That would not be mono, you're describing what Chace stereo used to do
Posts: 2,693
Threads: 47
Joined: 2015 Jan
Thanks: 1637
Given 954 thank(s) in 608 post(s)
Yes, exactly. I think the point is that we always go for bit-perfect versions of old home video releases, but for some reasons when it comes to mono, sometimes we drop one channel thus tinkering with them.
When they are both identical and already duplicated (as proven by the flatline), I see no problem.
But when they aren't, for me it's messing with the original presentation. That's not the original LD or VHS presentation preserved, but a re-edit.
I don't mind re-edits if the original is offered beside it.
Also, 1 channel = exact center sound.
2 channel mono = bigger soundstage.
So in essence, if one delete a channel (unless of course it's rotted of have other problems), you mess up the soundstage and you reduce it.
That's why I would prefer if dropping one channel would be just an option offered with the original.
Posts: 759
Threads: 34
Joined: 2018 Feb
Thanks: 648
Given 1064 thank(s) in 404 post(s)
Country:
@ Yarp If you know for sure the original mix is mono then you could find fake stereo using this test just as well. We are just trying to detect audible differences between 2 channels. So if it lists Channels: 2 (Stereo) instead of (Dual Mono) and you know the original is mono then its either a remix or fake stereo adjustment.
Posts: 591
Threads: 44
Joined: 2021 Jul
Thanks: 433
Given 478 thank(s) in 237 post(s)
Country:
(2023-05-05, 04:55 PM)Stamper Wrote: Also, 1 channel = exact center sound.
2 channel mono = bigger soundstage.
3 channel mono = profit?
But yeah, 1 channel mono doesn't sound great on a home theater setup. 2.0 mono is an improvement.
Though if there are minor differences in levels or whatnot, you're better off duplicating the best channel to make them exact.
Posts: 759
Threads: 34
Joined: 2018 Feb
Thanks: 648
Given 1064 thank(s) in 404 post(s)
Country:
2023-05-14, 02:34 AM
(This post was last modified: 2023-05-14, 02:44 AM by bronan.)
Finally had time today to sit down and try out the stereo check. So here's how it works:
- both channels are analyzed from beginning to end and overall RMS for each is generated
- a multiplier is calculated to normalize channel 2 to channel 1 using the RMS values from the previous step
- going in 5 second segments, channel 1 is subtracted from channel 2 (with normalization multiplier applied) and then the RMS of the difference is calculated
- after the entire track is analyzed, the average dB of all the 5 second segments is calculated, except for ones in the first and last 5% of it (to account for possible misleading data like intro / outro bumpers)
And here's the test results:
Code: Stereo Examples
Akira (LD): -34.894 dB
Akira (BD): -35.041 dB
Commando (JP LD): -34.785 dB
Commando (US LD): -32.549 dB
------------------------------------------------------------
Mono Examples
Day of the Dead (LD): -51.180 dB
Day of the Dead (VHS): -52.986 dB
Day of the Dead (BD): -infinity dB
Rear Window (UHD): -infinity dB
Vampire Hunter D (VHS): -55.482 dB
Vampire Hunter D (LD): -54.552 dB
So essentially the real stereo tracks land around -35db and the real mono stuff goes below -50db. To note is Rear Window and the Day of the Dead BD where it is -infnity, that means its exactly the same, so we can still detect that as well.
One surprise for me was Vampire Hunter D. Someone had sent me the VHS audio so I happened to have it on my drive and checked it as well. I was shocked that it came back mono, and checked my LD rip, which also turned out to be mono. Also noticed the normalization helped the most with the VHS tapes where the channels tended to be several dB apart.
Posts: 759
Threads: 34
Joined: 2018 Feb
Thanks: 648
Given 1064 thank(s) in 404 post(s)
Country:
2023-05-14, 03:22 PM
(This post was last modified: 2023-05-14, 03:28 PM by bronan.)
Played around with this a little more. I noticed stuff mastered lower volume starts creeping towards that -50 level faster, so I thought instead of just using that value, why not subtract it from the average RMS. So now, the lower the value, the more likely its stereo. Anything below 8dB is definitely stereo and anything over 20dB is definitely mono. I found my annoying edge case though, Twin Peaks! It's very quiet with little stereo activity and occupies the annoying middle ground around 14 dB.
On further thought, there is one other way to go about this. Instead of going by amplitude, you'd deconstruct the signal into its frequencies with a Fast Fourier Transform, then compare the frequency content of both channels. This should give a much more reliable result, but the downside is that it would be much slower. I will give it some more thought though and maybe come up with a test to see how it does.
Code: Akira (LD)
RMS Avg: -29.465 dB
RMS Channel Difference: -34.894 dB
Result: Stereo (5.428 db)
Day of the Dead (BD)
Result: Mono (infinity dB)
Day of the Dead (VHS)
RMS Avg: -25.699 dB
RMS Channel Difference: -52.986 dB
Result: Mono (27.287 dB)
Day of the Dead (LD)
RMS Avg: -33.767 dB
RMS Channel Difference: -51.180 dB
Result: Mono (17.413 db)
Twin Peaks S02E01
RMS Avg: -34.170 dB
RMS Channel Difference: -47.162 dB
Result: Stereo (12.992 db)
Twin Peaks S02E02
RMS Avg: -32.011 dB
RMS Channel Difference: -46.292 dB
Result: Mono (14.282 db)
Sorcerer (LD)
RMS Avg: -32.808 dB
RMS Channel Difference: -39.727 dB
Result: Stereo (6.919 db)
Sorcerer (BD)
RMS Avg: -28.381 dB
RMS Channel Difference: -35.881 dB
Result: Stereo (7.500 db)
Vampire Hunter D (LD)
RMS Avg: -29.213 dB
RMS Channel Difference: -54.552 dB
Result: Mono (25.339 db)
Vampire Hunter D (VHS)
RMS Avg: -32.016 dB
RMS Channel Difference: -55.482 dB
Result: Mono (23.466 db)
|