seeker010
25th July 2014, 22:36
been a lurker here for a while, but had a question that's been bugging me. hope the experts can weight in.
I have a Geforce 7300 go that supports the h264 mocomp acceleration level. Both WMP and the Modern UI Video app in windows 8 can take advantage of it (all modern ui apps actually).
What I've found is that when I encode 1 video using Adobe Premiere Elements (using the 64bit avisynth plugin) with the ipad target (haven't tried any other targets), the video plays back relatively artifact free.
However, if I use x264 (preset medium level 3.1 main), some frames have some corrupted blocks. If I use tune fastdecode, the corruption goes away, so I tried to toggle cabac, deblock, weightp and no-weightb individually to see with switch was responsible. I had thought it was the deblock parameter, but it was actually weightp. Even setting it to 1 does not remove the corruption. Only setting it to 0 (totally disabling it) helps 99%. combining weightp 0 and no-weightb gives me about as artifact free a picture as the Premiere encode.
When I check the Premiere encoded file using AVInaptic, it says weighted p frame prediction was enabled, but weighted b was not.
So my question is, is there a fundamental difference between how the 2 encoders handle weighted P frame prediction?
I know, geforce 7300 go is ancient, driver is bugged (e.g. bsod when trying to decode 1920x1080 wmv-hd, but works fine with anamorphic 1440x1080 wmvhd), I can use the lavfilter software decoder, I can just disable weightp, just stick using premiere, etc etc. I know all that, I'm just curious about the problem, or if there are some other combination of switches that allows a non zero value for weightp that fixes the corruption on decode.
I have a Geforce 7300 go that supports the h264 mocomp acceleration level. Both WMP and the Modern UI Video app in windows 8 can take advantage of it (all modern ui apps actually).
What I've found is that when I encode 1 video using Adobe Premiere Elements (using the 64bit avisynth plugin) with the ipad target (haven't tried any other targets), the video plays back relatively artifact free.
However, if I use x264 (preset medium level 3.1 main), some frames have some corrupted blocks. If I use tune fastdecode, the corruption goes away, so I tried to toggle cabac, deblock, weightp and no-weightb individually to see with switch was responsible. I had thought it was the deblock parameter, but it was actually weightp. Even setting it to 1 does not remove the corruption. Only setting it to 0 (totally disabling it) helps 99%. combining weightp 0 and no-weightb gives me about as artifact free a picture as the Premiere encode.
When I check the Premiere encoded file using AVInaptic, it says weighted p frame prediction was enabled, but weighted b was not.
So my question is, is there a fundamental difference between how the 2 encoders handle weighted P frame prediction?
I know, geforce 7300 go is ancient, driver is bugged (e.g. bsod when trying to decode 1920x1080 wmv-hd, but works fine with anamorphic 1440x1080 wmvhd), I can use the lavfilter software decoder, I can just disable weightp, just stick using premiere, etc etc. I know all that, I'm just curious about the problem, or if there are some other combination of switches that allows a non zero value for weightp that fixes the corruption on decode.