Ffmpeg के साथ साइन लहर कैसे उत्पन्न करें?


13

मैं FFmpeg के साथ साइन (साइनसॉइड) तरंग के साथ एक ऑडियो फ़ाइल उत्पन्न करना चाहूंगा। मुझे पता है कि एक sineफिल्टर है, लेकिन जहां तक ​​यह जाता है।

मैंने कोशिश की:

fmpeg -filter "sine=48:1:5" -c:a pcms16le test

PCM S16LE प्रारूप में 48kHz पर 5 सेकंड का ऑडियो बनाने के लिए, लेकिन मुझे निम्न त्रुटि संदेश मिला:

आउटपुट फ़ाइल # 0 में कोई भी स्ट्रीम नहीं है

और testफ़ाइल खाली है।


आप इसके साथ एक फ़ाइल बनाए बिना एक साइन भी खेल सकते हैं ffplay: stackoverflow.com/questions/5109038/linux-sinus-audio-generator/…
Ciro Santilli 冠状 s 审查 六四 法轮功 法轮功

जवाबों:


23

5 सेकंड की अवधि के लिए 1000 हर्ट्ज सिग्नल उत्पन्न करने के लिए इसका उपयोग करें:

ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" test.wav

आप जोड़ सकते हैं -c:a pcm_s16le:

ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" -c:a pcm_s16le test.wav    

नमूना दर 48 KHz पर सेट करने के लिए:

ffmpeg -f lavfi -i "sine=frequency=1000:sample_rate=48000:duration=5" -c:a pcm_s16le test.wav

2
आप उदाहरण के लिए जोड़कर आयाम भी सेट कर सकते हैं: -af "volume=-18dB"(-18dBFS)।
mivk

6

नेक्रो-आईएनजी के लिए क्षमा याचना, लेकिन इस घटना में कि भविष्य में कोई व्यक्ति इसे ढूंढता है, यदि आप स्टीरियो में ऐसा करना चाहते हैं, तो आप निम्नलिखित कार्य करेंगे:

ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" -ac 2 output.wav

आप इसके -filter_complexसाथ भी उपयोग कर सकते हैं amerge:

ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" -filter_complex "[0:a][0:a]amerge=inputs=2[aout]" -map "[aout]" output.wav
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.