Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
24th June 2009, 09:38 | #1 | Link |
Registered User
Join Date: Jun 2009
Posts: 1
|
H.264 scaled decoding?
Does anybody know if is it possible to improve H.264 decoding performance in simmilar manner than JPEG? I mean scaling during decode (for example to 1/8), which speeds up at least two times on IJL. Is there any decoder that supports anything like this?
Or is there any other mean of making this process faster (other than I-Frame decoding only), even with lower quality? Lets say it is Baseline H.264. |
25th June 2009, 21:09 | #2 | Link |
Fighting spam with a fish
Join Date: Sep 2005
Posts: 2,714
|
One way that I know of is to turn in-loop deblocking off.
__________________
FAQs:Bond's AVC/H.264 FAQ Site:Adubvideo Zsmooth - Cross-platform smoothing for Vapoursynth |
25th June 2009, 21:21 | #3 | Link |
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,251
|
It should be noted that turning off in-loop deblocking for a H.264 stream that was encoded with in-loop deblocking enabled, will not only cause more visible blocks. It will cause corrupted output! That's because deblocking is part of H.264 encoding process. P-Frames and B-Frames reference deblocked frames. Skipping the deblocking causes "wrong" references frames, so the error sums up from frame to frame...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 25th June 2009 at 21:27. |
30th June 2009, 15:46 | #5 | Link | |
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,251
|
Quote:
I think any picture, referenced or not, will be displayed at least. So you can't simply "discard" any pictures. That would result in missing pictures and produce jumpy output! What you can do: Skip the deblocking part on non-referenced pictures (all b-frames, unless b-pyramid is used).
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 30th June 2009 at 16:58. |
|
1st July 2009, 07:40 | #6 | Link | |
Video compressionist
Join Date: Jun 2009
Location: Israel
Posts: 126
|
Quote:
I suggested to discard pictures which are not used for reference despite these pictures are displayed. Thus the decoding process can be accelerated. I think this is a popular action implemented in many decoders to cope with performance peaks. Frankly speaking a stream can contain dangling fields which some decoders do not display. |
|
1st July 2009, 15:18 | #7 | Link |
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,251
|
So you want to "discard" pictures that are not used for reference. But you still want to display these pictures
How do you want to display a picture that has been discarded ??? As said in my previous post: I believe the only the thing you can do is skipping the deblocking on non-referenced frames, but not discard those frames entirely! Furthermore I think skipping the deblocking on non-referenced frames won't give that much speed-up. The only frames that aren't referenced are b-frames. And even that is only the case with b-pyramid disabled. With b-pyramid b-frames may be referenced by other b-frames as well. Last but not least deblocking is not the most compute-intensive task. CABAC decoding is, given that CABAC is used...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 1st July 2009 at 15:27. |
1st July 2009, 15:42 | #8 | Link | ||
Registered User
Join Date: Mar 2005
Location: Finland
Posts: 2,641
|
Quote:
Edit: By the way, libavcodec already does have this option. Try -lavdopts skipframe=nonref with MPlayer. Quote:
Last edited by nm; 1st July 2009 at 15:50. |
||
1st July 2009, 15:59 | #9 | Link | ||
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,251
|
Quote:
Quote:
And then the bitrate probably is high enough to make CABAC the performance bottleneck...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ |
||
2nd July 2009, 11:03 | #10 | Link |
Video compressionist
Join Date: Jun 2009
Location: Israel
Posts: 126
|
Nm is right. I suggested to discard non-reference pictures and consequently don't display them.
Before discarding of pictures a decoder should care the very particular case when in a single complementary field pair one field is used for reference while another not. Indeed, in such case how the frame can be displayed if one of the two fields is absent. As usual a removal of non-reference frames causes jerkiness artifacts. Although in case of significant motion or a scene cut the removal several frames is not noticeable. |
Tags |
decoding, scaling, speed |
Thread Tools | Search this Thread |
Display Modes | |
|
|