سؤال كيف يمكنني الحصول على ffmpeg لتحويل ملف .mov إلى a .gif؟


أحاول تحويل .mov إلى .gif وأنا لا أحقق النجاح.

هذا هو الخطأ:

ffmpeg -pix_fmt rgb24 -i yesbuddy.mov output.gif
ffmpeg version 0.11.1 Copyright (c) 2000-2012 the FFmpeg developers
  built on Jun 12 2012 17:47:34 with clang 2.1 (tags/Apple/clang-163.7.1)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/0.11.1 --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-libfreetype --cc=/usr/bin/clang --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-librtmp --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libass --enable-libvo-aacenc --disable-ffplay
  libavutil      51. 54.100 / 51. 54.100
  libavcodec     54. 23.100 / 54. 23.100
  libavformat    54.  6.100 / 54.  6.100
  libavdevice    54.  0.100 / 54.  0.100
  libavfilter     2. 77.100 /  2. 77.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
Option pixel_format not found.

إذا تركت -pix_fmt rgb24 جزء يشكو. أفكار حول كيفية إصلاح؟


82
2018-06-13 01:28


الأصل


لمعلوماتك ، هناك حل ممتاز للتحويلات عالية الجودة المقدمة هنا. - ryanjdillon


الأجوبة:


ترتيب وسائط سطر الأوامر أمرًا مهمًا. يجب أن يعمل سطر الأوامر هذا ولكن سيؤدي إلى إنشاء ملف عملاق:

ffmpeg -i yesbuddy.mov -pix_fmt rgb24 output.gif

لاحظ أنك ربما تريد تقليل معدل الإطار وحجمه عند إجراء التحويل ، بالإضافة إلى تحديد وقت ومدة البدء. ربما لا ترغب في تحويل الملف بأكمله بدقة الوضوح ومعدل الإطارات.

ffmpeg -ss 00:00:00.000 -i yesbuddy.mov -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:10.000 output.gif

سيظل حجم الملف ضخمًا. قد تتمكن من استخدام يماغيماغيكمحسّن GIF لتقليل الحجم:

convert -layers Optimize output.gif output_optimized.gif

141
2018-06-13 04:37



الجواب رائع ، وذلك بفضل :) GIF هو تنسيق مجنون ... كان الأصلي .mov 250K ، وكان تحويل .gif من ffmpeg 8MB ، و convertنسخة مطورة كان 10k مذهلة! محرج! - TooTallNate
يشكو ffmpeg تنسيق بكسل ثم التبديل من rgb24 إلى pal8؛ يجب تحديث الأمر في الإجابة؟ - user1071136
تنسيق البكسل غير المتوافق 'rgb24' لبرنامج الترميز 'gif' - highmaintenance
Andy التلقائي الثابتة ل rgb8 في نسخته من ffmpeg. - James Campbell
كيف نفعل في Android؟ - Ajay Shrestha


بعد التحويل:

ffmpeg -i input.mp4 input.gif 

حاول تحسين الإطارات:

convert input.gif -verbose -coalesce -layers OptimizeFrame input_optframe.gif

واستخدامها gifsicle لتحقيق التحسين النهائي:

gifsicle -O2 input_optframe.gif -o optimized.gif

حصلت على 6.8 ميغابايت GIF من فيديو بسرعة 12.2 ميغابايت وبنفس الجودة تقريبًا!


9
2017-11-05 19:01



عقل يشرح كيف تعمل هذه الخطوات وماذا يفعلون؟ - Raystafarian


لقد صنعت أداة تضم FFmpeg و ImageMagick و giflossy في برنامج سطر أوامر واحد سهل الاستخدام يمكنك تثبيته في سطر واحد: https://github.com/vvo/gifify

أوصي بأي شخص يرغب في تحويل مقاطع الفيديو => GIF لاستخدامه بدلاً من محاولة قضاء الكثير من الوقت في تصفح 3 مواقع للوثائق على الويب لفهم كيفية تغيير حجم صورة GIF أو تغيير وقت البدء / الانتهاء.


5
2017-09-16 14:54



وإذا كان جهاز Docker يعمل على جهازك ، فما عليك سوى تحديد اسم مستعار مثل: alias gifify='docker run -it --rm -v $(pwd):/data maxogden/gifify' ثم استخدمها gifify screencast.mkv -o screencast.gif --resize 800:-1 - sabbour


ffmpeg -y -i input.mp4 -f image2pipe -vcodec ppm - | convert -delay 2 -loop 0 -layers Optimize - gif:- | gifsicle -d 3 -O3 -o optimized.gif

أول استخدام ffmpeg لتحويل ملف mp4 إلى صور عبر الأنبوب ثم استخدم imagemagick لضغطه إلى gif في النهاية إلى أقصى حد ممكن مع gifsicle

لا أعرف لماذا لن يعمل استخدام gifscicle مباشرة.

أو يمكنك جعل الصورة أصغر من هذا

convert -dither none -matte -depth 8 -deconstruct -layers optimizePlus -colors 32 in.gif out.gif

0
2018-04-04 21:43