2014-07-23 10 views
5

का उपयोग करके फ़ाइल की मात्रा में वृद्धि करना मेरा लक्ष्य एक ऐसी स्क्रिप्ट रखना है जो ऑडियो फ़ाइल लेता है और इसकी मात्रा 50% बढ़ा देता है।वीएलसी सीएलआई

मैं वर्तमान में निम्नलिखित AutoHotkey स्निपेट का उपयोग करके एमपी 3 के लिए एक फ़ाइल सांकेतिक शब्दों में बदलना करने के लिए:

run_string := "bash -c ""\""c:\Program Files\VideoLAN\VLC\vlc.exe\"" -I dummy \""" . file_path . "\"" --sout='#transcode{acodec=mp3,vcodec=dummy}:standard{access=file,mux=raw,dst=\""" . file_path . ".mp3\""}' vlc://quit""" 

मैं इस लाइन को कैसे संशोधित नहीं कर सकते हैं एमपी 3 के लिए एक ही एनकोड, लेकिन यह भी 50% से फ़ाइल की मात्रा को बढ़ाने के लिए? मैंने --volume 150 सेट करने का प्रयास किया लेकिन यह फ़ाइल फ़ाइल बना दिया, जबकि मैं खेलना नहीं चाहता, मैं इसे उस वॉल्यूम से सहेजना चाहता हूं।

यदि आपके पास ऑडियो को संशोधित करने के लिए अन्य विंडोज-संगत टूल के लिए सुझाव हैं जो यह कर सकते हैं, (यह कैसे करें इसे करने के निर्देशों के साथ) मुझे उनके बारे में सुनकर खुशी होगी।

उत्तर

4

मैं आपको ffmpeg का उपयोग करने का सुझाव देता हूं। यह बहुत शक्तिशाली है, क्रॉस प्लेटफार्म 32 या 64 बिट, ऑडियो और वीडियो कनवर्टर। Zeranoe FFmpeg - Builds

नीचे नमूना आदेश वीडियो से ऑडियो निकालने के लिए काम करते हैं, या ऑडियो कनवर्टर वॉल्यूम बढ़ने या घटते समर्थन के साथ डाउनलोड किया जा सकता है। एमपी 3 के लिए वीडियो से

निकालें ऑडियो, या एमपी 3 के लिए ऑडियो कन्वर्ट (नमूना InputFilePath_VideoOrAudio = "ई: \ video.mp4" या "ई: \ audio.m4a")

e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec libmp3lame -ab 192k -ar 48000 -sn -dn -vn "E:\out.mp3" 

निकालें ऑडियो से -af "वॉल्यूम = 1.5" पैरामीटर जोड़ने के दौरान एमपी 3 में वीडियो और वॉल्यूम 150% बढ़ाएं।

e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec libmp3lame -ab 192k -ar 48000 -sn -dn -vn -af "volume=1.5" "E:\out.mp3" 

ऑडियो कनवर्टर मानकों की सूची (एमपी 3, ogg, AC3, अर्थोपाय अग्रिम, FLAC, wav, AIFF, m4a ....)। ऑडियो में कनवर्ट करते समय वॉल्यूम लेवल को बदलने के लिए -af "वॉल्यूम = वॉल्यूम वैल्यू" पैरामीटर।

VolumeValue = 0.5 कमी मात्रा 50% से

VolumeValue = 1.5 वॉल्यूम बढ़ाएं% 150

VolumeValue = 2.0 वॉल्यूम बढ़ाएं% 200 और इतने पर।

e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec libmp3lame -ab 192k -ar 48000 -sn -dn -vn -af "E:\out.mp3" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec ac3 -ab 192k -ar 48000 -sn -dn -vn "E:\out.ac3" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -f ogg -acodec libvorbis -ab 192k -ar 48000 -sn -dn -vn "E:\out.ogg" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec wmav2 -ab 192k -ar 48000 -sn -dn -vn "E:\out.wma" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec flac -sn -dn -vn "E:\out.flac" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -sn -dn -vn "E:\out.wav" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -f aiff -sn -dn -vn "E:\out.aiff" 
e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec aac -ab 192k -ar 48000 -sn -dn -vn "E:\out.m4a" 

