PDA

View Full Version : Is there any way to remove Mpeg2 blocking?


morsa
11th August 2005, 22:34
I mean, I've been using a Sony Z1 and although several times it looks quite good, whenever you shoot anything with random changes (like moving water, a lake, a river, etc) blocking becomes terribly noticeable!!!
I had some success removing some percentage of them, but the artifact still remains noticeable.....
Any help welcome....

mg262
11th August 2005, 22:53
Lots of ways, including one that comes with dgmpgdec (check its documentation); you can find more by searching for "deblocking"...

morsa
12th August 2005, 00:33
Yes, I know.I used dgmpgdec for open the file and perform some deblocking...
Anyway the blocking is still there...
So could you give me further information in your coming reply?

Pookie
12th August 2005, 02:13
search for Blockbuster and Mdeblock - there are many more.

vhelp
12th August 2005, 04:22
Can you give a pic demonstration ?

Curious,
-vhelp

Video Dude
12th August 2005, 06:06
BlockBuster is a filter that adds Gaussian Noise. The noise is used to help prevent blocks during encoding, not get rid of blocks that are already there.


I have had some good results with SmoothD, but it is still in early development.
http://forum.doom9.org/showthread.php?t=84355

Newer versions of FFDShow install an AviSynth filter, ffavisynth.
http://forum.doom9.org/showthread.php?s=&threadid=85447
So you can use FFDShow's post processors on your video. I like Nic's deblocker. SPP will remove any block, but it will also blur your video greatly and is very slow.


There will be a trade off between blocks and blurring.

Chainmax
12th August 2005, 06:48
I use either Deblock(quant=x) from DGDecode.dll (http://forum.doom9.org/showthread.php?t=97534) or FunkyDeblock() (http://forum.doom9.org/showthread.php?t=72431&highlight=funkydeblock). Both are awesome deblockers. Be sure to try both, some sources are better handled by the former, some by the latter.

I was also recommended Camembert (http://mf.onthanet.com/forum/index.php?PHPSESSID=c708f49c6414adf8f064d2fbc537db0f&topic=187.0) a couple of times. I only tried it once without good results, but then again the material I tried it on is extremely crappy. Give it a try as well.

mg262
12th August 2005, 11:15
So could you give me further information in your coming reply?Those who have replied know more about this than I do... the main thing is that if you post a sample of the unprocessed vob file, you will probably get more concrete help... it's hard to guess what the particular problem is without it.

Myself, I have very rarely had to use deblocking (nearly all my source being ~9000 kbps DVDs). I've tried dgmpgdec in an experiment and it worked extremely well; and on the whole I would tend to stick with it (varying parameters) where possible because in my view there is a very natural approach to take to deblocking and that requires access to the MPEG-2 coefficients (although I am not certain of what method is actually used by the package). But it sounds like you may need something else...

I use either Deblock(quant=x) from DGDecode.dll (http://forum.doom9.org/showthread.php?t=97534) or ...but you use the deblocking inside MPEG2source when it's a DVD source?

Mug Funky
12th August 2005, 15:01
mpeg2source("blah.d2v",cpu=4) can pretty much be a default.

even if the source doesn't show visible blocks, re-encoding will most likely amplify them, possibly into visibility.

also you'll get a compression gain from the slight smoothing.

although, when the quantizers get really high (like freak b-frames on high-motion bitrate spikes), dgdecode's deblocking may not be enough - it'll simply see the blocks as edges, because they are so severe that to deblock them would be to deblock the good bits of the image, and turn the whole picture into slush. best thing to do in these cases is find a better source, or turn to homebrew solutions (funkydeblock is old as hell, but still works pretty well by all accounts. it'll get rid of "GOP blinking" when you've got a very low bitrate source encoded with closed-GOP). motion-compensation could be a useful trick for a deblocker, but i'm not sure if meaningful motion can be extracted when the source is in the extremes of blocking.

Chainmax
12th August 2005, 19:06
...but you use the deblocking inside MPEG2source when it's a DVD source?

I never used the MPEG2Source builtin deblocker as FunkyDeblock always gives me superb results. In any case, I don't make distinctions between DVD source or AVI source. Like I said, some sources seem to be better handled by FunkyDeblock, others by DGDecode's Deblock, so I usually try the former first and if it doesn't remove all the blocks then I switch to the latter.

Mug Funky
13th August 2005, 09:02
hehe... funkydeblock uses DGdecode/mpeg2source's blind post processing to do the deblocking part. the only difference is the input is "highpassed" first and the deblocking only applied to the higher frequencies, while a temporal smooth is put on the low frequencies to get rid of blinking/pumping from closed-GOP encodes.

to be honest, i don't even know why it works differently to the internal deblocking of mpeg2source, except that it doesn't have access to the per-frame (per block?) quantisers in the original m2v. i guess it makes block-edges more visible to blindpp (is that an oxymoron? being visible to something blind?) so it can work more effectively. though if your source is clean enough (like an mpeg-2 that's above around 4000kbps and comes from a decent mpeg-2 encoder), then cpu=4 should perform faster and more accurately. i'd certainly try cpu=4 before i try funkydeblock :)

morsa
14th August 2005, 03:51
well, thing is that the mpeg2 encoder from the new Sony HDV cameras should be really crap.I say this because every sequence you have water gets a block fest.