ffmpeg / avconv জোর করে আউটপুট 2 দ্বারা বিভাজ্য হতে বাধ্য করে


10

আমি আমার ডেস্কটপটি অ্যাভনভের সাথে রেকর্ড করেছি (ওরফে ffmpeg) এবং তারপরে এটি 720p স্কেল করুন।

আমি সম্প্রতি আমার স্ক্রিপ্টে যুক্ত করেছি যাতে তারা এক্সউইনিনফো সহ একটি উইন্ডো নির্বাচন করতে পারে এবং এটি এটি বিশেষভাবে রেকর্ড করবে।

যাইহোক, যদি আউটপুট ফর্ম্যাটটি 2 দ্বারা বিভাজ্য না হয় তবে এনকোডারটি ছড়িয়ে পড়ে এবং আমি আমার ভিডিওটি পাই না।

Ffmpeg এর ভিতরে এটি ঠিক করার কোনও উপায় আছে যাতে স্কেল মানগুলি সেট করতে আমাকে ব্যাশে ম্যানুয়াল গণিতের একগুচ্ছটি করতে হবে না?

অসম হলে স্কেল ফিল্টার বিয়োগ / প্রস্থ / উচ্চতায় একটি যুক্ত করা কি সম্ভব? (বৃত্তাকার?)

মূল স্কেল যা এটি সম্পাদন করতে পারে তার পরে আর কোনও ফিল্টার প্রয়োগ করা সম্ভব? (এটি এমন ভিডিওগুলিকে গোল করবে যেগুলির একটি অসম ইনপুট আকার এবং কোনও স্কেলিং নেই)

#!/bin/bash
avconv \
-f x11grab -r $fps -s $capturesize -i :0.0$offset \
-vcodec libx264 \
-vf scale=-1:720 \
-pre:v lossless_ultrafast \
-threads 4 \
-y $@

কিছু পুরানো মেলিং তালিকা এমন একটি round()ফাংশন প্রস্তাব করে যা আপনি ফিল্টারটিতে ব্যবহার করতে পারেন তবে আমি সিনট্যাক্সটি ঠিক মতো পেয়ে যাব না। এটি যদি scale=round(iw,2):round(ih,2)শেষে প্রয়োগ করা ফিল্টারটি কাজ করে তবে আমার সমস্ত সমস্যা একবারে সমাধান হবে। iwএবং ihকাজ বলে মনে হচ্ছে না।

উত্তর:


9

যেহেতু কখনও কখনও 2 টি দ্বারা বিজোড় সংখ্যায় বিভাজন হয় তাই এটি হওয়া উচিত:

-vf scale="trunc(oh*a/2)*2:720"

এটি -1:720সিনট্যাক্সের মাধ্যমে কেউ কী চাইবে তা সম্পাদন করে (মূল দিক অনুপাত রাখুন)


আমি ceilপরিবর্তে trunc16: 9 480 পি হিসাবে উচ্চতর জুটি নম্বর পেতে ব্যবহার করি
ফিলিপ আলকাসিবার

8

আসলে ফিল্টার এটি সরাসরি পরিচালনা করতে পারে। ফিল্টারের -2পরিবর্তে আপনাকে কেবল পাস করতে হবে -1: যেমন

-vf scale="-2:720"

আমি 3 বছর আগে একটি বাগ রিপোর্টে এটি জানতে পেরে অবাক হয়েছি ।


আমার পক্ষে কাজ করেনি, এটি সমর্থন করার সর্বনিম্ন সংস্করণটি কী?
letmaik

3
-2 আমার জন্য ffmpeg সংস্করণ 2.3.3 এ কাজ করে
ল্যান্স নানেক

7

অনেকগুলি পরীক্ষার পরে দেখে মনে হচ্ছে যে অন্যান্য স্কেল ফিল্টারগুলির পরে নীচের ফিল্টারটি প্রস্থ এবং উচ্চতা 2 কে গোল করবে round

scale=trunc(in_w/2)*2:trunc(in_h/2)*2

এটি মূলত একটি বিভাজন, বৃত্তাকার, গুণ গুণ, আমার কাছে বাক্য গঠন ঠিক ছিল না।

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