如何在Linux上使用mpmpeg将mp4 / mkv / WebM转换为mp3

有人希望在Linux上将mp4 / mpv / WebM文件转换为mp3。如果您想在Linux系统上实现该目标,请不用担心,因为我为您提供了一个很好的解决方案。 FFmpeg允许您将媒体文件从一种格式转换为另一种格式。

在Linux上,有一个简单的bash脚本可用于将mp4 / mkv / WebM媒体文件转换为mp3。此脚本可以在几秒钟内将mp4,mkv和WebM视频格式转换为mp3音频格式。

先决条件

  1. FFmpeg
  2. me脚

寻找一种在分发中获取ffmpeg和and脚的方法存在一个小挑战。但是,对于常见的Linux发行版,请检查下一部分。

步骤1:安装FFmpeg

对于Arch Linux用户,请安装先决条件。 ffmpeg和la子

sudo pacman -S lame ffmpeg

对于Ubuntu / Debian

sudo apt -y install ffmpeg lame

对于Fedora:

sudo dnf -y install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf -y install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf -y install ffmpeg ffmpeg-devel lame

对于CentOS 7

sudo yum -y install epel-release
sudo rpm -v --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
sudo yum install ffmpeg ffmpeg-devel lame

CentOS / RHEL 8:在CentOS / RHEL 8上安装FFmpeg

也可以通过手动编译安装 FFmpeg来源

步骤2:下载转换脚本

下载脚本 Github

wget https://raw.githubusercontent.com/jmutai/dotfiles/master/scripts/mp3con.sh

您也可以复制以下脚本片段。

#!/usr/bin/env bash

# My bash Script to convert mp4 to mp3
# By Josphat Mutai
# web: www.computingforgeeks.com
# email: [email protected]

# Requires
# ffmpeg installed
# lame installed
# Check https://computingforgeeks.com/how-to-convert-mp4-to-mp3-on-linux/

echo -ne """
1: Current directory
2: Provide directory
"""
echo ""
echo -n "Selection : "
read selection

case $selection in
    1)
	echo "Okay.."
	echo ""
	echo "Current dir is `pwd` "
	;;
    2)
    echo ""
    echo -n "Give diretory name: "
    read dir_name

# Check if given directory is valid
if [ -d $dir_name ]; then
    
    cd "${$dir_name}"
    echo "Current directory is `pwd` "
    echo 
else
    echo "Invalid directory, exiting.."
    echo ""
    exit 10
fi

    echo
    ;;
    
   *)
       echo
       echo "Wrong selection"
       exit 11
       ;;
esac

echo ""

# Create dir to store mp3 files if it doesn't exist
# First get the current directory name

current_dir=`pwd`
base_name=` basename "$current_dir"`

if [[ ! -d "$base_name"-mp3 ]]; then
    
echo "$base_name" | xargs  -d "n" -I {} mkdir {}-mp3
    echo ""
fi
echo ""


# Bigin to covert videos to mp3 audio files
# -d "n" > Change delimiter from any whitespace to end of line character 

find . -name "*.mp4" -o -name "*.mkv" -o -name "*.webm" | xargs  -d "n"  -I {} ffmpeg -i {} -b:a 320K -vn "$base_name"-mp3/{}.mp3 

# remove video extensions

cd "${base_name}"-mp3

for file_name in *; do      
    mv "$file_name" "`echo $file_name | sed  "s/.mp4//g;s/.mkv//g;s/.webm//g"`";
done

# Move audio directory to ~/Music

if [[ ! -d ~/Music ]]; then
    mkdir ~/Music
fi
cd ..

mv  "$base_name"-mp3 ~/Music/

# Check if conversion successfull

echo ""

if [[ $? -eq "0" ]];then
    echo " All files converted successfully"
else
    echo "Conversation failed"
    exit 1
fi

使脚本可执行。

chmod +x mp3con.sh

步骤3:在Linux上将mp4 / mkv / WebM媒体文件转换为mp3。

运行脚本(可以在包含mp4视频的文件夹中运行)

./mp3con.sh

或者简单地

sh mp3con.sh

您会看到类似

由于您正在包含要转换为mp3的视频文件的目录中运行脚本, 选项1。按Enter键并等待其完成。

如何在Linux上使用mpmpeg将mp4 / mkv / WebM转换为mp3

成功转换后,结果音频文件将保存在下面 〜/音乐 文件夹名称是包含扩展名视频文件的前一个文件夹的名称的目录 -mp3 终于

$ ls ~/Music/Gospel-mp3
'Broken Vessels (Amazing Grace) Hillsong UNITED from the Sea of Galilee-MlPuR-0XxiA.mp3'
'Hillsong United - '''Oceans''' (Live show at Caesarea)-HVAR85rorvU.mp3'
'Hosanna - From HOLY LAND in Jerusalem - Hillsong United-mqF1EhsBz0A.mp3'
'Jonathan Nelson - I Believe (Island Medley) (LIVE)-vDLByAnQ93Q.mp3'
'No Longer Slaves (Official Lyric Video) - Jonathan David & Melissa Helser - W....mp3'
'Travis Greene - Intentional (Official Music Video).mp3'

结论

您已经了解了如何使用FFmpeg在Linux系统上轻松将mp4 / mkv和WebM视频文件转换为mp3。你与ls 〜/音乐 新文件夹应该已经添加到目录中。感谢您阅读有关如何在Linux上将mp4 / mkv / WebM媒体文件转换为mp3的简短教程。希望对您有所帮助。

类似文章:

如何使用ytdl-webserver网络服务器下载youtube视频

Annie-Linux上最快的YouTube视频下载器

Sidebar