Ffmpeg সহ ফ্রেম গণনা আনুন


112

Ffmpeg ব্যবহার করে কোনও ভিডিও ফাইল থেকে মোট ফ্রেমের সংখ্যা আনতে কী কেউ জানেন? Ffmpeg এর রেন্ডার আউটপুট বর্তমান ফ্রেমটি দেখায় এবং শতাংশের অগ্রগতি গণনা করার জন্য আমার ফ্রেম কাউন্টের প্রয়োজন।


উত্তর:


158

দ্রষ্টব্য: এমপি 4 / এম 4 ভি / এম 4 এ / এমওভিতে সম্পাদনা তালিকার উপস্থিতি আপনার ফ্রেম নম্বরকে প্রভাবিত করতে পারে। দেখুন তালিকা সম্পাদনা কম।


ffprobe: ধারকটি জিজ্ঞাসা করুন

ffprobe -v error -select_streams v:0 -show_entries stream=nb_frames -of default=nokey=1:noprint_wrappers=1 input.mp4
  • এটি একটি দ্রুত পদ্ধতি।
  • সমস্ত ফর্ম্যাট (যেমন ম্যাট্রোস্কা) এর ফলাফল হিসাবে ফ্রেমের সংখ্যা রিপোর্ট করবে না N/A। নীচে তালিকাভুক্ত অন্যান্য পদ্ধতিগুলি দেখুন।

ffprobe: ফ্রেমের সংখ্যা গণনা করুন

ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of default=nokey=1:noprint_wrappers=1 input.mkv
  • এটি একটি ধীর পদ্ধতি।
  • -skip_frame nokeyকেবল কী ফ্রেমগুলি গণনা করতে বিকল্প যুক্ত করুন ।

ffmpeg: ফ্রেমের সংখ্যা গণনা করুন

আপনার যদি না থাকে তবে ffprobeআপনি ffmpegপরিবর্তে এটি ব্যবহার করতে পারেন :

ffmpeg -i input.mkv -map 0:v:0 -c copy -f null -
  • এটি কিছুটা দ্রুত পদ্ধতি।
  • পড়ুন frame=কনসোল আউটপুট সমাপ্তির কাছাকাছি।
  • যোগ -discard nokeyইনপুট বিকল্প (সামনে -i) শুধুমাত্র চাবি ফ্রেম গণনা।

তালিকা সম্পাদনা করুন

-ignore_editlist 1ইনপুট বিকল্পের সাথে এমপি 4 / এম 4 ভি / এম 4 এ / এমওভি সম্পাদনা তালিকা উপেক্ষা করুন। ডিফল্ট হ'ল সম্পাদনা তালিকাকে অগ্রাহ্য করা নয়

Ffprobe বিকল্পগুলির অর্থ কী

  • -v error এটি "তথ্য" আউটপুট (সংস্করণ তথ্য ইত্যাদি) আড়াল করে যা পার্সিংকে আরও সহজ করে তোলে।

  • -count_frames প্রতি স্ট্রিমের ফ্রেমের সংখ্যা গণনা করুন এবং এটি সম্পর্কিত স্ট্রিম বিভাগে প্রতিবেদন করুন।

  • -select_streams v:0 কেবল ভিডিও স্ট্রিম নির্বাচন করুন।

  • -show_entries stream=nb_framesঅথবা -show_entries stream=nb_read_framesকেবলমাত্র প্রবেশের জন্য nb_framesবা প্রদর্শিত হবে nb_read_frames

  • -of default=nokey=1:noprint_wrappers=1আউটপুট ফর্ম্যাট (ওরফে "লেখক") সেট করুন default, প্রতিটি ক্ষেত্রের কী ( nokey=1) প্রিন্ট করবেন না এবং বিভাগ শিরোনাম এবং পাদচরণ ( noprint_wrappers=1) মুদ্রণ করবেন না । এর মতো সংক্ষিপ্ত বিকল্প রয়েছে -of csv=p=0

এছাড়াও দেখুন


মিডিয়া তথ্য

সুপরিচিত mediainfoসরঞ্জামটি ফ্রেমের সংখ্যা আউটপুট করতে পারে:

mediainfo --Output="Video;%FrameCount%" input.avi

MP4Box

এমপি 4 / এম 4 ভি / এম 4 এ ফাইলগুলির জন্য।

MP4Box জিপিএসি থেকে ফ্রেমের সংখ্যাটি প্রদর্শন করতে পারে:

MP4Box -info input.mp4

