youtube_dl
# 查看可供下载信息列表
.\youtube-dl.exe -F "https://www.youtube.com/watch?v=xxxx"
# 选择视频+音频代号下载,如:
.\youtube-dl.exe 248+251-f "https://www.youtube.com/watch?v=xxxx"
# 如果FFmpeg已下载并放入环境路径下,则下载完成后会自动合并音视频
FFmpeg
# 手动合并视频示例:
# 合并视频input.mp4 与 音频input.wav 到output.avi
ffmpeg -i input.mp4 -i input.wav -c:v copy -c:a aac -strict experimental output.avi
# 将audio.wav替换掉视频video.mp4中的音频:
ffmpeg -i video.mp4 -i audio.wav -c:v copy -c:a aac -strict experimental -map 0:v:0 -map 1:a:0 output.mp4
# 合并两个音频
ffmpeg -i input1.mp3 -i input2.mp3 -filter_complex amerge -ac 2 -c:a libmp3lame -q:a 4 output.mp3
# 获取视频中的音频
ffmpeg -i input.mp4 -vn -y -acodec copy output.m4a
# 去掉视频中的音频
ffmpeg -i input.mp4 -an output.mp4
FFmpeg Options:
| Per-file main options: | - |
|---|---|
| -f fmt | force format |
| -c codec | codec name |
| -codec codec | codec name |
| -pre preset | preset name |
| -map_metadata outfile[,metadata]:infile[,metadata] | set metadata information of outfile from infile |
| -t duration | record or transcode "duration" seconds of audio/video |
| -to time_stop | record or transcode stop time |
| -fs limit_size | set the limit file size in bytes |
| -ss time_off | set the start time offset |
| -sseof time_off | set the start time offset relative to EOF |
| -seek_timestamp | enable/disable seeking by timestamp with -ss |
| -timestamp time | set the recording timestamp ('now' to set the current time) |
| -metadata string=string | add metadata |
| -program title=string:st=number... | add program with specified streams |
| -target type | specify target file type ("vcd", "svcd", "dvd", "dv" or "dv50" with optional prefixes "pal-", "ntsc-" or "film-") |
| -apad | audio pad |
| -frames number | set the number of frames to output |
| -filter filter_graph | set stream filtergraph |
| -filter_script filename | read stream filtergraph description from a file |
| -reinit_filter | reinit filtergraph on input parameter changes |
| -discard | discard |
| -disposition | disposition |
| Video options: | - |
|---|---|
| -vframes number | set the number of video frames to output |
| -r rate | set frame rate (Hz value, fraction or abbreviation) |
| -s size | set frame size (WxH or abbreviation) |
| -aspect aspect | set aspect ratio (4:3, 16:9 or 1.3333, 1.7777) |
| -bits_per_raw_sample number | set the number of bits per raw sample |
| -vn | disable video |
| -vcodec codec | force video codec ('copy' to copy stream) |
| -timecode hh:mm:ss[:;.]ff | set initial TimeCode value. |
| -pass n | select the pass number (1 to 3) |
| -vf filter_graph | set video filters |
| -ab bitrate | audio bitrate (please use -b:a) |
| -b bitrate | video bitrate (please use -b:v) |
| -dn | disable data |
| Audio options: | - |
|---|---|
| -aframes number | set the number of audio frames to output |
| -aq quality | set audio quality (codec-specific) |
| -ar rate | set audio sampling rate (in Hz) |
| -ac channels | set number of audio channels |
| -an | disable audio |
| -acodec codec | force audio codec ('copy' to copy stream) |
| -vol volume | change audio volume (256=normal) |
| -af filter_graph | set audio filters |