It is currently 21 Jul 2018, 08:32




 Page 22 of 22 [ 428 posts ]  Go to page Previous  1 ... 18, 19, 20, 21, 22
Author Message
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 28 Jun 2018, 14:06 
Honest fan
Honest fan
User avatar

Joined: 11 Sep 2017, 14:24
Posts: 81
Location: Sweden
Has thanked: 1 time
Been thanked: 33 times
Glad you like the new revision :) I've tested the board up to 75MSPS now and it has no problem moving the bandwidth; so I pretty certain the design could be re-purposed for other things. You should be able to use just the DE0-Nano and USB 3 if you don't need ADC - however; the front-end design may be non-trivial if you need it to work with anything other than 3.3V.
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 30 Jun 2018, 14:22 
Shows curiousity
Shows curiousity
User avatar

Joined: 18 Jul 2016, 05:18
Posts: 26
Location: Australia
Has thanked: 0 time
Been thanked: 7 times
Ok, I've had this on the shelf for the past month, but it's time to get back to it. I'm determined to solve this phase lock problem I have with the colour burst. Simoni, a month or so ago you said this:
simoni wrote:
Nemesis wrote:
I'm going to keep hammering away at this, but I believe capturing at a higher sample rate would help a lot.


This can't be the case ;) Laserdisc players can do it with half the sampling speed, vis-à-vis, so can you :) I looked into this quite a bit and came up with the conclusion that the only sure-fire way was to do it is by using a ADPLL implementation (All Digital Phase Locked Loop). When I looked at the best way to achieve a constant sub-sample timing measurement (which was resistant to error and jitter), everything pointed to this. Trying to do it in a 'deterministic' fashion (like ld-decode does at the moment) will never get the consistent results that a PLL would. Trouble is, I couldn't for the life of me figure out how to code it. I even paid for a copy of Phase Locked Loops by Roland E. Best and just ended up in a flat-spin around the maths involved. DSP coding isn't really my forte! (I can do FPGA, embedded C and desktop C++ though, so I won't beat myself up over it ;) )

