OSSC Pro

The place for all discussion on gaming hardware
Joe
Posts: 3
Joined: Sun Dec 22, 2019 5:08 am

Re: OSSC Pro

Post by Joe »

Has it been established if the Pro will be able to take direct RGB from arcade boards without damaging it (i.e. Attenuation on the RGB and sync lines)? Apologies if this has already been addressed and i missed it. Thanks
nmalinoski
Posts: 1974
Joined: Wed Jul 19, 2017 1:52 pm

Re: OSSC Pro

Post by nmalinoski »

Joe wrote:Has it been established if the Pro will be able to take direct RGB from arcade boards without damaging it (i.e. Attenuation on the RGB and sync lines)? Apologies if this has already been addressed and i missed it. Thanks
I haven't seen any information to suggest any kind of tolerance for out-of-spec voltages. If it does have anything extra, I imagine it would only be overvoltage protection, like what superg's switchers now have, which would just prevent out-of-spec arcade boards from working; so you'll probably want to keep using a decent supergun for your arcade boards.
User avatar
BuckoA51
Posts: 3357
Joined: Sat Oct 02, 2010 10:08 am
Location: Ireland
Contact:

Re: OSSC Pro

Post by BuckoA51 »

Yep. I think Fudoh was first suggesting mirrored games using the Datapath x4. It's a great idea. :)
Speaking of Datapath 4x I wonder if some sort of video wall controller could be made by daisy chaining 4 or more OSSC Pros together. Expensive sure, but would still be cheaper than many of the video wall controllers out there.
OSSC Forums - http://www.videogameperfection.com/forums
Please check the Wiki before posting about Morph, OSSC, XRGB Mini or XRGB3 - http://junkerhq.net/xrgb/index.php/Main_Page
User avatar
6t8k
Posts: 496
Joined: Wed Aug 14, 2019 2:44 pm

Re: OSSC Pro

Post by 6t8k »

If fit with a video compression IP and a little bit of plumbing, the OSSC Pro could also function as a recording device (SD card) or live streaming device (when coupled with an Ethernet module via GPIO).

There's this: [1] [2] (was e.g. used here)
But H.264/MPEG-4 AVC is patented and not royality-free, with some specific exceptions: license terms. I'm not sure to what extent that could hinder its use, I'm no lawyer :P

VP8/9 is completely open and royality free (as long as the user does not engage in patent litigations).
Hardware encoders: [1] [2].
But these are not optimized for FPGA use.

The ingenious AV1 codec is gaining momentum now, but I assume sensible configurations are at some point going to be too resource-intensive for the Pro.
User avatar
Jademalo
Posts: 233
Joined: Tue Apr 01, 2014 6:50 pm

Re: OSSC Pro

Post by Jademalo »

Hey marqs, really looking forward to this!

Quick question about the TOSLINK S/PDIF connector - would it be possible to allow use of that as both an input and an output with a menu option, or would that require a different hardware setup?
My current capture card is a Vision E1S, which doesn't do audio. Due to ground loops and other issues, I capture my audio via toslink. If that port can be used as an optical S/PDIF output, then I can just run that directly from the OSSC to my audio interface, saving a wall socket as well as getting rid of an HDMI audio extractor in my setup.

Thanks!
Tazz
Posts: 5
Joined: Sun Feb 16, 2020 2:01 pm

Re: OSSC Pro

Post by Tazz »

Component inside the connector is different being a toslink emmiter or receptor.
nmalinoski
Posts: 1974
Joined: Wed Jul 19, 2017 1:52 pm

Re: OSSC Pro

Post by nmalinoski »

Tazz wrote:Component inside the connector is different being a toslink emmiter or receptor.
I think a slightly-more-complex design with TOSLINK inputs for AV1, AV2, and AV3 and one TOSLINK output would be a welcome change for those of us who use TOSLINK for digital audio; however, there's maybe half a dozen of us that would get any use out of it.

I haven't seen many details on the capability of the expansion port--would that allow for S/PDIF I/O? If discrete digital audio inputs and an output doesn't make it onto the board, but the expansion port allows S/PDIF input and output, I would think it very feasible for someone to design and build a TOSLINK I/O module that provided another two [assignable] inputs, plus an output. Once something like that is built and supported in the firmware, I would think usage would only be a matter of connecting the module and assigning which audio inputs correspond to which video inputs.
User avatar
Jademalo
Posts: 233
Joined: Tue Apr 01, 2014 6:50 pm

Re: OSSC Pro

Post by Jademalo »

