ڈکشنری

فریم ریٹ کیا ہے؟

فریم ریٹ اس تعداد کو کہتے ہیں جتنے فریم ایک ویڈیو ہر سیکنڈ میں دکھاتی ہے، اور اسے fps میں ظاہر کیا جاتا ہے۔ ایک میٹا ڈیٹا رپورٹ اسے ایک کسر کی صورت میں بھی دکھا سکتی ہے، مثلاً 25/1۔

frame-rate

فریم ریٹ سے مراد ان ساکن تصاویر کی تعداد ہے، جنہیں فریم کہا جاتا ہے، جو ویڈیو ہر سیکنڈ میں دکھاتی ہے۔ اس کی اکائی فی سیکنڈ فریمز ہے، جسے fps لکھا جاتا ہے۔ تکنیکی معیارات اسے فریم فریکوئنسی بھی کہتے ہیں۔

ویڈیو فائل میں فریم ریٹ ایک میٹا ڈیٹا ویلیو ہوتی ہے جو ویڈیو اسٹریم کو بیان کرتی ہے۔ 25 fps پر ہر فریم 1/25 سیکنڈ یا 40 ملی سیکنڈ کے لیے اسکرین پر رہتا ہے۔

کون سی فائلیں اسے رکھتی ہیں

ویڈیو فارمیٹس جیسے MP4، MOV، MKV، WebM، AVI، WMV اور FLV فریم ریٹ رکھ سکتے ہیں۔ ہر فارمیٹ یہ ویلیو اپنے طریقے سے اسٹور کرتا ہے:

  • MP4 اور MOV: time‑to‑sample ٹیبل ان فریمز کے سلسلے درج کرتی ہے جن کی مدت ایک جیسی ہو۔ ExifTool اس ٹیبل سے اوسط نکال کر VideoFrameRate حساب کرتا ہے۔ کچھ MP4 فائلیں اوسط اور زیادہ سے زیادہ ریٹ کو VideoAvgFrameRate اور VideoMaxFrameRate جیسے ٹیگز میں بھی رکھتی ہیں۔
  • MKV: فیلڈ DefaultDuration فی فریم وقت نینو سیکنڈز میں بتاتا ہے۔ فیلڈ FrameRate صرف معلومات کے لیے ہوتا ہے۔
  • WebM: یہ فارمیٹ Matroska کا subset ہے اور DefaultDuration بھی استعمال کر سکتا ہے۔ WebM کی گائیڈ لائنز FrameRate کو منسوخ شدہ (deprecated) بتاتی ہیں۔
  • AVI: اسٹریم ہیڈر میں دیے گئے rate کو اس کے scale پر تقسیم کیا جائے تو فریم ریٹ ملتا ہے۔
  • WMV اور FLV: ان کے میٹا ڈیٹا میں فریم ریٹ کا ٹیگ موجود ہو سکتا ہے۔

آڈیو اسٹریم میں اس طرح کا کوئی فریم ریٹ نہیں ہوتا۔ FFmpeg کے ffprobe میں اس کے لیے 0/0 دکھایا جاتا ہے۔

قدریں کیسی نظر آتی ہیں

رپورٹ میں فریم ریٹ کو اعشاریہ، مثلاً 29.97، یا کسر کی شکل میں، مثلاً 25/1، دکھایا جا سکتا ہے۔ کسر 25/1 کا مطلب ہے 1 سیکنڈ میں 25 فریمز۔ جب ریٹ مکمل عدد نہ ہو تو کسر کی شکل درستگی برقرار رکھتی ہے۔

یہ چند عام ویلیوز ہیں:

  • 24/1: 24 fps، جو موشن پکچر فلم کا عام فریم ریٹ ہے
  • 24000/1001: تقریباً 23.976 fps، جسے FFmpeg ntsc-film کہتا ہے
  • 25/1: 25 fps، جسے FFmpeg pal کہتا ہے
  • 30000/1001: تقریباً 29.97 fps، جسے FFmpeg ntsc کہتا ہے
  • 50 اور 60: YouTube کے مطابق ویڈیو اپ لوڈز کے عام فریم ریٹس
  • 120: بالائی حد ہے، عام ویلیو نہیں۔ یہ الٹرا ہائی ڈیفینیشن ٹیلی ویژن کے ITU معیار میں سب سے زیادہ فریم ریٹ ہے۔

مستقل اور متغیر فریم ریٹ

مستقل (constant) فریم ریٹ میں ہر فریم کا وقت ایک ہی رہتا ہے۔ متغیر (variable) فریم ریٹ میں ویڈیو کے دوران فریمز کے درمیان وقت بدلتا رہتا ہے۔

FFmpeg کا ffprobe دو فیلڈز دکھاتا ہے: avg_frame_rate اوسط ریٹ ہے، اور r_frame_rate بنیادی ریٹ ہے۔ بنیادی ریٹ وہ سب سے کم ریٹ ہے جو تمام ٹائم اسٹیمپس کو درست طور پر ظاہر کر سکے، اور FFmpeg کی دستاویزات اسے اندازہ (guess) کہتی ہیں۔

مثال کے طور پر، اگر فریمز کی مدت یا تو 1/25 سیکنڈ ہو یا 1/50 سیکنڈ، تو r_frame_rate کی ویلیو 50/1 ہو گی۔ اوسط اس سے کم ہو گی، اس لیے دونوں فیلڈز مختلف ہوں گے۔ ٹائم اسٹیمپس کو time base کی اکائیوں میں گنا جاتا ہے۔

قدر کہاں سے آتی ہے

ریکارڈ کی گئی ویڈیو کو اس کا فریم ریٹ ریکارڈنگ کے دوران ملتا ہے۔ انکوڈر بعد میں اسے بدل سکتا ہے، مثال کے طور پر ویڈیو کو چھوٹا کرنے کے لیے فریمز ہٹا کر۔

انٹرلیسڈ ویڈیو میں ایک الگ عدد دکھائی دے سکتا ہے۔ اس ویڈیو کے لیے Apple کا AVFoundation فریم ورک فریم ریٹ کے بجائے فیلڈ ریٹ رپورٹ کرتا ہے۔

یہ کیوں اہم ہے

فریم ریٹ بنیادی طور پر اس بات پر اثر ڈالتا ہے کہ حرکت کتنی روان نظر آتی ہے۔ زیادہ ریٹ سے حرکت زیادہ ہموار لگتی ہے، لیکن جیسے جیسے ریٹ بڑھتا ہے، فائدہ کم ہوتا جاتا ہے۔ تقریباً 12 فریم فی سیکنڈ سے کم پر آپ کو حرکت کے بجائے ساکن تصاویر کی لڑی دکھائی دیتی ہے۔

24 fps سے اوپر عموماً حرکت ہموار لگتی ہے، اور 30 یا 60 fps ایک مناسب ہدف ہیں۔ زیادہ ریٹ کمپریسڈ فائل کو بھی بڑا بنا دیتا ہے، جب تک انکوڈر ریٹ کم نہ کرے۔ اس لیے 60 fps، 30 fps سے زیادہ ہموار لگ سکتا ہے، لیکن فائل کا حجم بڑھ جاتا ہے۔

YouTube آپ سے کہتا ہے کہ ویڈیو کو اسی فریم ریٹ پر اپ لوڈ کریں جس پر آپ نے اسے ریکارڈ کیا تھا۔ مستقل ریٹ کی صورت میں، ریٹ کو دورانیے سے ضرب دینے پر فریمز کی تعداد ملتی ہے۔ لہذا 4 سیکنڈ کے لیے 25 fps سے 100 فریمز بنتے ہیں۔

میٹا کیز