ওএসএক্সে লিবাভ / অ্যাভকনভি কীভাবে ইনস্টল করবেন?


32

ওএসএক্স একটি কমান্ড লাইন ভিডিও রূপান্তর ইউটিলিটি অ্যাভকনভার্ট সহ আসে তবে এই সরঞ্জামটি লাইবাভ সরবরাহ করা অ্যাভকনভের তুলনায় সীমিত কার্যকারিতা সরবরাহ করে ।

আমি কীভাবে ওএস এক্স এ অ্যাভকনভি ইনস্টল করতে পারি?


3
Homebrew সঙ্গে: brew install libav
ম্যাথিয়াস বাইনেস

উত্তর:



17

প্রথমে গ্রন্থাগারটি ধরুন:

 wget http://libav.org/releases/libav-10.1.tar.gz
# use http://libav.org/releases/libav-snapshot.tar.bz2 for the latest snapshot
tar -xvzf libav-10.1.tar.gz 
cd libav-10.1

ম্যাকপোর্টস (বা অন্যান্য প্যাকেজ পরিচালক যেমন হোমব্রিউ ) এর সাথে নির্ভরতা সেট আপ করুন :

sudo port install yasm zlib bzip2 faac lame speex libogg libvorbis libtheora libvpx x264 XviD openjpeg15 opencore-amr freetype

লিবাভ তৈরি করুন:

./configure \
--extra-cflags=-I/opt/local/include --extra-ldflags=-L/opt/local/lib \
--enable-gpl --enable-libx264 --enable-libxvid \
--enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb \
--enable-nonfree --enable-libfaac \
--enable-libmp3lame --enable-libspeex --enable-libvorbis --enable-libtheora --enable-libvpx \
--enable-libopenjpeg --enable-libfreetype --enable-doc --enable-gnutls --enable-shared

make && sudo make install

তারপরে আপনি চালাতে পারবেন avconv:

avconv -i input.avi -c:v libx264 -preset slow -crf 18 output.mp4

  • x264 +asmকাজ করার দরকার পড়েছে বলে মনে হচ্ছে cpu-capabilities, সুতরাং যদি আপনি তাদের (উদাহরণস্বরূপ [libx264 @ 0x7fe66101a800] using cpu capabilities: none!) রান না পান:

sudo পোর্ট আপগ্রেড --enfor-variants x264 + asm

আপনার মত অবস্থা হওয়া উচিত: [libx264 @ 0x7fc62401b600] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX


3
ম্যাক ওএসএক্স-এ, ম্যাকপোর্টসের মাধ্যমে ইনস্টল করা এবং export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig'. Also, for the fun of it, you may add, to পিকেজি -কনফিগার ব্যবহারের মাধ্যমে নির্ভরশীলতাগুলি আপনি পরিবেশের পরিবর্তনশীল সেট না করা পর্যন্ত পাওয়া যায় না , options: / / lib . Then the whole । / কনফিগার- অলৌকিকভাবে পাস!
অ্যালেক্স

5
ব্রিবু ইনস্টল করুন
স্টিভেন সোরোকা

1
দ্বিতীয় থেকে শেষ ধাপে, লিব-এভ তৈরি করুন। ত্রুটি: গলটগুলি পাওয়া যায় নি
চেজ রবার্টস

@ চেজরবার্টস হাই চেস, আমারও একই সমস্যা আছে গোঁটাগুলি খুঁজে পাওয়া যায়নি। আমি gist.github.com/morgant/1753095 গাইড অনুসরণ করার চেষ্টা করেছি তবে আরও ত্রুটির মুখোমুখি হয়েছি। আপনি কি কখনও কাজের জিনিস পেতে সক্ষম হয়েছিলেন?
জন

ঠিক আছে আমাকে brew install libavকাজ করতে পেতে হোমব্রিউ পুনরায় ইনস্টল করতে হয়েছিল।
জন

1

