Outboard video processing

I’m feeding the output of my Vero to the HDMI input of an Oppo 105D which then decodes the audio and sends to amp/speakers (Oppo as preamp) and sends the video to my TV (an older top-end 1080p plasma). I do this for two reasons but I need a sanity check on my rationale:

  1. I assume the Oppo does a better job decoding the various audio formats than Kodi.

  2. I assume the Oppo does a better job of processing the video than my TV. But does it? And what do I mean by processing… yeah, I don’t know what that means frankly. The Oppo can apply Darbee video enhancement (mine is set to zero) and the usual assortment of video calibration options are present (all set to default). And the Vero scales whatever video its playing to 1080p so… what’s the Oppo bringing to the table, video wise?

And since it all looks and sounds good to my eyes and ears, why do I care to second guess my own misconceptions? Well because I can’t get CEC to work such that I can use the TV remote to control the volume of the Oppo in the current configuration. And multiple remotes is a huge no-no with the keeper of my spine. I CAN do it if the Oppo isn’t also providing the video.

Ok, this isn’t an Oppo support forum and I’m not asking for CEC support for non-OSMC gear (CEC between TV and Vero works fine). The question really is this: is there value in utilizing the Oppo or should I just connect the Vero directly to the TV and have the TV pass the audio on to the Oppo via ARC and have CEC work? Hmmm, it’s still an Oppo query isn’t it. I guess I’m hoping the sharp people here can provide some general guidance.

Cheers,
Robert

I’d be surprised if the Oppo handles audio better.

Video may be better for lower resolutions, but not for HD and up, I’d say.

If you are dealing with soundtracks with more than two channels then you may have issues with passing that through a TV. It is pretty common for a TV to only be able to pass through stereo PCM and DD. If your source is something like DTS or DD+ you might have to turn on transcoding in Kodi to get it to pass. Any time you transcode you will get some kind of a loss. Whether you will be able tell (or care about) the difference you would have to play with it and see for yourself.

You could also just swap the remote to something like a Logitech Harmony instead to keep you at a single remote. The models with the screens on them in particular can have a high WAF. I programed one of mine with a “sleep90” button on the screen that kicks in a 18 button press sequence that the original TV remote required for example.

I don’t really understand digital audio as delivered over HDMI. I assume in Kodi if you choose pass-through it simply passes the undecoded bits through. The Oppo first decodes it, then converts to analog, then amplifies it enough to send to the power amps. Fine. If Kodi is not set to pass through, does it decode it and send the resulting “full” digital signal out to be converted to analog and amplified? I assume so and would agree that a device can either decode a signal or it can’t - so assuming two devices can do it, how could one be better than the other? But if that’s the case, what’s the point of pass-through if Kodi can decode all those various formats - just get a preamp/amp with a good DAC instead of a fancy-ass A/V receiver or pre/pro?

Then the related question would be what can the TV pass out its ARC? Only stuff already decoded by Kodi? Or only stuff it (the TV) can decode and send or only stuff it can’t decode… And that’s what Darwin is leading to also. Yeah, I don’t care for it, it just seems wrong - but that’s what I’m trying to get a handle on so I don’t have to base things on how it “seems to me”.

I tend to agree that the Oppo isn’t providing value in the video chain IF it’s ability to scale isn’t better than Kodi, especially since I’m not using its more advanced processing such as Darbee. So aside from the audio value, this wouldn’t be a reason for or against routing through it. And yet, haven’t I always heard that TV’s do a better job of upscaling than Kodi? And haven’t I always heard that the upscaling capability of the Oppo is better than most consumer grade TV’s?

Further trial and error now appears to suggest that CEC bliss isn’t as simple as routing Kodi directly to the TV and using ARC to feed the Oppo. I can make it work and the TV remote does it all. But only for one session. Turning things off and back on means back to two remotes and a couple setup items before it all works again. Pity. But maybe I’m learning that I’m better off leaving well enough alone.

Darwin, yes, in actual fact I do have a Harmony One that I can make work for these three devices by utilizing a FLIRC. Theoretically I wouldn’t need a FLIRC but I’ve never had luck with any of my Vero units’ IR reception and the FLIRCs just plain work. It’s all good but as nice looking as the One looks, it’s too shiny, slippery and plain weird feeling in the hand. It looks like a great piece of kit and I’m sure it is, but feels wrong. But I may well be stuck with it.

Thanks for the input guys.

Cheers,
Robert

