欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 锐评 > mkv转码mp4(ffmpeg工具)

mkv转码mp4(ffmpeg工具)

2025/2/24 22:09:24 来源:https://blog.csdn.net/qq_35215728/article/details/145233878  浏览:    关键词:mkv转码mp4(ffmpeg工具)

基于windows,Linux也可以用,都是命令行

下载路径(https://github.com/BtbN/FFmpeg-Builds/releases)
下载安装包:ffmpeg-n6.1-latest-win64-lgpl-6.1.zip,(根据自己的平台选择下载)并解压到对应目录,拷贝解压后的目录,添加到环境变量

新增配置:D:\ffmpeg-n6.1-latest-win64-lgpl-6.1(换成你自己的路径)

path配置:%FFMPEG_HOME%/bin

然后打开终端输入:ffmpeg -version,看是否有以下内容输出,有则配置成功

C:\Users\actor>ffmpeg -version
ffmpeg version n6.1.2-21-gac60bc2bb0-20250117 Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 14.2.0 (crosstool-NG 1.26.0.120_4d36f27)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-version3 --disable-debug --disable-w32threads --enable-pthreads --enable-iconv --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-libxml2 --enable-lzma --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-libaribb24 --disable-avisynth --enable-chromaprint --enable-libdav1d --disable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --disable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-libzmq --enable-lv2 --enable-libvpl --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --disable-librubberband --enable-schannel --enable-sdl2 --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --enable-vaapi --disable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --disable-libx264 --disable-libx265 --disable-libxavs2 --disable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs=-lgomp --extra-ldflags=-pthread --extra-ldexeflags= --cc=x86_64-w64-mingw32-gcc --cxx=x86_64-w64-mingw32-g++ --ar=x86_64-w64-mingw32-gcc-ar --ranlib=x86_64-w64-mingw32-gcc-ranlib --nm=x86_64-w64-mingw32-gcc-nm --extra-version=20250117
libavutil      58. 29.100 / 58. 29.100
libavcodec     60. 31.102 / 60. 31.102
libavformat    60. 16.100 / 60. 16.100
libavdevice    60.  3.100 / 60.  3.100
libavfilter     9. 12.100 /  9. 12.100
libswscale      7.  5.100 /  7.  5.100
libswresample   4. 12.100 /  4. 12.100

开始转码

命令行输入

D:\Download>ffmpeg -i 练习.mkv -vcodec copy -acodec copy 练习.mp4

批量转码

我自己写的脚本,把一个目录下所有的mkv文件全部转码,只需要把脚本拷贝到存有mkv文件的目录下执行即可。装有git的 Windows 电脑也可以执行(在git命令行中执行)。

#!/bin/bash
# 设置目标文件夹
target_directory="."
# 遍历所有 .mkv 后缀的文件
for file in "$target_directory"/*.mkv; do# 确保是文件而不是目录if [ -f "$file" ]; then# 提取文件名并去掉路径filename=$(basename "$file")# 去掉文件名中的空格new_filename=$(echo "$filename" | tr -d ' ')# 如果文件名发生了变化,重命名文件if [ "$filename" != "$new_filename" ]; thenmv "$file" "$target_directory/$new_filename"echo "Renamed: $filename -> $new_filename"fifi
done
# 再次遍历文件夹,过滤出所有 .mkv 后缀的文件
echo "Remaining MKV files after renaming:"
for file in "$target_directory"/*.mkv; do# 确保是文件而不是目录if [ -f "$file" ]; theninput_file_name="$(basename "$file")"output_file_name="$(basename "$file" .mkv)"echo "转换:$input_file_name"ffmpeg -i "$input_file_name" -vcodec copy -acodec copy "$output_file_name.mp4" >> ffmpeg_output.log 2>&1fi
done

ffmpeg 是一个非常强大的工具,支持几乎所有音频和视频格式的相互转换。以下是一些常见的格式和编码器,ffmpeg 支持它们之间的相互转换;你可以根据自己的需求选择适当的编解码器和容器格式来进行转换。通过简单的命令,ffmpeg 可以处理非常复杂的格式转换任务。

1. 视频格式转换

ffmpeg 支持广泛的视频格式之间的转换,包括但不限于:

  • 视频格式:

    • .mp4 (H.264/AAC)
    • .mkv (H.264, H.265, VP9 等)
    • .avi (DivX, XviD, MJPEG 等)
    • .mov (H.264, ProRes, HEVC 等)
    • .flv (Flash Video)
    • .webm (VP8, VP9)
    • .wmv (Windows Media Video)
    • .mpg/.mpeg (MPEG-1, MPEG-2)
    • .3gp (3GPP)
    • .ogv (Theora)
  • 音频格式

    • .mp3 (MPEG-1 Audio Layer 3)
    • .aac (Advanced Audio Codec)
    • .ogg (Ogg Vorbis)
    • .flac (Free Lossless Audio Codec)
    • .wav (Waveform Audio)
    • .m4a (Apple Audio)
    • .alac (Apple Lossless Audio Codec)
    • .wma (Windows Media Audio)
    • .opus (Opus)
  • 转码示例:

    • wav转换为 mp3

      ffmpeg -i input.wav -acodec libmp3lame output.mp3
      
    • ogg转换为 .flac

      ffmpeg -i input.ogg -acodec flac output.flac
      

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词