যাদের ছাড়া brew- এবং যতক্ষণ না ম্যাকপোর্টগুলি কোনও বন্দর নিয়ে আসে libav, উত্স থেকে লিবাব ইনস্টল করার জন্য আমার নোটগুলি এখানে রয়েছে (লিথাব সংস্করণ 12_dev0, গিথুব থেকে)।

আমি যে প্রধান সমস্যার মুখোমুখি হয়েছিল তা হ'ল লিবাভ ব্যবহার sem_timedwait()(লিনাক্সে সেমফোরএইচ ) যা ম্যাকোসে সংজ্ঞায়িত নয়।

এই পোস্টটি https://stackoverflow.com/a/15163760 উল্লেখ করেছে যে অস্ট্রেলিয়ান অ্যাস্ট্রোনমিক্যাল অবজারভেটরির সফ্টওয়্যার গ্রুপের কেথ শর্টরিজ (ধন্যবাদ) ম্যাকোসের জন্য উক্ত ফাংশনটির একটি প্রয়োগ লিখেছেন যা এখানে পাওয়া যাবে https://github.com/attie / libxbee3 / গাছ / মাস্টার / xsys_darwin

দুটি ফাইল এতে ডাউনলোড করুন ${LIBAVDIR}/libavdeviceএবং তারপরে হেডার ফাইলটিতে নিম্নলিখিত লাইনটি যুক্ত করুন sem_timedwait.h:

int sem_timedwait(sem_t *sem, const struct timespec *abs_timeout);

তারপরে Makefile এডিট করুন ${LIBAVDIR}/libavdeviceএবং ভেরিয়েবলের sem_timedwait.oশেষে যুক্ত করুনOBJS

কনফিগার এবং সব করা

তুমি যেতে পারো.

রেকর্ডের জন্য, আমি নিম্নলিখিত কনফিগার কমান্ডটি ব্যবহার করেছি:

./configure --extra-cflags=-I/opt/local/include --extra-ldflags=-L/opt/local/lib --enable-gpl --enable-libx264 --enable-libxvid --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-nonfree --enable-libfaac --enable-libmp3lame --enable-libspeex --enable-libvorbis --enable-libtheora --enable-libvpx --enable-libopenjpeg --enable-libfreetype --enable-doc --enable-gnutls --prefix=/opt/local

সতর্কতা: আমি বলতে বা গ্যারান্টি দিতে পারছি না যে উল্লিখিত প্রয়োগটি sem_timedwait()সঠিক হয়েছে এবং / অথবা libavসিস্টেমের অন্য কোনও অংশে বা লাইব্রের লাইব্রেরির সাথে লিঙ্কযুক্ত যেগুলি এখন sem_timedwait()সেখানে বাস্তবায়ন করেছে তার কোনও প্রতিক্রিয়া নেই will !!!! পরবর্তীগুলির জন্য আমি sem_timedwait()আপনার অনুলিপি libavএবং কেথের প্রয়োগের যেকোন জায়গায় নাম বদলের পরামর্শ দিতে পারি । এছাড়াও sem_timedwait.o থেকে অন্য কোনও প্রতীক রফতানি করা হয়েছে কিনা তাও পরীক্ষা করে দেখুন এবং সেগুলি পুনরায় নামকরণ করুন।

কীথ শর্টরিজ এর বাস্তবায়ন থেকে নতুন, নামকরণ করা প্রতীকগুলি এখানে sem_timedwait():

sem_timedwait_keith, timeoutThreadMain_keith, triggerSignal_keith, ignoreSignal_keith, timeoutThreadCleanup_keith

( _keithমূল নামগুলি পেতে মুছুন)। শুধুমাত্র রেফারেন্স sem_timedwait()মধ্যে libav(বলেন সংস্করণের জন্য) হয় jack.c


0

Https (অনেকগুলি, এই দিনগুলিতে) হোস্ট করা ভিডিওগুলির জন্য, নিশ্চিত করুন যে আপনি ওপেনএসএসএল সমর্থন দিয়ে অ্যাভকনভি নির্মাণ করেছেন:

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