windows-nt/Source/XPSP1/NT/multimedia/dshow/tools/dmotest/dshowmediaobj/todo.txt
2020-09-26 16:20:57 +08:00

107 lines
3.2 KiB
Plaintext

Code we probably will not need for a while:
1. Implement input queue in wrapper filter
2. Implement topology
3. Enqueue discontinuities in wrapper filter
7. Implement NewSegment in wrapper filter
11. Pay attention to 'keyed' flag in DMOEnum
15. Implement Unregister in dsreg.dll
16. Implement Unregister in dmo com base
18. Find out what synclock is for and fix stuff
23. Find out what other moniker code is necessary
32. Free existing format block in CStream::GetType?
33. Check success in CStream::GetCurrentType
40. Implement Get/SetInputMaxLatency
47. Decide if DShow registration should be separate
48. Implement CEnumDMOCLSID::Clone
51. Implement CDMOEnumMoniker::Clone
Code that will be needed for some sample DMOs:
4. Is discontinuity code in base class complete ?
5. Aggregate the object in wrapper filter
6. Reset EOS flags on EndFlush in wrapper filter (?)
12. Expose DMO interfaces on wrapper filter pins
24. Decide how to avoid minimuim buffer size hack
34. Compare format blocks in CStream::CheckType ?
35. Allow ATL based DMOs to override methods
53. Support non-44100/2/16 audio in gargle
54. Find a better place to initialize vars in gargle
59. Investigate why gargle won't stop on EOS
Fixed
60. Investigate why gargle deadlocks with MP3 decoder
61. Synchronize flushes/discontinuieties with input queues
Code needed to be more GraphEdt-friendly
8. Populate DMO registry keys with object info
9. Use supplied media types in DMORegister
10. Supply mediatypes to DMORegister in sample DMOs
21. Moniker should return a readable DMO name
22. Make graphs with DMOs realoadable (persistence?)
Fixed (mostly)
44. DMORegister needs a name parameter !
50. Present each DMO category as its own DShow category
61. Make error codes numerically equivalent to AM errors
Code reuse within DMO source tree:
13. Merge media buffer base class (app & filter)
done
14. Merge COM CLSID regkey code (dsreg & dmocom)
superseded by 52
17. Move buffer pre/post processing code to pins
done
41. Merge CreateInput/OutputStreams code (base class)
can't do
49. Put CAutoHKey in a common private header
done
52. Use dmocom instead of DShow combase in dshowreg
done
Other source tree cleanup:
19. Decide which assert macro to use in base class
20. Implement some debug logging facility for DMOs
25. Pull obsolete proppage code from wrapper filter
punt - keep for reuse as a skeleton
26. Move gargle-specific xform.idl out of include\
31. Figure out what to do with include files
dmo.h
37. Remove unused GetData() function from base class
done
38. Add some debug logs to base class
39. Add some debug logs to wrapper filter
42. Remove g_amPlatform and g_osInfo from dmocom
done
43. Rename CUnknown and INDUnknown in dmocom
done
45. cpp_quute("#include") mediaerr.h in mediaobj.idl
superseded by 31
46. Use consistent naming convention for filenames
56. Pull unused IsEqualObject
done
57. Remove obsolete functions from base class
done
58. Remove obsolete functions from wrapper filter
done
Sample issues:
27. Sample app ignores alignment
28. Remove comment about in-place from sample app
29. Reuse CMediaBuffer objects in sample app
30. Remove comment in front of GetInputData decl.
36. Speicify when output buffer can be NULL (spec)
55. Use DMO enumeration API in sample