Kodi will happily send any normal surround sound format along unmodified if you tell it to. Your Oppo or a modern AVR will likely take these as they are without issue as well. TV’s however are often more restrictive on what they can accept and/or allow to pass through them. Your TV might put limits on what can pass through it, or it may not. You would have to do some research or testing to find out. You wanted to know a downside to making that switch and I was trying to let you know about the most common issue with plugging directly to a TV.

As for the analog conversion (the DA converter) that is not done in Kodi. HDMI cannot pass through a surround sound soundtrack in a uncompressed format so it must be output in a suitable format. If you have a for example a movie with a DTS soundtrack but your TV will only pass Dolby Digital then you would have to have Kodi convert the DTS to DD (which would reduce its quality) and then when it finally hit your Oppo then that would decode the now DD file and convert it to analog and send it to your amplifier. If your TV does not impose any restrictions then you have no issues, but it is very common for them to.

I’m a bit surprised you don’t like the Harmony One. IMO that is the best remote ever made and I love the feel of it. To each their own I guess.

The Oppo 105D is very good at some things, and surprisingly bad at others.

It will definitely do a better job of upscaling video than the Vero 4K will; so, you will definitely get better results with SD or 720p video if you send it to the Oppo at native resolution rather than having the Vero upscale. However, getting entirely unscaled SD video out of the Vero isn’t always that easy at the moment: for 4:3 480 material you could get the Vero to output “Stretch 16:9” rather than “Normal”; but that would mean using the TV to set the aspect ratio correctly, which would mean the TV is horizontally downscaling after the Oppo has upscaled, which probably won’t look very good, so you’re probably better off passing 480 4:3 unscaled and having the TV upscale it. I think 576 material is impossible to output unscaled at the moment. (Haven’t tried that lately, so that may have changed). 16:9 480 could be upscaled by the Oppo.

The Oppo can’t handle 4K video input at all; but as your TV is only 1080p, I guess you won’t be watching any 4K video…?

The Oppo’s deinterlacing is probably better than the Vero’s but, again, it is not actually possible to get the Vero to output video without some deinterlacing happening first, so this doesn’t gain you anything. (I gather this is also work in progress, but don’t hold your breath). This is a pity, as the Vero’s deinterlacing can be twitchy.

The Oppo is not capable of receiving Dolby TrueHD or DTS-HD on its video input; so you will generally be better off having the Vero decode to multi-channel PCM and have the Oppo function simply as a multi-channel DAC, not a processor; so disable audio pass-through on the Vero.

Also, be aware that the bass management on the Oppo is quite seriously broken; depending on your setup, it may be better to set all speakers to Large.

ARC is limited to Dolby Digital or DTS - again, no HD audio formats - so you definitely don’t want to use that.

Darby video processing is pointless, IMO - if your TV is properly calibrated, Darby will just uncalibrate it for your.

HDMI can pass through up to 8 channels of uncompressed (PCM) sound. AFAIK, decoding formats like DTS and DD is algorithmic so every device should produce the same result if properly designed.

If you are using the test release of OSMC which is in staging, and set the output to Stretch16:9 you will get all 720 horizontal pixels from 480 or 576 material. Just tell your TV it’s 4:3 and it will scale it properly. If passing through a VP, just leave that to treat it as 16:9 or 4:3 depending on what you want it to do. Broadcast TV with 704 or 544 width will be scaled to 720.

I was just about to add ‘correct’ HDMI signalling for 4:3 until I found a bunch of DVDs tagged as 4:3 that were actually 16:9. Just figuring out how to override that in Kodi without introducing other problems.

And wondering whether it’s best to output 544-wide 4:3 video pillarboxed (ie keep current behaviour for that) and how to catch that case. And for that matter, should we pillarbox 704 to 720?

Graham is, of course, correct. The Oppo 105D in particular (on its HDMI input) can handle up to 7.1 24-bit 96kHz, or 5.1 24-bit 192kHz, if I recall correctly. Oddly, as I mentioned earlier, it can’t handle Dolby TrueHD or DTS-HD on its HDMI input (although it can decode those those formats if it is playing a disk or streaming media itself).

Having got a little burned by something in the staging repository a couple of months ago, I’m generally too scared to update to everything in it automatically :slight_smile: but I will certainly give that a try. :+1: Is behaviour the same for both hardware and software decoding?

