একটি এমপি 3 এর শেষে নীরবতা যুক্ত করুন


12

আপনারা কেউ কি লিনাক্সে এমপিথ্রি শেষে একটি নির্দিষ্ট সময়কালের নীরবতা যুক্ত করার উপায় জানেন? উদাহরণস্বরূপ MEncoder, FFmpeg ইত্যাদি ব্যবহার করবেন?

এটি কমান্ড লাইন হওয়া দরকার কারণ এটি স্ক্রিপ্ট হবে এবং এটি আমাদের সার্ভারে চলবে।

আমি এটিকে ঘিরে গুগল করেছিলাম এবং সর্বাধিক আমি যা করতে পারি তা হ'ল সক্সেpad ফাংশনটি ব্যবহার করা তবে এটি এমপি 3 এর সাথে কাজ করবে না।

আমি এটিকে ডাব্লুএভিতে রূপান্তর করতে, সোএক্স ব্যবহার করতে, আবার এটিকে আবার এমপি 3 তে রূপান্তর করতে এবং মেটাডেটা (বিয়োগ সময়কালের) মূল থেকে নতুন এমপি 3 এ অনুলিপি করতে পারি। তবে, এর জন্য কোনও স্ক্রিপ্ট লেখার আগে আমি ভেবেছিলাম একটি হিট সমাধান আছে কিনা তা আমি দেখতে পাচ্ছি।


2
আমি মনে করি আপনি এমপি 3 ডায়রেক্টকুট (কেবল উইন্ডোজ, তবে তারা বলে যে এটি ওয়াইনের অধীনে লিনাক্সের সাথে সামঞ্জস্যপূর্ণ) এর মাধ্যমে এমন কিছু অর্জন করতে পারে , যা সাউন্ড ডেটা পুনরায় সংক্ষেপণ এড়িয়ে যায়। আপনি যদি এমপি 3 -> ডাব্লু ওয়াভি -> এমপি 3 যেতে চান তবে আপনি ইতিমধ্যে এমপি 3 সংক্ষেপিত ডেটা স্ট্রিমটি পুনরায় সংক্ষেপণ করতে যাবেন, পথে বেশ কয়েকটি গুণমান হারাবেন।
ব্রেকথ্রু

ধন্যবাদ। আপনি কমান্ড লাইন থেকে ওয়াইনের মাধ্যমে উইন্ডোজ সফ্টওয়্যার চালাতে পারবেন? আমি যদি আমাদের সার্ভারে ওয়াইন ইনস্টল করতে নারাজ থাকি তবে সম্ভব হলে ওয়াইন সলিউশনগুলি এড়াতে আমি পছন্দ করব।
ম্যাক্স উইলিয়ামস

হুম, আপনি যদি ওয়াইন রুটটি ইতিমধ্যে না পান তবে আপনি এড়াতে চাইবেন। ওয়াইন নিজেই একটি মোটামুটি বড় ডাউনলোড, একটি সাধারণ এমপি 3 কাটা / মার্জ সরঞ্জামের জন্য একটি ভাল বা দুটি মেগাবাইটের উপরে। আমি নিশ্চিত যে এখানে একটি সমতুল্য, লিনাক্স-নেটিভ সমাধান রয়েছে। যদি আমি কোনও অতিরিক্ত সরঞ্জামাদি পাই তবে আমি আপনাকে অবশ্যই জানাতে চাই।
ব্রেকথ্রু

উত্তর:


9

আপনি SoX এর padযুক্তি এবং নিম্নলিখিত সিনট্যাক্স দিয়ে এত সহজেই করতে পারেন :

sox <oldfile> <newfile> pad <silence at beginning of file> <silence at end of file>

উদাহরণ:

sox mp3.mp3 mp3withsilence.mp3 pad 0 1

সেই নীরবতাগুলি কয়েক সেকেন্ডের মধ্যে। (অন্যান্য ব্যবহারগুলি আলাদা সিনট্যাক্স ব্যবহার করে সম্ভব হয়, যাতে নির্দিষ্ট অবস্থানগুলিতে সেই নীরবতাগুলি সন্নিবেশ করা যায়। আরও তথ্যের জন্য সক্স ডকুমেন্টেশন দেখুন))


আমার অবশ্যই এটিকে এমপিথ্রি ফাইলগুলির সাথে ঠিকঠাকভাবে পরীক্ষা করা উচিত (এমপি 3 ডিওডিং এবং এনকোডিংয়ের জন্য যথাক্রমে libmad-0.dll এবং libmp3lame-0.dll ইনস্টল করা হয়েছে।) যথাসম্ভব আমি লসলেস ফর্ম্যাট দিয়ে কাজ করার পরামর্শ দিচ্ছি এবং কেবলমাত্র রূপান্তর করব কেবলমাত্র শেষে এমপি 3।
ফ্যাবিয়েন স্নাউয়ার্ট

সত্যিই দুর্দান্ত - ধন্যবাদ ফ্যাবিয়েন!
ম্যাক্স উইলিয়ামস

এ কি নিরর্থক?
জেরেমিয়া

আপডেট: আমি sox ম্যানপেজে পড়েছি যে এটি কোনও অভ্যন্তরীণ ফর্ম্যাটে রূপান্তরিত হয় আবার পুনরায়
এনকোডে