If it's not doable in software, then I'd definitely be interested in a TOSLINK addon board.
User avatar
marqs
Posts: 1034
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: OSSC Pro

Post by marqs »

A few pics of the advanced video digitizer add-on for DE10-Nano / DE2-115 dev boards. The PCB houses ISL51002, Si5351C and PCM1808 chips plus optional IR receiver and character display (for DE10-Nano). I have a couple extra non-assembled PCBs available which I can send out if there are devs interested in building & testing one of these. Schematics and code will be uploaded to github soon as well.

Image Image
sofakng
Posts: 218
Joined: Fri Sep 02, 2016 1:30 am

Re: OSSC Pro

Post by sofakng »

I’m not a developer (well, not FPGA anyways) but I have an extra DE10 Nano and a bunch of consoles I can test if you’re interested. (and I can solder SMD)
Papercut
Posts: 1
Joined: Thu Apr 05, 2018 11:53 am

Re: OSSC Pro

Post by Papercut »

H6rdc0re wrote:Will the OSSC Pro allow for automatic switching between optimized modes in a single profile? So for example with the Saturn automatically switching between 320x224p, 352x224p and 704x408i. Similar to the Mega SG switching between 256x224p and 320x224p games on the fly.

This would be an awesome feature and puts the Pro in OSSC Pro.
Signing in just to say, this would be a massive improvement for mode switching video sources like the mega drive.

I'm imagining some way of associating a specific optimised mode with the current video input that's being displayed, and then automatically switching to that optimised mode for that OSSC profile and that video input signature in future.

Combine something like that with adaptive line multiplier or scaler processing modes and you'd have a fantastic solution for the Mega Drive! :)
RGB0b
Posts: 543
Joined: Wed Dec 05, 2012 1:52 pm

Re: OSSC Pro

Post by RGB0b »

The most ideal scenario would be to have the OSSC Pro pre-programmed with all the optimal timings people have been working on; Basically, import all the FBX profiles, then have an "auto detect" mode where the OSSC auto-detects each console and resolution. If it doesn't recognize a signal, it should default to a "generic" mode and people could either use it like that, or set it to "manual mode" and program it themselves.

I'm not even sure if that's possible, but arcade board optimal timings can be pulled from MAME and we can continue to use an oscilloscope and a test pattern to get the exact timings for consoles. With the help of the community, we might be able to have a pretty in-depth archive of all the timings we'd need. It's be a lot of work at first, but...assuming auto-detect is possible...it would eventually result in a firmware update that makes the OSSC pro both "plug and play" AND have expert-level timings. We'd just need to figure out what to do about setting phase, as that'll always be different...
sofakng
Posts: 218
Joined: Fri Sep 02, 2016 1:30 am

Re: OSSC Pro

Post by sofakng »

What’s the difference between using specific timing profiles instead of a generic one? Better picture quality?
User avatar
Jademalo
Posts: 233
Joined: Tue Apr 01, 2014 6:50 pm

Re: OSSC Pro

Post by Jademalo »

retrorgb wrote:The most ideal scenario would be to have the OSSC Pro pre-programmed with all the optimal timings people have been working on; Basically, import all the FBX profiles, then have an "auto detect" mode where the OSSC auto-detects each console and resolution. If it doesn't recognize a signal, it should default to a "generic" mode and people could either use it like that, or set it to "manual mode" and program it themselves.

I'm not even sure if that's possible, but arcade board optimal timings can be pulled from MAME and we can continue to use an oscilloscope and a test pattern to get the exact timings for consoles. With the help of the community, we might be able to have a pretty in-depth archive of all the timings we'd need. It's be a lot of work at first, but...assuming auto-detect is possible...it would eventually result in a firmware update that makes the OSSC pro both "plug and play" AND have expert-level timings. We'd just need to figure out what to do about setting phase, as that'll always be different...
I've put in a lot of work on the capture side of things (especially when it comes to aspect correction), and from experience setting up various people's captures - everyone's setup is different enough that unless there was substantial logic to detect a huge manner of things, it probably wouldn't be worth it for the average user. Things like H and V offsets, Sampling Phase, various filters depending on the cables, etc. One other main thing generic profiles don't do well is colour gain and offset. 99% of people I've seen using an OSSC with a good profile have extremely inaccurate colour, because that is unique to your specific console, cables, and setup generally.
The generic profiles work well for giving a decently correct aspected image, and really should be good enough for people who will just buy the thing and plug it in.

One of the biggest issues with pixel accurate sampling is then having the output be the correct aspect, since it needs to be calculated with the specific dot clock of the console. If square pixels are your jam that's fine, but I can't imagine that would please everyone. You can't just slap a 4:3 scaler on the image and call it a day though.
Square pixels are however fantastic for capture, since your base image will be extremely clean and sharp, giving you a good base to then scale to the correct aspect.

