opieant
31st May 2004, 18:31
I've been experimenting with the HiCon32 demo and since it is related more to HDTV than anything on this forum, I felt it should be posted here. The program is available for download here. (http://www.hhi.fraunhofer.de/german/bs/HiCon/downloads.htm)
After performing many tests, it seems that this application discards frames from the source video without warning. This doesn't happen on all clips I've used however, just some. The source clips were in DV format (720x480 and 29.97FPS), the "Top Field First" option was unchecked (since the bottom is first), the "Source Is Interlaced" option was chosen, and the "Add Line On Top" option didn't matter. The output format also didn't seem to matter, however I tested using AVI format with Uncompressed RGB output, AVI format with DivX 5.1.0, AVI format with DivX 5.1.1, and the SLB format. The same frames were discarded in all cases.
Keeping in mind that the frame rate is doubled by the SDTV Deinterlacing filter, some of the results were:
10 Frames in, 20 Frames out (good)
100 Frames in, 167 Frames out (bad, 33 lost)
88 Frames in, 80 Frames out (very bad, 96 lost)
Tests were also done with some longer clips and the number of lost frames just increases. Even with the similar source clip "HHI - SDTV(30i) XviD.avi" from the HiCon32 web site, if it is processed in "Top Field First" mode, 50 frames go in and only 55 come out (so 45 lost). This makes me think that while my source material really is "bottom field first" that the program interprets certain transitions in the video as being incorrect relative to the general flow of motion and it is discarding those. This seems unlikely to be the problem with my clips however because the motion in the source video isn't jerking around in any manner that would confuse the program, and I'm always processing it in "bottom first" mode (after "top first" was tested and produced disgusting results of course).
Another theory is that it is discarding (without notice in the Report Log) some or all frames that appear to be identical to the previous frame. Based on the clip that had 88 frames in and only 80 out, this is far more likely to be what is happening. Looking at the interlaced 88-frame source, there are several frames that are nearly identical to the previous one, and since this is a clip of fast motion, they certainly seem to be duplicates and could be interpreted as such. On top of that, when the program extracts the two fields from each frame, the number of apparent duplicates doubles since each field will be used to construct a full frame in the output.
Based on all of this, I am wondering if anyone else has had similar experiences with this application, and if so, how could its tendency to discard frames be avoided? As another slightly less appealing option, does any program exist that could process the interlaced (as a source only) and deinterlaced (as a second source AND for output) material in a way that compares the frames between them and duplicates the most recent frame in the deinterlaced material until the interlaced source changes reaches a frame (or field) more similar to the next deinterlaced frame than the most recent deinterlcaed frame? I know this probably sounds like it could be terribly inaccurate, but since it could assume that the two sources are of the same thing, and because it could compare each of the fields in the interlaced source as separate frames (interpolated from 720x240 to 720x480), it seems like it could be quite feasible and accurate.
Thanks to anyone that took the time to read and consider what I've posted here, and hopefully someone will have a bit of advice to offer.
Greg F.
After performing many tests, it seems that this application discards frames from the source video without warning. This doesn't happen on all clips I've used however, just some. The source clips were in DV format (720x480 and 29.97FPS), the "Top Field First" option was unchecked (since the bottom is first), the "Source Is Interlaced" option was chosen, and the "Add Line On Top" option didn't matter. The output format also didn't seem to matter, however I tested using AVI format with Uncompressed RGB output, AVI format with DivX 5.1.0, AVI format with DivX 5.1.1, and the SLB format. The same frames were discarded in all cases.
Keeping in mind that the frame rate is doubled by the SDTV Deinterlacing filter, some of the results were:
10 Frames in, 20 Frames out (good)
100 Frames in, 167 Frames out (bad, 33 lost)
88 Frames in, 80 Frames out (very bad, 96 lost)
Tests were also done with some longer clips and the number of lost frames just increases. Even with the similar source clip "HHI - SDTV(30i) XviD.avi" from the HiCon32 web site, if it is processed in "Top Field First" mode, 50 frames go in and only 55 come out (so 45 lost). This makes me think that while my source material really is "bottom field first" that the program interprets certain transitions in the video as being incorrect relative to the general flow of motion and it is discarding those. This seems unlikely to be the problem with my clips however because the motion in the source video isn't jerking around in any manner that would confuse the program, and I'm always processing it in "bottom first" mode (after "top first" was tested and produced disgusting results of course).
Another theory is that it is discarding (without notice in the Report Log) some or all frames that appear to be identical to the previous frame. Based on the clip that had 88 frames in and only 80 out, this is far more likely to be what is happening. Looking at the interlaced 88-frame source, there are several frames that are nearly identical to the previous one, and since this is a clip of fast motion, they certainly seem to be duplicates and could be interpreted as such. On top of that, when the program extracts the two fields from each frame, the number of apparent duplicates doubles since each field will be used to construct a full frame in the output.
Based on all of this, I am wondering if anyone else has had similar experiences with this application, and if so, how could its tendency to discard frames be avoided? As another slightly less appealing option, does any program exist that could process the interlaced (as a source only) and deinterlaced (as a second source AND for output) material in a way that compares the frames between them and duplicates the most recent frame in the deinterlaced material until the interlaced source changes reaches a frame (or field) more similar to the next deinterlaced frame than the most recent deinterlcaed frame? I know this probably sounds like it could be terribly inaccurate, but since it could assume that the two sources are of the same thing, and because it could compare each of the fields in the interlaced source as separate frames (interpolated from 720x240 to 720x480), it seems like it could be quite feasible and accurate.
Thanks to anyone that took the time to read and consider what I've posted here, and hopefully someone will have a bit of advice to offer.
Greg F.