পড়ুন Media Infoপ্রশ্ন ওঠা ভিডিওর স্ট্রিম জন্য আউটপুটে লাইন:

Media Info: Language "Undetermined (und)" - Type "vide:avc1" - 2525 samples

এই উদাহরণে ভিডিও স্ট্রিমের 2525 ফ্রেম রয়েছে।


boxdumper

এমপি 4 / এম 4 ভি / এম 4 এ / এমওভি ফাইলগুলির জন্য।

boxdumperl-smash থেকে একটি সাধারণ সরঞ্জাম। এটি প্রচুর পরিমাণে তথ্য আউটপুট দেবে। stszনমুনা আকার বক্স বিভাগের অধীনে sample_countফ্রেমের সংখ্যা পড়ুন । এই উদাহরণে ইনপুটটিতে 1900 ভিডিও ফ্রেম রয়েছে:

boxdumper input.mp4
  ...
  [stsz: Sample Size Box]
    position = 342641
    size = 7620
    version = 0
    flags = 0x000000
    sample_size = 0 (variable)
    sample_count = 1900
  • সচেতন হন যে কোনও ফাইলে একাধিক stszপরমাণু থাকতে পারে ।

5
অথবা, আপনি যদি আরও গতি চান এবং যদি এনবি_ফ্রেমগুলি যথেষ্ট নির্ভরযোগ্য হয় তবে এটিকে সরল করুন:ffprobe -v error -select_streams v:0 -show_entries stream=nb_frames -of default=nokey=1:noprint_wrappers=1 input.mkv
জুনিয়িটোগান ২৮

এটি আমার জন্য দু'বার উত্তর দেয় (অর্থাত 2600 26 n 2600)। কোন বিশেষ কারণ যে ঘটবে?
jbodily

@ জোবডিলি আমার উদাহরণ নাকি জুয়ানিটোগানের? আমি এটি ব্যবহার করে এর সদৃশ করতে পারি না। এখানে কাজ করার মতো বেশি কিছু নয়।
লোগান

+1, কমপক্ষে নয় কারণ কোনও কমান্ড লাইন সরঞ্জাম সম্পর্কে অন্যান্য অনেক উত্তরের বিপরীতে, এটি আসলে সমস্ত কমান্ড লাইন বিকল্প ব্যাখ্যা করে। ধন্যবাদ.
রে

1
মনে রাখবেন যে প্রথম বিকল্পটি, ধারকটিকে জিজ্ঞাসাবাদ করে, প্রকৃতপক্ষে গণনা_ফ্রেমের কারণে ফাইলটি প্রসেস করে। @ জুয়ানিটোগানের মন্তব্য দেখুন।
aggieNick02

23

ইউনিক্সে, এটি কবজ মত কাজ করে:

ffmpeg -i 00000.avi -vcodec copy -acodec copy -f null /dev/null 2>&1 | grep 'frame=' | cut -f 2 -d ' '

3
সত্যিই খুব সুন্দর। কেবল আপনার অডিও স্ট্রিমটি অনুলিপি করার দরকার নেই। আপনি ইনস্ট্যান্ট ব্যবহার করতে পারেন।
rekire

1
@ প্রচারমোহনশ্রীবাস্তব এই উত্তরটি দেখুন
আন্তোনিও

4
প্রকৃতপক্ষে, এটি দ্রুত এবং নির্ভরযোগ্য বলে মনে হচ্ছে:ffmpeg -i 00000.avi -map 0:v:0 -c copy -f null -y /dev/null 2>&1 | grep -Eo 'frame= *[0-9]+ *' | grep -Eo '[0-9]+' | tail -1
টিমোথি জর্ন

1
@ মিশেল আমার সকালে কফি সহ হাসির জন্য ধন্যবাদ :-)
লয়েড মুর

1
টিমোথি জর্ন আপনি আমার দিনটি তৈরি করেছেন!
ম্লাদেন ড্যানিক

13

পরিবর্তে সময়ের ভিত্তিতে এটি গণনা করুন।

এটি আমিই করি এবং এটি আমার এবং আরও অনেকের পক্ষে দুর্দান্ত কাজ করে)) প্রথমে নীচের স্নিপেটে ভিডিওটির দৈর্ঘ্য সন্ধান করুন:

Seems stream 0 codec frame rate differs from container frame rate: 5994.00 
(5994/1) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Users/stu/Movies/District9.mov':
  Duration: 00:02:32.20, start: 0.000000, bitrate: 9808 kb/s
    Stream #0.0(eng): Video: h264, yuv420p, 1920x1056, 29.97tbr, 2997tbn, 5994tbc
    Stream #0.1(eng): Audio: aac, 44100 Hz, 2 channels, s16
    Stream #0.2(eng): Data: tmcd / 0x64636D74

Duration: hh:mm:ss.nnউত্স ভিডিও ক্লিপ আকার নির্ধারণ করতে আপনার ধারাবাহিকভাবে এবং নিরাপদে সন্ধান করা উচিত । তারপরে, প্রতিটি আপডেট লাইনের জন্য (সিআর, কোনও এলএফ) আপনি বর্তমান সময় চিহ্নটির জন্য পাঠ্যকে পার্স করতে পারেন:

frame=   84 fps= 18 q=10.0 size=       5kB time=1.68 bitrate=  26.1kbits/s    
frame=   90 fps= 17 q=10.0 size=       6kB time=1.92 bitrate=  23.8kbits/s    
frame=   94 fps= 16 q=10.0 size=     232kB time=2.08 bitrate= 913.0kbits/s    

এই স্থিতি রেখাগুলি থেকে সর্বদা নিখুঁত আউটপুট আশা না করার জন্য কেবলমাত্র সাহসী। এগুলি এখানে ত্রুটির বার্তা অন্তর্ভুক্ত করতে পারে:

frame=   24 fps= 24 q=-1.0 size=       0kB time=1.42 bitrate=   0.3kbits/s    
frame=   41 fps= 26 q=-1.0 size=       0kB time=2.41 bitrate=   0.2kbits/s    
[h264 @ 0x1013000]Cannot parallelize deblocking type 1, decoding such frames in
sequential order
frame=   49 fps= 24 q=26.0 size=       4kB time=0.28 bitrate= 118.1kbits/s    
frame=   56 fps= 22 q=23.0 size=       4kB time=0.56 bitrate=  62.9kbits/s    

একবার আপনি সময় আছে, এটা সহজ গাণিতিক হল: time / durration * 100 = % done


1
আমাকে বোকা হওয়ার জন্য ক্ষমা করবেন তবে সময়কাল hh: মিমি: ss.nn ফর্ম্যাট এবং সময় সর্বদা xx.yy ফর্ম্যাট থাকা অবস্থায় আমি কীভাবে সময় / সময়কাল করতে পারি?
ওমর আলী

2
@ ওমর,। নেট দেব হিসাবে, আমি যা করি তা হ'ল আমি TimeSpanএটি থেকে একটি তৈরি করি, তারপরে ব্যবহার করুন currentDurationTimeSpan.Ticks / (totalDurationTimeSpan.Ticks / 100)। টাইমস্প্যান একটি শক্তিশালী পার্স ফাংশনও সরবরাহ করে, এটি পরীক্ষা করে দেখুন
শিমি ওয়েটজ্যাণ্ডল্ডার

চমৎকার সমাধান, আমার সময় এইচ: মিমি: এসএস: এমএসে রয়েছে তাই আমি মনে করি যে এই 3 বছরে এফএফএমপিইগ আউটপুট সময় বিন্যাসকে উন্নত করেছে।
এলেক্ট্রো স্টুডিওগুলি

1
নোট করুন যে কনসোল আউটপুটটি 29.97 বলতে পারে, তবে এটি 30000/1001 এর জন্য সংক্ষিপ্ত। 23.98 এর সমান যা 24000/1001 এবং 59.94 60000/1001।
লগন

একটি নোট হিসাবে, এটি পরিবর্তনশীল ফ্রেমরেট ভিডিওগুলির জন্য কার্যকরভাবে কাজ করে না (স্পষ্টতই)।
টিমোথি জর্ন

8

সমস্ত ফর্ম্যাটগুলি তাদের ফ্রেম গণনা বা মোট সময়কাল সংরক্ষণ করে না - এবং তা করলেও ফাইলটি অসম্পূর্ণ হতে পারে - তাই ffmpeg তাদের দুটিই ডিফল্টরূপে সঠিকভাবে সনাক্ত করতে পারে না।

পরিবর্তে, ফাইলটির শেষের দিকে তাকানোর চেষ্টা করুন এবং সময়টি পড়ুন, তারপরে আপনি যাওয়ার সময় বর্তমান সময়টি গণনা করুন।

