Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Audio 增加一个文件';使用VLC CLI创建卷_Audio_Vlc - Fatal编程技术网

Audio 增加一个文件';使用VLC CLI创建卷

Audio 增加一个文件';使用VLC CLI创建卷,audio,vlc,Audio,Vlc,我的目标是有一个脚本,它可以接收音频文件并将其音量增加50% 我目前使用以下自动热键片段将文件编码为MP3: 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

我的目标是有一个脚本,它可以接收音频文件并将其音量增加50%

我目前使用以下自动热键片段将文件编码为MP3:

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"""
我怎样才能修改这一行,使其不仅能编码成mp3,还能将文件的音量增加50%?我尝试设置
--volume 150
,但它只是让文件播放,虽然我不想播放,但我想让它与该卷一起保存


如果您有其他与Windows兼容的工具修改音频的建议(以及如何修改音频的说明),我很高兴听到这些建议。

我相信mp3gain有一个命令行选项。您可以将其作为对生成的文件的单独传递来运行:


如果您只需要CLI工具,则可以使用:

如果您希望能够以编程方式完成此任务,请查看您的配置文件,我推断python不应该是一个问题:)

因此,您可以将nice模块与(或者它也支持)一起用于您的任务

例如:

从pydub导入音频段
AudioSegment.converter=r“C:\PATH\u TO\u FFMPEG\u DIR\bin\FFMPEG.exe”

声音=音频片段。从mp3(“test.mp3”)#我建议您使用ffmpeg。它是非常强大的,跨平台的32或64位音频和视频转换器。可从

下面的示例命令用于从视频中提取音频,或支持音量增大或减小的音频转换器

将音频从视频提取到MP3,或将音频转换为MP3(示例InputFilePath\u VideoOrAudio=“e:\video.mp4”或“e:\audio.m4a”)

将音频从视频提取到MP3并将音量增加150%,同时提取add-af“volume=1.5”参数

e:\ffmpeg\ffmpeg.exe -y -i "InputFilePath_VideoOrAudio" -acodec libmp3lame -ab 192k -ar 48000 -sn -dn -vn -af "volume=1.5" "E:\out.mp3"
音频转换器参数列表(mp3、ogg、ac3、wma、flac、wav、aiff、m4a……)。要在转换为音频时更改音量,请添加-af“volume=VolumeValue”参数

体积值=0.5将体积减少50%

体积值=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:某些编解码器可以是实验性的,在这种情况下,您应该使用-strict-experional-strict-2参数

注2:-ab参数表示音频比特率。某些设备无法播放比特率大于-ab 192k的音频文件。使用-ab 128k-ab 192k-ar 44100参数生成可在大多数移动设备上播放的音频文件-ac 2参数表示立体声-ac 1表示单声道

要转换输入文件的特定部分,请使用-ss 00:00:00-t参数-ss表示开始时间-t表示持续时间重要提示:参数-ss应置于-i参数之前,否则ffmpeg会缓慢地搜索-ss位置

示例:假设输入文件的持续时间为00:20:00(20分钟)

仅使用-ss 00:05:00表示从输入文件的第5分钟开始转换到输入文件的末尾。输出文件的持续时间为15分钟

使用-ss 00:05:00-t 120-t 00:02:00表示从第5分钟开始转换120秒。输出文件的持续时间为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禁用输出文件的数据流。

VLC中的“-volume”选项实际上不会像您想象的那样更改输出视频的音量。您要做的是添加压缩机过滤器,然后设置“压缩机补偿增益”。根据您希望视频的音量,将其设置为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"""
顺便说一句,对于任何试图找出如何使用VLC来增加视频文件中音频的音量的人,下面是您可以做到的方法:

“C:\Program Files(x86)\VideoLAN\VLC\VLC.exe”yoursourcefile.mp4:sout=#transcode{acodec=mp3,ab=128,channels=2,samplerate=44100,afilter=compressor}:文件{dst=outputfilename.mp4}:sout all:sout keep--compressor补偿增益=20


用您自己的文件名替换“yoursourcefile.mp4”和“outputfilename.mp4”。根据我的经验,VLC大约在我运行此命令的一半时间内崩溃,因此,如果它在您身上崩溃,您可能需要多次尝试它。

在一个目录上运行此命令,以逐个增加该目录上的所有文件量(否则会消耗所有CPU)

对于(*)中的%f,执行(启动/等待“”)C:\Program Files (x86)\VideoLAN\VLC\VLC.exe“%f” :sout=#转码{acodec=mp3,afilter=compressor}:文件{dst=Boost%f} :sout all:sout keep--播放和退出--压缩机补偿增益=10)

@Scis asker表示,如果您对其他与Windows兼容的工具有任何建议,可以修改音频(以及如何修改音频的说明),我很高兴听到这些建议。所以我试图解释如何尽可能多地使用ffmpeg
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"
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"""