तो, मैं कैसे ffmpeg के साथ यह करने के लिए बाहर लगाना समाप्त हो गया । मामले में किसी और को कुछ बिंदु पर आश्चर्य हो रहा है, यहाँ है कैसे।
Btw: ये सभी एक फ़ोल्डर में 216 फाइलें हैं, और फ़ाइल नाम का एक क्रम संख्या है। कि डॉस लूपिंग के लिए यह थोड़ा आसान हो गया।
सबसे पहले मैंने एक सादा पाठ फ़ाइल बनाया था, जिसे temps.txt कहा जाता है , जिसमें यह केवल दो पंक्तियाँ हैं:
फ़ाइल temp1.mp3
फ़ाइल temp2.mp3
आप देखेंगे कि एक मिनट में क्या होता है।
फिर मैंने एक बैच फ़ाइल लिखी जो निर्देशिका में सभी फ़ाइलों के माध्यम से लूप करती है (ऊपर क्रमिक संख्या के आधार पर), और प्रत्येक पर दो ffmpeg ऑपरेशन चलाता है:
For / L %% i IN (1,1,216) DO (ffmpeg.exe
-y -i OriginalFile %% i.mp3 -ss 00: 03.81 -to 00: 08.83 -acodec कॉपी "temp1.mp3" -ss 00: 13.95 -acodec कॉपी "temp2.mp3" ffmpeg.exe
-y -safe 0 -f concat -i temps.txt -c copy NewFile %% i.mp3
)
पहला ऑपरेशन दो वांछित खंडों को पकड़ता है और उन्हें temp1.mp3 और temp2.mp3 पर कॉपी करता है (मैं उन्हीं दो फ़ाइलनामों का पुन: उपयोग करता रहा)। ffmpeg आपको एक कमांड लाइन पर दोनों वर्गों को अलग करने की अनुमति देता है, जो अच्छा है। इसके अलावा, आप ध्यान दें कि दूसरे भाग में केवल -ss
टाइमस्टैम्प है, और कोई -to
स्टैम्प नहीं है । यह केवल दूसरे टाइमस्टैम्प के रूप में फ़ाइल के अंत का उपयोग करने की अनुमति देता है।
दूसरा ऑपरेशन ffmpeg को temps.txt फाइल में देखने के लिए कहता है और वहां सूचीबद्ध दो फाइलों को समाप्त करता है। Temp फ़ाइल नामों का पुन: उपयोग करना इसीलिए है क्योंकि मैं अभी-अभी स्थिर temps.txt फ़ाइल बनाने में सक्षम था जो मैंने ऊपर बनाई थी।
मैंने इसे काफी स्पष्ट रूप से लिखा है (निर्देशिका में फ़ाइलों की संख्या को हार्ड-कोड करना, अस्थायी फ़ाइलों का पुन: उपयोग करना , कमांड लाइनों में -y ध्वज का उपयोग करना ), क्योंकि मुझे पता था कि मुझे वास्तव में क्या काम करना था, और मेरे पास इसका बैकअप था वैसे भी। यदि आप इसे पुनर्प्राप्त कर रहे हैं, तो आप उन चीजों के बारे में थोड़ा और नाजुक होना चाह सकते हैं।
साथ ही, मैंने इस प्रक्रिया में सभी मेटाडेटा खो दिए। शायद इसे संरक्षित करने का एक आसान तरीका है, लेकिन मुझे यह समझ में नहीं आया। मेरे लिए बस एक बार फिर से नई फाइलों में जोड़ना आसान है ( MP3Tag का उपयोग करके , सभी समय की सबसे बड़ी उपयोगिताओं में से एक)।
इसलिए यह अब आपके पास है।
Btw, कुछ लिंक जो मुझे यह पता लगाने में मदद करते हैं:
- मैंने ffmpeg से शुरुआत की - री-एन्कोडिंग के बिना ऑडियो फ़ाइल ट्रिम
- फिर मैं कल्पना ffmpeg प्रलेखन के साथ निर्दिष्ट करने के लिए बेला
- सहमति के लिए मुझे स्टैक ओवरफ्लो प्रश्न के इस उत्तर से बहुत कुछ मिला । सवाल वीडियो के बारे में था, जो बहुत अधिक जटिल है, लेकिन इस जवाब ने मुझे ऑडियो के बारे में जानने के लिए आवश्यक सब कुछ बता दिया। विशेष रूप से, मैंने दूसरी विधि का उपयोग किया जो इस उत्तर का वर्णन करता है।
- और अंत में, मैंने वास्तव में इसका उपयोग नहीं किया, लेकिन इस विकी पर कॉनकट कमांड के बारे में अधिक उपयोगी जानकारी है - जिसमें विंडोज या बैश पर एक सूची फ़ाइल को ऑटो-जनरेट करने के निर्देश भी शामिल हैं।
(उन जोड़ने के सुझाव के लिए @barlop को धन्यवाद।)
dir /s/b *.mp3 >filelist.txt