বিকল্পভাবে, আপনি চেষ্টা করতে পারেন AVFormatContext->nb_index_entriesবা সনাক্তকৃত সময়কাল, যা অন্তত অবিকৃত এভিআই / এমওভি, বা লাইব্রেরি এফএফএমএস 2 নিয়ে কাজ করা উচিত, যা সম্ভবত অগ্রগতি বারের জন্য বিরক্ত হওয়া খুব ধীর।


8

এর মতো কিছু চেষ্টা করুন:

ffmpeg -i "path to file" -f null /dev/null

এটি স্টাডারের কাছে ফ্রেম নম্বরটি লিখেছেন, যাতে আপনি এটি থেকে শেষ ফ্রেমটি পুনরুদ্ধার করতে পারেন।


8

আপনি ffprobe নিম্নলিখিত কমান্ডগুলির সাহায্যে ফ্রেম নম্বর পেতে ব্যবহার করতে পারেন

  1. প্রথম পদ্ধতি

ffprobe.exe -i video_name -print_format json -loglevel fatal -show_streams -count_frames -select_streams v

যা jsonবিন্যাসে তথ্য মুদ্রণ করতে বলুন

select_streams vffprobeআমাদের কেবল videoস্ট্রিম ডেটা দেওয়ার জন্য বলবে এবং আপনি এটি সরিয়ে ফেললে এটি আপনাকে audioতথ্যও দেবে

এবং আউটপুট মত হবে

{
    "streams": [
        {
            "index": 0,
            "codec_name": "mpeg4",
            "codec_long_name": "MPEG-4 part 2",
            "profile": "Simple Profile",
            "codec_type": "video",
            "codec_time_base": "1/25",
            "codec_tag_string": "mp4v",
            "codec_tag": "0x7634706d",
            "width": 640,
            "height": 480,
            "coded_width": 640,
            "coded_height": 480,
            "has_b_frames": 1,
            "sample_aspect_ratio": "1:1",
            "display_aspect_ratio": "4:3",
            "pix_fmt": "yuv420p",
            "level": 1,
            "chroma_location": "left",
            "refs": 1,
            "quarter_sample": "0",
            "divx_packed": "0",
            "r_frame_rate": "10/1",
            "avg_frame_rate": "10/1",
            "time_base": "1/3000",
            "start_pts": 0,
            "start_time": "0:00:00.000000",
            "duration_ts": 256500,
            "duration": "0:01:25.500000",
            "bit_rate": "261.816000 Kbit/s",
            "nb_frames": "855",
            "nb_read_frames": "855",
            "disposition": {
                "default": 1,
                "dub": 0,
                "original": 0,
                "comment": 0,
                "lyrics": 0,
                "karaoke": 0,
                "forced": 0,
                "hearing_impaired": 0,
                "visual_impaired": 0,
                "clean_effects": 0,
                "attached_pic": 0
            },
            "tags": {
                "creation_time": "2005-10-17 22:54:33",
                "language": "eng",
                "handler_name": "Apple Video Media Handler",
                "encoder": "3ivx D4 4.5.1"
            }
        }
    ]
}

2. আপনি ব্যবহার করতে পারেন

ffprobe -v error -show_format -show_streams video_name

যা আপনাকে স্ট্রিম ডেটা দেবে, যদি আপনি ফ্রেমের হারের মতো নির্বাচিত তথ্য চান তবে নিম্নলিখিত কমান্ডটি ব্যবহার করুন

ffprobe -v error -select_streams v:0 -show_entries stream=avg_frame_rate -of default=noprint_wrappers=1:nokey=1 video_name

যা আপনার ভিডিও তথ্যের উপর ভিত্তি করে একটি সংখ্যা দেয়, আপনি যখন এই পদ্ধতিটি ব্যবহার করেন তখন সমস্যাটি হয় আপনি N/Aআউটপুট হিসাবে পেতে পারেন ।

আরও তথ্যের জন্য এই পৃষ্ঠাটি দেখুন এফএফপ্রোব টিপস



3

যেহেতু আমার মন্তব্যে কয়েকটি উত্স পেয়েছে, আমি অনুভব করেছি যে আমি এটি একটি উত্তর হিসাবে ছেড়ে দেব:

ffmpeg -i 00000.avi -map 0:v:0 -c copy -f null -y /dev/null 2>&1 | grep -Eo 'frame= *[0-9]+ *' | grep -Eo '[0-9]+' | tail -1

