boilerlt1, I see. Your issue is very specific - seeking on a video while recording it, and you say anything above DivX 3 doesn't allow it? I am surprised. If anything, I'd have expected a newer version of an ASP codec to support this. I suppose you have already tried the latest builds of Xvid & DivX?
Why is ffdshow being GPL'd stopping you? AFAIK, GPL doesn't restrict any production usage (however, if you are using it for a commercial purpose and making money of it, then your program should also be GPL'd).
Now, about the frame list, I don't think you should reinvent the wheel, when there are existing tools which can do this.
Here is one way -
- Get MPEG4 Modifier CL from here.
- In your program call it with the following parms:
Code:
mmcl --frame-list "C:\path_to_frame_list\frame_list.txt" "C:\path_to_your_video\yourvideo.avi"
- Now do a:
Code:
findstr I-VOP "C:\path_to_frame_list\frame_list.txt">"C:\path_to_frame_list\I-frame_list.txt"
- Your I-frame_list.txt will be in the following format:
Code:
0: I-VOP (0:00:00.000)
300: I-VOP (0:00:12.512)
600: I-VOP (0:00:25.025)
900: I-VOP (0:00:37.537)
1200: I-VOP (0:00:50.050)
1245: I-VOP (0:00:51.926)
1249: I-VOP (0:00:52.093)
1266: I-VOP (0:00:52.802)
1268: I-VOP (0:00:52.886)
1271: I-VOP (0:00:53.011)
1273: I-VOP (0:00:53.094)
1573: I-VOP (0:01:05.607)
1873: I-VOP (0:01:18.119)
2173: I-VOP (0:01:30.632)
2372: I-VOP (0:01:38.932)
2486: I-VOP (0:01:43.686)
2671: I-VOP (0:01:51.402)
2971: I-VOP (0:02:03.915)
3024: I-VOP (0:02:06.126)
3221: I-VOP (0:02:14.342)
3321: I-VOP (0:02:18.513)
3369: I-VOP (0:02:20.515)
....
...
..
- I-VOP = I-frame