नोट 1: कुछ codecs इस तरह के मामले आप -strict प्रयोगात्मक या -strict -2 मापदंडों का उपयोग करना चाहिए में प्रयोगात्मक हो सकता है।

नोट 2:-ab पैरामीटर ऑडियो बिट दर का मतलब है। कुछ डिवाइस ऑडियो फ़ाइल नहीं चला सकते हैं कि बिट दर -ab 192k से अधिक है। 44100 -ar मानकों के साथ -ab 128k या -ab 192k का प्रयोग ऑडियो फ़ाइल है कि बजाने मोबाइल उपकरणों के सबसे किया जा सकता है निर्माण करने के लिए। -ac 2 पैरामीटर का अर्थ स्टीरियो -ac 1 का मतलब मोनो है।

-ss 00:00:00 और आयकर मापदंडों इनपुट फ़ाइल उपयोग के विशिष्ट भाग कन्वर्ट करने के लिए। -ss का अर्थ है -t से प्रारंभ अवधि का मतलब है। महत्वपूर्ण: पैरामीटर -ss से पहले मैं पैरामीटर कहां रखा चाहिए, अन्यथा ffmpeg-ss स्थिति धीरे-धीरे करना चाहता है।

नमूने: को लगता है कि इनपुट फ़ाइल अवधि 00:20:00 (20 मिनट)

केवल -ss 00:05:00 साधनों का उपयोग 5 मिनट से शुरू की समाप्त करने के लिए इनपुट फ़ाइल कन्वर्ट है इनपुट फ़ाइल। आउटपुट फाइल की अवधि 15 मिनट होगी।

00:05:00 -ss साथ आयकर 120 या का उपयोग कर आयकर 00:02:00 साधन 120 सेकंड में परिवर्तित, 5 मिनट से शुरू

। आउटपुट फाइल की अवधि 120 सेकंड होगी।

e:\ffmpeg\ffmpeg.exe -y -ss 00:05:00 -i "InputFilePath_VideoOrAudio" -t 120 -acodec libmp3lame -ab 192k -ar 48000 -sn -dn -vn -af "E:\out.mp3" 

नोट:-y पहले से मतलब है हाँffmpeg को की हाँ/इस तरह के आउटपुट फ़ाइल के रूप में कोई सवाल भी मौजूद हैं, से अधिक लिखना?-y पैरामीटर ffmpeg आउटपुट फ़ाइल लिखते हैं यदि यह उपयोगकर्ता से पूछे बिना पहले से मौजूद है।

-sn उपशीर्षक, -vn अक्षम वीडियो, -dn आउटपुट फ़ाइल के लिए अक्षम डेटा धाराओं अक्षम करता है।

+0

@ एससीआईएस पूछताछकर्ता ने कहा कि ** यदि आपके पास अन्य विंडोज-संगत टूल के लिए सुझाव हैं जो ऑडियो को संशोधित कर सकते हैं यह, (_ के साथ में यह कैसे करें इस पर निर्देश I) मुझे उनके बारे में सुनकर खुशी होगी। ** इसलिए मैंने यह समझाने की कोशिश की कि जितना संभव हो सके ffmpeg का उपयोग करें – khan

3

तुम सिर्फ एक CLI उपकरण चाहते हैं तो आपको ffmpeg इस्तेमाल कर सकते हैं:: आप उत्पन्न फ़ाइल पर एक अलग पास के रूप में इस चला सकते हैं

ffmpeg.exe -i test.mp3 -af volume=1.5 loud.mp3 
       ^  ^  ^
       input new volume level output name 