এটি দ্রুত হওয়া উচিত, যেহেতু কোনও এনকোডিং হচ্ছে না। ffmpegকেবলমাত্র ফাইলটি ডিমাক্স করবে এবং যত তাড়াতাড়ি সম্ভব প্রথম ভিডিও স্ট্রিমটি পড়বে (ডিকোড)। প্রথম grepকমান্ডটি টেক্সটটি দখল করবে যা ফ্রেমটি দেখায়। দ্বিতীয় grepকমান্ড এটি থেকে ঠিক সংখ্যা দখল করবে। tailকমান্ডটি কেবল চূড়ান্ত লাইন (চূড়ান্ত ফ্রেম গণনা) প্রদর্শন করবে।


2

স্টু এর উত্তর তৈরি করতে। আমার মোবাইল ফোন থেকে আমি কীভাবে একটি ভিডিওর ফ্রেম রেট পেয়েছি তা এখানে। আমি নিম্নলিখিত কমান্ডটি কিছুক্ষণ চালিয়েছি। আমি অধৈর্য হয়ে ^ C চাপার আগে ফ্রেম গণনাটি প্রায় 10,000 ডলারে উঠতে পারি:

$ ffmpeg -i 2013-07-07\ 12.00.59.mp4 -f null /dev/null 2>&1
...
Press [q] to stop, [?] for help
[null @ 0x7fcc80836000] Encoder did not produce proper pts, making some up.
frame= 7989 fps= 92 q=0.0 Lsize=N/A time=00:04:26.30 bitrate=N/A dup=10 drop=0    
video:749kB audio:49828kB subtitle:0 global headers:0kB muxing overhead -100.000042%
Received signal 2: terminating.
$

তারপরে, আমি সেই লাইনটি থেকে দুটি টুকরো তথ্য পেয়েছি যা "ফ্রেম =", ফ্রেম গণনা, 7989 এবং সময় থেকে শুরু হয়, 00: 04: 26.30। আপনাকে প্রথমে সময়টিকে সেকেন্ডে রূপান্তর করতে হবে এবং তারপরে "ফ্রেম প্রতি সেকেন্ডে" পেতে ফ্রেমের সংখ্যাটি সেকেন্ডে ভাগ করতে হবে। "ফ্রেম প্রতি সেকেন্ড" আপনার ফ্রেমের হার।

$ bc -l
0*60*60 + 4*60 + 26.3
266.3

7989/(4*60+26.3)
30.00000000000000000000
$

আমার ভিডিওর ফ্রেমরেট 30 fps।


2

আমি যে সঠিকভাবে এটি করতে সক্ষম হয়েছি তা হ'ল:

ffprobe -i my_video.mp4 -show_frames 2>&1|grep -c '^\[FRAME'

এটি ভিডিওর সাথে কাজ করে তা নিশ্চিত করার জন্য:

ffprobe -i my_video.mp4 -show_frames 2>&1 | grep -c media_type=video

আমি আপনার উত্তরটিকে অগ্রাহ্য করেছি, তবে ভিডিওটিতে অডিও না থাকলে এটি কেবলমাত্র কাজ করবে। যদি এটি ধারণ করে তবে এইটি কাজ করবে:ffprobe -i my_video.mp4 -show_frames 2>&1 | grep -c media_type=video
গোব

2