For a true video processor (e.g. a Lumagen device) that’s good advice; but @Phydeaux’s Oppo 105D doesn’t have the option to switch manually between aspect ratios: it needs the input signal to be correctly flagged. If the Vero is flagging everything as 16:9 then the best thing to do is set the Oppo’s output to “16:9 Wide” (not “16:9 Wide / Auto”); then, for 4:3 set the Oppo’s output resolution to Source Direct, and control the aspect ratio on the TV; for 16:9 stuff you can have the Oppo output 1080p for improved quality. When/if we get to the point where the Vero signals 4:3 correctly, you’d want to set the Oppo to 16:9 Wide/Auto, always output 1080p, and leave the TV at 16:9 all the time.

Yes, please!!! Correct signalling!!! :smile: I agree you need an override for pathological cases, though. From a UI perspective, assuming a 720x480 or 720x576 video, I would have thought “Normal” should output native resolution with “correct” signalling, and “Stretch 4:3” and “Stretch 16:9” should both output the same resolution, but with forced signalling of 4:3 and 16:9 respectively. Whether you can persuade Kodi to do that, I’ve no idea.

Tricky. If the video is 544x576 then the default should probably be to stretch to 720x576, but perhaps setting to “Original Size” could override that…? (I assume that actually outputting a custom 544x576 HDMI mode isn’t possible - and even if it is, there aren’t many people who could take advantage of it, although I’m one of them…).

704x576… I think the default there should probably be to pad it out to 720x576 with black pixels, but (again) have one of the “Stretch” settings override that if requested.

Getting a little off-topic here, sorry @Phydeaux. :blush:

To elaborate a little on that: in pass-through mode, the Vero passes the raw audio bitstream and lets an external device decode it; when not doing pass-through, the Vero decodes the audio track to multi-channel PCM and passes that.

Pass-through is the better option if you have a modern A/V processor that supports formats like DTS:X and Dolby Atmos; Kodi can’t decode the audio to PCM in a way that preserves the Atmos height channel. But if you’re using an Oppo 105D, it can’t handle Dolby TrueHD or DTS-HD in bitstream format, so not using pass-through gives you better results.

If your TV is 1080p, it almost certainly won’t be able to pass anything better than plain Dolby Digital or stereo PCM. 2017-or-later TVs can sometimes pass Dolby Digital Plus that way. Some 2019 TVs support eARC which can pass almost any format, including TrueHD and DTS-HD, but not many AV receivers can handle that.

The Oppo can definitely scale better than the Vero can, the question is whether you can arrange things so that the Oppo is the only thing doing any scaling. (See other posts from me and Graham).

In my experience, CEC causes far more problems than it solves.

Yes.

Only if you think the Oppo is a better upscaler than the TV.

I don’t want to stray too far from what Kodi intended for these modes (which isn’t very clear TBH). Note that ‘original size’ does not mean no scaling when the input doesn’t have square pixels.

Thanks for your thoughts and I don’t think this is off-topic at all!

Speaking as someone who owns an Oppo 105D, I am confident that it will do a better job of upscaling than any 1080p TV. 4K TVs may be another story.

I suspect no one ever actually sat down and thought about what those View Mode options should do at SD resolutions. :slight_smile:

I guess it doesn’t matter too much whether you use the existing “View Mode” menu options to access the behaviour; it might be simpler to add a whole new option to avoid clashing with existing Kodi behaviour.

But however you do it, I still think you need three options for 720x576 and 720x480. All three should output the same resolution as the video, with no scaling; the default option should use “correct” signalling; and the other two modes should force 16:9 and 4:3 signalling.

Similarly with 544x576 - stretching to 720x576 should be the default, but there should be an option somewhere to pad it out to 720 by adding black pixels instead.

And 704x576 should probably default to padding with black pixels, but with an option to stretch instead.

Arguably even more off-topic: am I right in thinking there is an aspiration to eventually allow the Vero to pass through interlaced video for external deinterlacing? And if so, will that apply to 1080i, or only to SD?

Sam thinks it’s doable. If we can do it for SD we can do it for HD. But all scaling would have to be disabled, I guess, to get the ‘didn’t touch the sides’ result you are looking for.

Yes. But starting with SD content. HD content would require some thought about how to best present this option.

I asked about 1080i simply because that would involve messing with the hardware decoding pipeline, while you presumably have more control over software decoding.

But anyway, that’s good to know. :slight_smile: (And yes, obviously it has to be unscaled to be useful).

Noted. :slight_smile:

Just tested this, and it looks good. And not too much labour involved if you use the central “Display 4:3 material as Stretch 16:9” option.

Let us know once you get aspect-ratio signalling working - that’s something I’d like to test.

1 Like