आप सक्षम होने के लिए चाहते हैं, तो इसे प्रोग्रामेटिक रूप से करने के लिए, अपनी प्रोफ़ाइल को देखते हुए मैंने यह अनुमान लगाया कि पायथन एक समस्या नहीं होनी चाहिए :)

तो आप अच्छे pydub मॉड्यूल का उपयोग ffmpeg (या) के साथ कर सकते हैंजो यह भी समर्थन करता है) आपके कार्य के लिए।

उदाहरण के लिए:

from pydub import AudioSegment 
AudioSegment.converter = r"C:\PATH_TO_FFMPEG_DIR\bin\ffmpeg.exe" 
sound = AudioSegment.from_mp3("test.mp3") # <- the input file 
new = sound.export("loud.mp3", format="mp3", parameters=["-vol", "384"]) # 384 <-> 150% volume 
new.flush() 
new.close() 

384 के लिए कारण यह है कि ffmpeg दस्तावेज़ में कहा गया है कि

-vol मात्रा परिवर्तन ऑडियो वॉल्यूम (256 = सामान्य)

तो 256*1.5 = 384

इस पर परीक्षण किया गया मेरी विंडोज 7 मशीन अभी ...

उम्मीद है कि इससे मदद मिलती है।

1

वीएलसी में "--वॉल्यूम" विकल्प वास्तव में आउटपुट वीडियो की मात्रा को नहीं बदलता है जैसा कि आपको लगता है कि यह होगा। आप क्या करना चाहते हैं कंप्रेसर फ़िल्टर जोड़ें और फिर "कंप्रेसर-makup-gain" सेट करें। वीडियो को कितनी जोर से आप चाहते हैं इस पर निर्भर करते हुए इसे 1-24 से एक मान पर सेट करें। तो अपने आदेश कुछ इस तरह होगा:

run_string := "bash -c ""\""c:\Program Files\VideoLAN\VLC\vlc.exe\"" -I dummy \""" . file_path . "\"" --sout='#transcode{acodec=mp3,vcodec=dummy,afilter=compressor}:standard{access=file,mux=raw,dst=\""" . file_path . ".mp3 --compressor-makeup-gain=20\""}' vlc://quit""" 

वैसे, किसी को जो वीएलसी उपयोग करने के लिए कैसे एक वीडियो फ़ाइल में ऑडियो की मात्रा बढ़ाने के लिए यह पता लगाने की कोशिश कर रहा है के लिए है, तो यहां आप ऐसा कर सकते है :

"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" yoursourcefile.mp4 :sout=#transcode{acodec=mp3,ab=128,channels=2,samplerate=44100,afilter=compressor}:file{dst=outputfilename.mp4} :sout-all :sout-keep --compressor-makeup-gain=20

"yoursourcefile.mp4" और अपने खुद के फ़ाइल नाम के साथ "outputfilename.mp4" बदलें। मेरे अनुभव में, वीएलसी ने इस आदेश को चलाने के लगभग आधा समय दुर्घटनाग्रस्त हो गया, इसलिए यदि आप इसे क्रैश करते हैं तो आपको इसे एक से अधिक बार कोशिश करने की आवश्यकता हो सकती है। कि dir पर सभी फ़ाइलों की मात्रा में वृद्धि करने के लिए एक निर्देशिका पर

1

भागो इस एक-एक करके (वरना यह सब सीपीयू को खा जाएगा)

% के लिए

च में (*) है (शुरू/प्रतीक्षा करें " "" सी: \ प्रोग्राम फ़ाइलें (x86) \ VideoLAN \ VLC \ vlc.exe "% f : दक्षिण = # ट्रांसकोड {एसीओडीसी = एमपी 3, afilter = कंप्रेसर}: फ़ाइल {dst = बूस्ट% f} : दक्षिण- सब: दक्षिण-रख-प्ले-एंड-एक्जिट - कॉम्प्रेसर-मेकअप-लाभ = 10)