I'd also love to see something that switches for Mega Drive between it's two modes, but again that comes with a caveat - the ideal output resolution for capture from the OSSC for the two modes is different at a lot of the resolutions. 320 mode tends to be 640x480, and 256 mode (with 8:7 correction for square pixels) tends to be 768x480.


If the Pro had a way to autodetect the required sample rate, sampling phase and h/v offset, as well as an option to scale that image back to the correct aspect, then absolutely that would be the best choice. I think those profiles are being misunderstood and misused sometimes though, and I don't think that's really the best of ideas for a default mode in the OSSC.
If it could do that then holy MOLY it would save me days, lol. The amount of time I've spent on teamviewer with people setting up consoles one by one and inevitably coming across at least one thing that's weird is a bit silly =p
NJRoadfan
Posts: 154
Joined: Wed Oct 07, 2015 12:01 am

Re: OSSC Pro

Post by NJRoadfan »

retrorgb wrote:The most ideal scenario would be to have the OSSC Pro pre-programmed with all the optimal timings people have been working on; Basically, import all the FBX profiles, then have an "auto detect" mode where the OSSC auto-detects each console and resolution. If it doesn't recognize a signal, it should default to a "generic" mode and people could either use it like that, or set it to "manual mode" and program it themselves.
Is this how computer monitors do things? Having an "auto adjust" button that automatically determines sampling phase, etc. like monitors have would be nice.

Such auto-adjust tools exist for capture cards, but they require the source to display a calibration image.

http://retronn.de/imports/dvi2pcie_align_tool.html
User avatar
Josh128
Posts: 2123
Joined: Thu Jan 16, 2014 9:01 am

Re: OSSC Pro

Post by Josh128 »

Hey Marqs, any rough timeline on when you might do the initial release?
User avatar
DirkSwizzler
Posts: 548
Joined: Fri Apr 28, 2017 8:23 pm
Location: Bellevue, Washington, USA
Contact:

Re: OSSC Pro

Post by DirkSwizzler »

sofakng wrote:I’m not a developer (well, not FPGA anyways) but I have an extra DE10 Nano and a bunch of consoles I can test if you’re interested. (and I can solder SMD)
Same. So if anyone considers making a run of the DE10 addon board for sale. I'm definitely interested.

I'm chomping at the bit for SPDIF input and adaptive scaling.

I have a situation that necessitates a 480p window in the upper left of a 1080p frame.
User avatar
6t8k
Posts: 496
Joined: Wed Aug 14, 2019 2:44 pm

Re: OSSC Pro

Post by 6t8k »

retrorgb wrote:arcade board optimal timings can be pulled from MAME
These are, so far, often inaccurate.

The ISL51002 can already find a local optimum for sampling phase, which you mentioned, automatically on hardware-level.

Following NJRoadfan's note, when taking other parameters into consideration for automatic adjustment, for better results a test image is indispensable, which effectively only people with flashcarts/ODEs will be able to make use of. These results would still not be theoretically optimal; the variables are too numerous/fine-grained while return on effort behaves asymptotic – setting aside the consideration that due to personal preferences a teleology like this is moot in practice.

In line with what Jademalo pointed out, I do concede that pre-defined source specific profiles can help providing better plug & play results than simply defaulting to a generic mode, but I'd greatly prefer their inclusion in the firmware be made optional, and profiles be chosen manually by the user. This would save us from a whole lot of additional complexity for (arguably) little gain and notably benefit efficiency (KISS principle).
User avatar
marqs
Posts: 1034
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: OSSC Pro

Post by marqs »

6t8k wrote:
retrorgb wrote:arcade board optimal timings can be pulled from MAME
These are, so far, often inaccurate.

The ISL51002 can already find a local optimum for sampling phase, which you mentioned, automatically on hardware-level.

Following NJRoadfan's note, when taking other parameters into consideration for automatic adjustment, for better results a test image is indispensable, which effectively only people with flashcarts/ODEs will be able to make use of. These results would still not be theoretically optimal; the variables are too numerous/fine-grained while return on effort behaves asymptotic – setting aside the consideration that due to personal preferences a teleology like this is moot in practice.