এমপি 3 একটি ক্ষতির ফর্ম্যাট। ক্ষতিকারক বিন্যাসে এনকোডিং এবং পুনরায় এনকোডিং অডিওর গুণমানকে ধীরে ধীরে হ্রাস করবে (আপনি তা শুনে থাকুন না কেন) এইরূপে, ক্ষতিহীন ফর্ম্যাটগুলির সাথে কাজ করা ভাল এবং কেবল একবারই ক্ষতিগ্রস্ত বিন্যাসে এনকোড করা উচিত। ক্ষতিগ্রস্থ অডিও কোডকের তালিকার জন্য : en.wikedia.org/wiki/Lossy_compression# অডিও এবং ক্ষতিহীন অডিও কোডেকগুলির একটি তালিকা en.wikedia.org/wiki/Lossless_compression#Audio
ফ্যাবিয়েন স্নোওয়ার্ট

15

Ffmpeg এর সাহায্যে আপনি নীরবতা তৈরি করতে অ্যাভালসিআরসি ফিল্টারটি ব্যবহার করতে পারেন এবং তারপরে দ্বিতীয় কমান্ডে বিনষ্টভাবে সংহত করার জন্য কনক্যাট প্রোটোকল ব্যবহার করুন:

ffmpeg -filter_complex aevalsrc=0 -t 10 10SecSilence.mp3
ffmpeg -i "concat:input.mp3|10SecSilence.mp3" -c copy output.mp3

আপনি -t 10যে সেকেন্ডে যা পছন্দ করতে চান তা পরিবর্তন করে আপনি নীরবতার দৈর্ঘ্য নিয়ন্ত্রণ করতে পারেন । অবশ্যই, আপনাকে কেবল একবার নীরবতা তৈরি করতে হবে, তারপরে আপনি ফাইলটি চারপাশে রাখতে পারেন এবং এটির প্রতিটি ফাইলকে প্যাড করতে ব্যবহার করতে পারেন। আপনি কনক্যাট ডেমাক্সারটিও সন্ধান করতে চাইতে পারেন - এটি কিছুটা বেশি প্রসেসর-নিবিড়, তবে শেল স্ক্রিপ্টে ফেলে রাখা আপনার পক্ষে সহজতর হতে পারে।

আপনি যদি এটি একটি একক কমান্ডে করতে চান, আপনি কনক্যাট ফিল্টারটি ব্যবহার করতে পারেন - এটির জন্য আপনাকে আপনার অডিওটি পুনরায় এনকোড করতে হবে (যেহেতু ফিল্টারগ্রাফগুলি বেমানান নয় -codec copy), সুতরাং উপরের বিকল্পটি সম্ভবত আপনার পক্ষে সেরা। তবে কাঁচা পিসিএম নিয়ে কাজ করা, অডিও এনকোড করার আগে শেষ পর্যন্ত নীরবতা যোগ করার জন্য যে কেউ এটির জন্য দরকারী হতে পারে:

ffmpeg -i input.mp3 \
-filter_complex 'aevalsrc=0::d=10[silence];[0:a][silence]concat=n=2:v=0:a=1[out]' \
-map [out] -c:a libmp3lame -q:a 2 output.mp3

d=10আপনি যা চান সময় (সেকেন্ডে) পরিবর্তন করে নীরবতার দৈর্ঘ্য নিয়ন্ত্রণ করুন । আপনি যদি এই পদ্ধতিটি ব্যবহার করেন তবে আপনি এই FFmpeg এমপি 3 এনকোডিং গাইডটি দরকারী দেখতে পারেন।


ধন্যবাদ @ দেবী আমি কেবল এটি চেষ্টা করেছি এবং নিম্নলিখিতগুলি পেয়েছি - সর্বাধিক-থিংকপ্যাড-লিনাক্স: ~ f ffmpeg -filter_complex aevalsrc = 0 -t 4.61 ননশন.এমপি 3ffmpeg version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers built on Nov 6 2012 16:51:33 with gcc 4.6.3 *** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead. Unrecognized option 'filter_complex' Failed to set value 'aevalsrc=0' for option 'filter_complex'
ম্যাক্স উইলিয়ামস

@ ম্যাক্স প্রথমত, আপনি আসলে লিবাভ প্রকল্পের অ্যাভকনভ ব্যবহার করছেন - তারা এফএফপিপেগের একটি কাঁটা যা মূল প্রকল্পের পরিবর্তে দেবিয়ান এবং উবুন্টু ব্যবহার করছে এবং তারা এফএফপিজেগের একটি পঙ্গু সংস্করণ সরবরাহ করে। ব্যবহার করার চেষ্টা করুন avconvপরিবর্তে - সিনট্যাক্স, একই হতে হবে শুধু প্রতিস্থাপন ffmpegসঙ্গে avconv
দুর্ঘটনা

যদি এটি কাজ না করে, ffmpeg এর নতুন সংস্করণে আপগ্রেড করার চেষ্টা করুন। যেহেতু আপনি উবুন্টুতে রয়েছেন, আপনার এই পিপিএ ব্যবহার করতে সক্ষম হওয়া উচিত , বা খুব সাম্প্রতিক সংস্করণের জন্য আপনি এটি উত্স থেকে সংকলন করতে পারেন ।
15'6 এ দুর্ঘটনা

1
@ ম্যাক্সউইলিয়ামস বা আপনি একটি স্ট্যাটিক বিল্ড ডাউনলোড করতে পারেন , যা আপনাকে প্রথমে সংকলন করতে হবে না। কেবল ডাউনলোড করুন, নিষ্কাশন করুন, ব্যবহার করুন।
স্লাইক করুন

1
ভবিষ্যতের রেফারেন্সের জন্য: আপনি যদি আমার মতো ত্রুটির মুখোমুখি হন তবে একক উদ্ধৃতিগুলি ডাবল কোটগুলির সাথে প্রতিস্থাপনের চেষ্টা করুন
SZT
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.