নেক্রো উত্তরের জন্য দুঃখিত, তবে সম্ভবত এটির প্রয়োজন হবে (কারণ আমি সাম্প্রতিক ffmpeg প্রকাশের জন্য কোনও সমাধান খুঁজে পাইনি।

Ffmpeg 3.3.4 এর সাথে আমি খুঁজে পেয়েছি যে নিম্নলিখিতগুলির সাথে একটি খুঁজে পেতে পারে:

ffprobe -i video.mp4 -show_streams -hide_banner | grep "nb_frames"

শেষে এটি ফ্রেম গণনা আউটপুট হবে। এটি আমার জন্য অডিও সহ ভিডিওগুলিতে কাজ করেছিল। এটি দ্বিগুণ "nb_frames" লাইন দেয়, তবে প্রথম লাইনটি আমি পরীক্ষিত ভিডিওগুলিতে প্রকৃত ফ্রেম গণনা ছিল।


ধন্যবাদ @ অ্যাসিড্রামস 4। যাচাই করা এই পদ্ধতিটি আমি আজ নির্মিত গিথুবের সর্বশেষতম সংস্করণটির সাথে কাজ করে।
পল জে

1

আমি পিএইচপি_এফএমপিগ ব্যবহার করি তবে আমি চলচ্চিত্রের সমস্ত সময় এবং সমস্ত ফ্রেম পেতে পারি। নীচে হিসাবে

$input_file='/home/strone/workspace/play/CI/abc.rmvb';
$ffmpegObj = new ffmpeg_movie($input_file);
echo $ffmpegObj->getDuration();
    echo $ffmpegObj->getFrameCount();

এবং তারপরে বিশদটি পৃষ্ঠায় রয়েছে।

http://ffmpeg-php.sourceforge.net/doc/api/ffmpeg_movie.php


1
Cmd ->

ffprobe.exe -v error -select_streams v:0 -show_entries stream=r_frame_rate,duration -of default=nw=1 "d:\movies\The.Matrix.1999.1080p.BrRip.x264.YIFY.dut.mp4"

Result ->

r_frame_rate=24000/1001
duration=8177.794625

Calculation ->

Frames=24000/1001*8177.794625=196071

Proof -> 

ffmpeg -i "d:\movies\The.Matrix.1999.1080p.BrRip.x264.YIFY.dut.mp4" -f null /dev/null
ffmpeg version N-92938-g0aaaca25e0-ffmpeg-windows-pacman Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8.2.0 (GCC)
  configuration: --pkg-config=pkg-config --pkg-config-flags=--static --extra-version=ffmpeg-windows-pacman --enable-version3 --disable-debug --disable-w32threads --arch=x86_64 --target-os=mingw32 --cross-prefix=/opt/sandbox/cross_compilers/mingw-w64-x86_64/bin/x86_64-w64-mingw32- --enable-libcaca --enable-gray --enable-libtesseract --enable-fontconfig --enable-gmp --enable-gnutls --enable-libass --enable-libbluray --enable-libbs2b --enable-libflite --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libzimg --enable-libzvbi --enable-libmysofa --enable-libaom --enable-libopenjpeg --enable-libopenh264 --enable-liblensfun --enable-nvenc --enable-nvdec --extra-libs=-lm --extra-libs=-lpthread --extra-cflags=-DLIBTWOLAME_STATIC --extra-cflags=-DMODPLUG_STATIC --extra-cflags=-DCACA_STATIC --enable-amf --enable-libmfx --enable-gpl --enable-avisynth --enable-frei0r --enable-filter=frei0r --enable-librubberband --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxvid --enable-libxavs --enable-avresample --extra-cflags='-march=core2' --extra-cflags=-O2 --enable-static --disable-shared --prefix=/opt/sandbox/cross_compilers/mingw-w64-x86_64/x86_64-w64-mingw32 --enable-nonfree --enable-decklink --enable-libfdk-aac
  libavutil      56. 25.100 / 56. 25.100
  libavcodec     58. 43.100 / 58. 43.100
  libavformat    58. 25.100 / 58. 25.100
  libavdevice    58.  6.101 / 58.  6.101
  libavfilter     7. 47.100 /  7. 47.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'd:\movies\The.Matrix.1999.1080p.BrRip.x264.YIFY.dut.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.25.100
  Duration: 02:16:17.91, start: 0.000000, bitrate: 2497 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x800 [SAR 1:1 DAR 12:5], 2397 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 93 kb/s (default)
    Metadata:
      handler_name    : GPAC ISO Audio Handler
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
  Stream #0:1 -> #0:1 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, null, to '/dev/null':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.25.100
    Stream #0:0(und): Video: wrapped_avframe, yuv420p, 1920x800 [SAR 1:1 DAR 12:5], q=2-31, 200 kb/s, 23.98 fps, 23.98 tbn, 23.98 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : Lavc58.43.100 wrapped_avframe
    Stream #0:1(und): Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s (default)
    Metadata:
      handler_name    : GPAC ISO Audio Handler
      encoder         : Lavc58.43.100 pcm_s16le
frame=196071 fps=331 q=-0.0 Lsize=N/A time=02:16:17.90 bitrate=N/A speed=13.8x
video:102631kB audio:1408772kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

ফ্রেমারেট সাধারণত দুটি পরামিতিগুলির বাইরে গণনা করা হয়। r_frame_rate = 24000/1001 (= 23,97602397602397 ...) ffmpeg দ্বারা বৃত্তাকার: 23.98 সময়কাল = ঘন্টা * 3600 + মিনিট * 60 + সেকেন্ড.রেমেন্ডার = 8177,91 সময়কাল প্যারামিটার = 8177.794625 তবে ফ্রেমস = 24000/1001 * 8177.794625 = 196071 ফ্রেমের সঠিক সংখ্যা দেয়। (দুষ্টুমি করসি না).
জেরার্ড ওয়েনসিংক 12'19

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.