In line with what Jademalo pointed out, I do concede that pre-defined source specific profiles can help providing better plug & play results than simply defaulting to a generic mode, but I'd greatly prefer their inclusion in the firmware be made optional, and profiles be chosen manually by the user. This would save us from a whole lot of additional complexity for (arguably) little gain and notably benefit efficiency (KISS principle).
Low-res content in optimized modes is still internally sampled using a multiple of given samplerate (to support fractional samplerates and pass minimum sampling clock requirement) so I'm not sure how well the auto-adjust function will work with that. However, ISL51002 is much more forgiving with regards to getting phase exactly right as the PLL has very minimal jitter.
nmalinoski wrote:
H6rdc0re wrote:Will the OSSC Pro allow for automatic switching between optimized modes in a single profile? So for example with the Saturn automatically switching between 320x224p, 352x224p and 704x408i. Similar to the Mega SG switching between 256x224p and 320x224p games on the fly.

This would be an awesome feature and puts the Pro in OSSC Pro.
How would this work, though? As I understand it, the MegaSG's scaler, being part of the MegaSG itself, has direct access to all the information it needs to perform that switching, like pixel clock; but the OSSC [Pro], being downstream of analogue-encoded video (which does not contain pixel clock info), doesn't.
The problem with distinguishing between different horizontal resolutions is that line length is often identical and sync is not interrupted while switching between these modes. That means that even if the system would start in a generic mode, detect horizontal resolution using heuristics and switch to suitable optimal mode, it'd be unable to detect any subsequent input mode changes.
Josh128 wrote:Hey Marqs, any rough timeline on when you might do the initial release?
Latter half of this year - I can't give any more accurate estimate as there are too many open things still.
User avatar
6t8k
Posts: 496
Joined: Wed Aug 14, 2019 2:44 pm

Re: OSSC Pro

Post by 6t8k »

marqs wrote:Low-res content in optimized modes is still internally sampled using a multiple of given samplerate (to support fractional samplerates and pass minimum sampling clock requirement) so I'm not sure how well the auto-adjust function will work with that. However, ISL51002 is much more forgiving with regards to getting phase exactly right as the PLL has very minimal jitter.
I see, was daringly assuming the automatic phase adjustment feature could in many cases literally abolish the manual phase adjustment we all know of. Maybe it even can, just with slightly degraded results compared to results achievable via visual judgement+manual entry.
In any case, better than any speculation, tests will have to show how well this performs :)
User avatar
Konsolkongen
Posts: 2309
Joined: Fri May 16, 2008 8:28 pm
Location: Denmark

Re: OSSC Pro

Post by Konsolkongen »

Will the OSSC Pro support multichannel LPCM on the HDMI input? Fudoh pitched the idea of a "rescaler"-option that could potentially correct the pixelshimmer of most modern 2D re-releases. Not sure if that's really possible, but it would be a killer feature for sure as I hate non-integer scaling with a passion, and I could see the case for my Switch and PS4 being connected to the OSSC Pro permanently for this reason, but probably not if it meant no surround sound.
User avatar
orange808
Posts: 3196
Joined: Sat Aug 20, 2016 5:43 am

Re: OSSC Pro

Post by orange808 »

Konsolkongen wrote:Will the OSSC Pro support multichannel LPCM on the HDMI input? Fudoh pitched the idea of a "rescaler"-option that could potentially correct the pixelshimmer of most modern 2D re-releases. Not sure if that's really possible, but it would be a killer feature for sure as I hate non-integer scaling with a passion, and I could see the case for my Switch and PS4 being connected to the OSSC Pro permanently for this reason, but probably not if it meant no surround sound.
I think most of us extract audio at the switch or use a splitter to avoid those issues.
We apologise for the inconvenience
User avatar
Konsolkongen
Posts: 2309
Joined: Fri May 16, 2008 8:28 pm
Location: Denmark

Re: OSSC Pro

Post by Konsolkongen »

Extracting LPCM is not necessarily super straightforward. I understand why you think a HDMI splitter should work, but most of them will only work if both connected output devices supports the same resolutions and audio. So you can't just split a 4kHDR HDMI signal from a PS4 Pro to an HDMI 2.0 TV and the other to an older AVR with HDMI 1.4 and expect to get LPCM audio and 4kHDR that way. The splitter would just default to 1.4.

There are more advanced products that do offer this, like the HD Fury AVR Key 18gbps:
https://www.hdfury.com/product/avr-key/

Of course if the OSSC Pro reports that it's HDMI 2.0 then I believe a switch should work, though I would still much rather have it run through the OSSC for simplicity's sake :)
nmalinoski
Posts: 1974
Joined: Wed Jul 19, 2017 1:52 pm

Re: OSSC Pro

Post by nmalinoski »

