DirectShow Intelligent Connect
August 15, 2008
جیسا کہ tanvon Yahoo Group کے ایک ممبر نے پوچھا ھے کہ DirectShow میں Filters کو Intelligent Connect کے بغیر کس طرح connect کیا جا سکتا ھے۔
دراصل Intelligent Connect کے بغیر programmer کو بہت سارے چھوٹے چھوٹے functions کا خیال رکھنا پڑتا ھے۔
Intelligent Connect کیا ھے
اس کے پیچھے بھت سارے Intelligent Algorithms کام کرتے ھیں۔ جن کی وجھ سیے programmer پر کام کا بوجھ کم ھو جاتا ھے۔
جب IGraphBuilder::RenderFile کو call کیا جاتا ھے تو Filter Graph Manager کسی ایسے Source Filter کو تلاش کرتا ھے، جو کھ اس Media File کو پڑھ اور سمجھ سکے، اس کے بعد Filter Graph Manager ایک ایسے Filter کو تلاش کرتا ھے جو کھ پہلے Filter کا data جس کو DirectShow میں Media Sample کہتے ھیں کو decode اور parse کر سکے۔ Media Sample کی format جس کو Media Type کہتے ھیں ایسی ھو جو کہ دونوں Filter سمجھ سکیں، نہیں تو یہ Connection فیل ھو جاے گا۔ اور Filter Graph Manger اس filter کو drop کر دے گا اور کوءی دوسرا Filter تلاش کرے گا۔
پھر Filter Graph Manager باقی Filters کو Filter Graph میں شامل کرے گا۔
آخر میں Filter Graph Manager لوڈ کرے گا default Renderer تا کہ سکرین پر مواد دکھایا جا سکے، اس کے بعد اس کو باقی Filter Graph سے Connect کرے گا۔