ffmpeg: थंबनेल एफपीएस = एफपीएस = 1/60 काम करने की कोशिश कर रहा है, लेकिन एफपीएस / एफपीएस = 1/600 नहीं


2

मैं ffmpeg साइट से इस डॉक्टर का अनुसरण कर रहा हूं:

यह हर मिनट एक थंबनेल छवि बनाएगा, जिसका नाम img001.jpg, img002.jpg, img003.jpg, ... (% 03d का अर्थ है कि प्रत्येक थंबनेल छवि के क्रमिक संख्या को 3 अंकों का उपयोग करके स्वरूपित किया जाना चाहिए)

ffmpeg -i myvideo.avi -f image2 -vf fps=fps=1/60 img%03d.jpg

यह हर 10 मिनट में एक थंबनेल इमेज बनाएगा, जिसका नाम thumb0001.bmp, thumb0002.bmp, thumb0003.bmp, ...

ffmpeg -i test.flv -f image2 -vf fps=fps=1/600 thumb%04d.bmp

लेकिन अगर मैं 1/600 विकल्पों का उपयोग करता हूं तो यह काम नहीं करता है और निम्नलिखित त्रुटि देता है:

ffmpeg -i src/e0b4c83e7ab2ada44c2785d25b0d4a9d45fc0c66.3gp -f image2 -vf fps=fps=1/250 thumbs/images%d.jpg
ffmpeg version 1.0.3 Copyright (c) 2000-2012 the FFmpeg developers
  built on Oct 13 2013 21:48:31 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-3)
  configuration:
  libavutil      51. 73.101 / 51. 73.101
  libavcodec     54. 59.100 / 54. 59.100
  libavformat    54. 29.104 / 54. 29.104
  libavdevice    54.  2.101 / 54.  2.101
  libavfilter     3. 17.100 /  3. 17.100
  libswscale      2.  1.101 /  2.  1.101
  libswresample   0. 15.100 /  0. 15.100
Guessed Channel Layout for  Input Stream #0.1 : mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'src/e0b4c83e7ab2ada44c2785d25b0d4a9d45fc0c66.3gp':
  Metadata:
    major_brand     : 3gp4
    minor_version   : 512
    compatible_brands: isomiso23gp4
    creation_time   : 2013-11-27 14:02:52
  Duration: 00:05:01.33, start: 0.000000, bitrate: 177 kb/s
    Stream #0:0(und): Video: h263 (s263 / 0x33363273), yuv420p, 176x144 [SAR 12:11 DAR 4:3], 161 kb/s, 15 fps, 15 tbr, 15 tbn, 29.97 tbc
    Metadata:
      creation_time   : 2013-11-27 14:06:48
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt, 12 kb/s
    Metadata:
      creation_time   : 2013-11-27 14:06:48
      handler_name    : SoundHandler
[mjpeg @ 0x3621940] bitrate tolerance too small for bitrate
[mjpeg @ 0x363c1c0] ff_frame_thread_encoder_init failed
Output #0, image2, to 'thumbs/images%d.jpg':
  Metadata:
    major_brand     : 3gp4
    minor_version   : 512
    compatible_brands: isomiso23gp4
    Stream #0:0(und): Video: mjpeg, yuvj420p, 176x144 [SAR 12:11 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 0k tbc
    Metadata:
      creation_time   : 2013-11-27 14:06:48
      handler_name    : VideoHandler
Stream mapping:
  Stream #0:0 -> #0:0 (h263 -> mjpeg)
Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

1/60 काम क्यों करता है और 1/600 क्यों नहीं? इसे कैसे जोड़ेंगे? इसके अलावा सर्वर को अपडेट करना कोई विकल्प नहीं है।


सबसे कम मूल्य क्या है जो अभी भी इन त्रुटियों को देता है? क्या यह मान अन्य इनपुट्स के साथ बदलता है? Ffmpeg के हालिया स्थैतिक निर्माण के साथ परीक्षण सहायक होगा (बस डाउनलोड, एक्सट्रैक्ट और रन)।
लवलेन डे

जवाबों:


2

मुझे अभी तक नहीं पता है कि कुछ मूल्यों के साथ fpsवीडियो फिल्टर का उपयोग करते समय jpg आउटपुट के लिए डिफ़ॉल्ट सेटिंग्स त्रुटियों का कारण क्यों बनती हैं:

[mjpeg @ 0x3621940] bitrate tolerance too small for bitrate
[mjpeg @ 0x363c1c0] ff_frame_thread_encoder_init failed

उदाहरण

वर्कअराउंड -qscale:v(या उपनाम -q:v) विकल्प का उपयोग करना है:

ffmpeg -i input.mkv -vf fps=1/250 -qscale:v 2 output%d.jpg

टिप्पणियाँ

  • -qscale:vजब jpeg के लिए outputting के लिए प्रभावी सीमा 2-31 का एक रेखीय पैमाने है। एक कम मूल्य एक उच्च गुणवत्ता है।

  • -f image2 आवश्यकता नहीं है।

  • आप fps=मेरे उदाहरण में दिखाए अनुसार अतिरिक्त को भी छोड़ सकते हैं ।

  • एक और वर्कअराउंड एक अलग आउटपुट प्रारूप का उपयोग करना है, जैसे कि पीएनजी, लेकिन यह आपके लिए स्वीकार्य समाधान नहीं हो सकता है।

  • एक अन्य संभावित समाधान इसके बजाय selectवीडियो फ़िल्टर का उपयोग करना है, लेकिन यह उपयोगकर्ता के अनुकूल नहीं है।

  • उपयोग -threads 1करने से ff_frame_thread_encoder_init failedत्रुटि समाप्त हो जाती है, लेकिन अन्य त्रुटि नहीं।

  • फ़िल्टर के -rबजाय उपयोग करते समय समान त्रुटियां दिखाई देती हैं fps

यदि मुझे अधिक जानकारी मिलती है (मैं उचित जांच करने के लिए समय से बाहर भाग गया ...) मैं इस उत्तर को अपडेट करूंगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.