A big Thank You to all who responded. You’ve each helped further my understanding of audio capabilities/strengths/weaknesses of the various ways I can connect/configure the components I have. Aside from an overall better understanding the following is what I take away to apply to my setup:

  1. Connect the Vero HDMI to the TV via the Oppo.
  2. Set Kodi to whitelist 720x and 1080x video.
  3. Set Kodi to NOT pass-through audio.
  4. Get used to the slippery Harmony One.

Obviously I’ve left out tons of configuration items not discussed but I generally have a good understanding of the other settings.

Re: 2 - I’ll test this to see if I find value in it for my old eyes. If I get a 4k display for this system at some point I assume there would be no need to add that resolution to the whitelist as it would always be output “as-is” by Kodi. Since a new, decent quality, 4k display might upscale better than the Oppo, I may want to set the Oppo to do no video processing at all then (I assume that’s possible, I know it’s supposed to pass-through 4k).

Re: 3 - This is what surprises me the most. I presently have pass-through enabled but the DTS-HD and Dolby True HD unchecked. This is where I’m still a little unsure about what digital audio formats are. The “raw bits” from the source file (just talking audio here) are tagged as one format or another in order that they can be decoded as such. Kodi can either pass them on as-is for the next component to do that work or it can output them as PCM. Ok, well, doesn’t the act of converting them to PCM mean that Kodi is decoding them? That digital PCM bitstream just needs to be converted to analog at that point so why is it not considered as decoded? How does Kodi know how to convert them when they are encoded if Kodi doesn’t know how to decode them?

Don’t get me wrong, I’m happy to set this up as suggested and I know it’ll work perfectly and look/sound fantastic. I’m just trying to get my head wrapped around what an encoded digital signal is and how it can be converted to a different digital signal without the Converter knowing how to decode it first. At some point something will “click” in my pea-brain and I’ll get it - I’m just not getting some fine point somewhere…

One other thing I’ve been curious about on the Vero is the Audio Output Device options:

Default (AML-M8AUDIO Analog), PCM
AML-M8AUDIO, PCM
AML-M8AUDIO, HDMI

What are they and why would you choose one over another?

Cheers guys, thank you again for your detailed descriptions and suggestions.

Robert

Sorry I should have typed HDMI ARC does not support more than two channels in PCM which is also a restriction of optical. The equipment we are talking about obviously does not have support for eARC.

On your whitelist you would add any resolutions you want your downstream devices to upscale instead of your Vero. Generally speaking you will see a much bigger effect in scaling of SD to HD than you will from 720 to 1080.

If your connected to the Oppo then there is no reason to not run pass-through audio. Why have Kodi do anything with the audio if it is not necessary?

You could always take some 1000 grit sandpaper to the back of that remote. It is not like you have a warranty to void anymore as that thing was discontinued many years ago now. If you really don’t like the size and layout of that particular model they have other choices. If your issues with the slippery are also with the buttons but you like it otherwise there are models like the 650 that have a very similar shape and layout to the One but have rubberized buttons instead of the hard plastic. You lose the full color touch screen but they cost something like 1/5 or less of what the One did and you don’t have to put the thing in a cradle every couple days.

As for the confusion on converting you seem to be confusing the decompression of a lossy format with the conversion of digital to analog. These are not the same thing. Going from something like DD to PCM is similar to expanding a zip file on your computer. It doesn’t really matter what program made the zip file as any of them will expand the file back to the same original content. On the other hand converting from digital to analog audio has no set standard and some devices do this much better than others. They are very much two completely different things though. When I was talking about loss of quality that was in the context of going from one format to a lossy format (DTS to DD in my example). The loss does not happen when it reads the DTS format, it happens when it has to recompress to DD. It will happen even more if the source is an HD audio format that gets converted to a non-HD format to allow it to pass through a TV that does not support doing otherwise.

Assuming you update to the staging repository software version on the Vero, you should definitely whitelist 576p and 480p as well.

No, you will need to whitelist it. The whitelist is simply what Kodi regards as the list of resolutions it is allowed to switch to when playing video. If you don’t whitelist 4K it will downscale to 1080p.

I’m fairly sure it can’t pass-through HDR.

That will give you sub-optimal audio quality for DTS-HD because the Vero will “helpfully” extract the core DTS track and pass that through as a bitstream instead of decoding the DTS-HD track. The simplest option is to disable pass-through altogether; if you insist on partially enabling it, then uncheck DTS as well as DTS-HD.

Yes, it is.

The Oppo cannot decode DTS-HD or TrueHD if it’s being fed via its HDMI input. (It can if it’s playing a disk or acting as a media player in its own right). Since it can handle multichannel PCM, it’s better not to use pass-through.