orange808 wrote:
Konsolkongen wrote:Will the OSSC Pro support multichannel LPCM on the HDMI input? Fudoh pitched the idea of a "rescaler"-option that could potentially correct the pixelshimmer of most modern 2D re-releases. Not sure if that's really possible, but it would be a killer feature for sure as I hate non-integer scaling with a passion, and I could see the case for my Switch and PS4 being connected to the OSSC Pro permanently for this reason, but probably not if it meant no surround sound.
I think most of us extract audio at the switch or use a splitter to avoid those issues.
At the moment, the consoles I use surround from are one of HDMI-native, S/PDIF-native (which I route around the OSSC to my AVR, only because the OSSC doesn't support it), or something like the PS2, which has games that use Dolby ProLogic, which means I need to manually switch the mode on my AVR to get surround. I don't use an extractor anywhere, and I'd rather not, especially with an OSSC Pro.

If the OSSC Pro is just HDMI 1.4 on both input and output, fine; but then it should be able to pass-through anything that that spec supports, including multi-channel audio.
ldeveraux
Posts: 1113
Joined: Thu Mar 01, 2018 10:20 pm

Re: OSSC Pro

Post by ldeveraux »

What benefit (video or audio) would the OSSC Pro provide for a device that natively outputs >1080p via HDMI? My impression was that there was no benefit, but simply makes it much easier to tie all generations of systems together for one simple connection. Whether that then heads to an audio splitter like mine is another story.
User avatar
Konsolkongen
Posts: 2309
Joined: Fri May 16, 2008 8:28 pm
Location: Denmark

Re: OSSC Pro

Post by Konsolkongen »

I gave an example of how this could be beneficial just a few posts ago.

Examples of games that look more or less like complete ass because of improper scaling: Psikyo Collections, Vasara Collection, Blazing Chrome, Guilty Gear 20th Anniversary Pack, Capcom Belt Action Collection, Collection of Mana (unstretched), Mega Man Legacy Collection (some of the games are okay IIRC), Windjammers, Azure Striker Gunvolt: Striker Pack and many many more.

Furthermore the mini consoles also suffer from this to some degree. The NES Classic in 4:3 mode, Mega Drive mini with 256x224 titles and the Capcom Home Arcade Stick no matter what screen mode you choose.

The number of re-releases that are scaled poorly far outnumber the ones that are done properly. It's as simple as scaling the image by an integer, rather than stretching it to flll the entire screen, and in some instances you need horisontal interpolation (Capcom CPS, and NES/SNES) as these games do not use square pixels, this is slightly more advanced but nothing that should be too hard.
https://github.com/blzla/Sharp-Bilinear-Shaders
User avatar
marqs
Posts: 1034
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: OSSC Pro

Post by marqs »

ADV7611 has only one audio data output pin so I think it only supports 2ch LPCM and SPDIF, unfortunately. I've also connected just one I2S line to ADV7513 as I got short on FPGA pins, but it can internally copy the stream to other channels so multi-channel stereo (in 4.0, 5.1 and 7.1 modes) is supported.
User avatar
Konsolkongen
Posts: 2309
Joined: Fri May 16, 2008 8:28 pm
Location: Denmark

Re: OSSC Pro

Post by Konsolkongen »

Okay, thank you for answering my question :)

I'll figure something else out eventually.
nmalinoski
Posts: 1974
Joined: Wed Jul 19, 2017 1:52 pm

Re: OSSC Pro

Post by nmalinoski »

marqs wrote:ADV7611 has only one audio data output pin so I think it only supports 2ch LPCM and SPDIF, unfortunately. I've also connected just one I2S line to ADV7513 as I got short on FPGA pins, but it can internally copy the stream to other channels so multi-channel stereo (in 4.0, 5.1 and 7.1 modes) is supported.
So it can detect and convert stuff like ProLogic into discrete channels?
User avatar
marqs
Posts: 1034
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: OSSC Pro

Post by marqs »

nmalinoski wrote:
marqs wrote:ADV7611 has only one audio data output pin so I think it only supports 2ch LPCM and SPDIF, unfortunately. I've also connected just one I2S line to ADV7513 as I got short on FPGA pins, but it can internally copy the stream to other channels so multi-channel stereo (in 4.0, 5.1 and 7.1 modes) is supported.
So it can detect and convert stuff like ProLogic into discrete channels?
I meant replicating stereo to side/back speakers. AVRs can of course usually do that as well, but I've seen enough bad implementations over the years so it's good to have an option to do that on input side as well. With games supporting Dolby Surround, HDMI audio output should be set to 2ch stereo and receiver in Pro Logic decoding mode.
Post Reply