You seem to have a better grip of signal processing software than myself though; so perhaps my insight will give you an idea (even if I'm horribly wrong!).

I've done some reading on phase locked loops, and to be honest, I don't think what I'm doing is too far off the mark, but I'm realising I may be making some incorrect assumptions about the LaserDisk signals themselves and making things harder for myself. I notice the concept of a PLL is to take a long sampling of the input data over time, and use that information to estimate the true frequency and phase. I thought I couldn't do that accurately between lines, because I was worried about TBC (time base correction). Right now, my impression of the analog input signal I'm getting is that it could be randomly stretched or compressed anywhere, meaning I need to find the precise line start and end times during TBC, and pull them back into alignment. The most accurate way I've found so far to perform TBC is actually to use the phase of the colour burst signal as a guide. I use the hsync rise and fall to get close, but I refine it by comparing the colour burst sync between lines. When I added that step, I seemed to get much better results. We only get about 9 full colour burst wave oscillations per line though, and I've found the first and last 1-2 of those to be questionable at best on most signals I've observed. That's simply not enough samples to get an accurate phase lock from a single line. It's close, but not close enough. If I can't trust I have perfect sync between lines though, as my signal could have been randomly compressed or stretched, how can I use the colour burst samples from the following line to correct my phase lock? I could just ignore this problem and try and pull in samples across the entire field, or even successive fields, to error correct my colour burst frequency and phase, but this seems inherently flawed, as I don't expect my TBC can possibly be more accurate than my phase lock. I've estimated the line sync based on the estimated colour burst frequency and phase already, but if my initial estimated phase lock to the colour burst is off, how can I now estimate my colour burst frequency over lines, when I know I synced the lines based on my initially estimated phase? It kinda feels like a chicken and egg problem. I can't accurately sync my lines without a phase lock, and I can't get a phase lock without accurately synced lines.

Am I way off base here? is there something different I should be doing about TBC, or am I wrong about my assumptions on how the analog input stream can be distorted? The colour burst signal is potentially distorted, isn't it? I know there's no way known the real hardware can phase lock the colour burst from a single line, so it must be possible to use successive lines and frames somehow. If I could trust the input signal was in perfect time to start with, I could just extrapolate across many lines to find the frequency and phase that best fits the curve running between them, but where does TBC fit in? How can I get "perfect" TBC, before phase locking the colour burst? Any suggestions, or light reading material I could refer to?
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 03 Jul 2018, 06:56 
Honest fan
Honest fan
User avatar

Joined: 11 Sep 2017, 14:24
Posts: 81
Location: Sweden
Has thanked: 1 time
Been thanked: 33 times
The PLL is used because otherwise you are assuming a perfect system. In an ideal world you'd be expecting a video sync every X ms and any variance from the expected delay is 'jitter'. In reality, there is no guarantee that the player's mechanics are that accurate. X-1 might be right for one player/disc and X+2 for the next due to the tolerances on the RPM control of the spindle motor (and the variance from that is the actual jitter). It's important to follow the 'natural' timing of the disc if you loose the sync signal otherwise you will be compensating for a timing which is arbitrary rather than the actual expected sync delay for the disc. In my mind this is where a PLL is advantageous as it will continue to output the correct sync timing for the disc even in the event of sync loss (and such output is specific to the disc and player environment at the time of loss).

I'm just guessing though :) Happycube is probably the right person to provide advice around this. I know he's also working on newer TBC code that is extremely tolerant even to badly rotted discs.
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 04 Jul 2018, 18:01 
Hardcore fan
Hardcore fan
User avatar

Joined: 18 Apr 2012, 18:02
Posts: 1444
Location: United States
Has thanked: 21 times
Been thanked: 10 times
I use multiple types of low pass filtering to perform TBC:

- rough sync: A .5mhz LPF is itself clipped to true/false based on signal level then low passed. From this a clear pattern of both horizontal and vertical sync can be observed, and rough line sync can be achieved.
- finer sync: The .5mhz LPF is then looked at directly to determine where the line sync ends. This is generally quite accurate.
- color burst: This isn't working right yet on really bad disks (which might be beyond hope really...), but I'm running the burst through an IIR-type low pass filter, and computing phase based off the strongest bit of that filter.

And if spikes outside of the expected range are detected, it gives up and uses the previous lines' length and hopes for the best...

I've got a new notebook at https://github.com/happycube/ld-decode/ ... -dev.ipynb that uses all this, and I'll slowly add comments and clean it up hopefully. (There are a few glitches to fix with my GGV1001 12" reference disk captures for instance...)

The latest code also has phase compensation for the DD 3.0 board, which improves sharpness and color burst level and quality considerably. I'm going to have to move to 8x FSC comb filter processing (double the horizontal # of pixels used in digital TBC players) to get the full benefit of that ;)
_________________
Happycube Labs: Where the past is being re-made, today. [meep!]
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 10 Jul 2018, 17:37 
Third post and above
Third post and above
User avatar

Joined: 06 Feb 2011, 05:47
Posts: 5
Location: United States
Has thanked: 0 time
Been thanked: 0 time
Wow, I’ve been away from this thread for about a year due to a dead LD player. I was just going to check in to see if there had been any updates... :shock:

Simon, I’m curious if you’re PLayer integrated capture setup might work with any other industrial players. I have an LD-V8000 that I’d like to use.
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 10 Jul 2018, 17:48 
Shows curiousity
Shows curiousity
User avatar

Joined: 20 Jan 2010, 23:33
Posts: 20
Location: United Kingdom
Has thanked: 11 times
Been thanked: 0 time
Hi schorman,

As long as it uses the same serial protocol as the LD-V4300D then it should be OK. I know Happycube is using a different player and simon fixed some issues with Baud rate being different and some small changes to fix a few issues.

If you can I would join our facebook group as there is more of a running commentary with sample video frames for review and updated more often than here.
https://www.facebook.com/groups/2070493199906024/

Regards

Ian
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 11 Jul 2018, 18:58 
Third post and above
Third post and above
User avatar

Joined: 06 Feb 2011, 05:47
Posts: 5
Location: United States
Has thanked: 0 time
Been thanked: 0 time
Thanks for the suggestion. I’ve been off of FB for over two years and this is the first even remotely good reason I’ve found for rejoining. I’m just trying to work up the courage to try soldering my own 3_0 board at this point.
Offline
 Profile  
 
 Post subject: Re: (WIP) Laserdisc software image decoder from raw signal
PostPosted: 19 Jul 2018, 20:30 
Second post
Second post
User avatar

Joined: 26 May 2017, 16:08
Posts: 2
Location: France
Has thanked: 0 time
Been thanked: 0 time
Topic subscribed and bookmarked.
Offline
 Profile  
 
Display posts from previous:  Sort by  
 Page 22 of 22 [ 428 posts ]  Go to page Previous  1 ... 18, 19, 20, 21, 22


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to: