如何将音频文件.aac分割成4.0秒的一小部分,即。忽略关键帧?
原始视频文件采用.mp4格式。从这个视频文件我得到了一个.aac音频文件。但是分割音频文件的新部分总是有3.4秒,我需要4.0秒的音频。问题可能在关键框架中。
谢谢。
cd $DIR_IN
for file in *.mp4
do
echo "Extracting the whole audio-track from $file to $DIR_TMP/${file%.mp4}.aac"
ffmpeg -i "$file" -vn -acodec copy $DIR_TMP/"${file%.mp4}.aac"
echo "Splitting the large video-file $file to a smaller audio-files '${file%.mp4}'XXX.aac"
ffmpeg -i $DIR_TMP/"${file%.mp4}.aac" -c copy -f segment -segment_time 4 $DIR_TMP/"${file%.mp4}%03d.aac"
rm -f $DIR_TMP/"${file%.mp4}.aac"
done
发布于 2019-03-21 07:41:26
解决问题:
#!/bin/bash
avfile=/tmp/video.mp4
ffmpeg -i "$avfile" -c:v libx264 -crf 23 -map 0 -segment_time 4 -g 4 -sc_threshold 0 -force_key_frames "expr:gte(t,n_forced*4)" -f segment /tmp/output/"${avfile%.mp4}%03d.mp4"
发布于 2020-10-21 14:13:48
ffmpeg -i sourcefile.aac -f segment -segment_time 4 -c copy out%03d.aac
将生成4秒的文件,如out000.acc
、out001.acc
等。请注意,最后一个文件的时间可能小于或等于4秒。
引用:‘按指定段速率拆分音频流’示例来自https://gist.github.com/protrolium/e0dbd4bb0f1a396fcb55
https://unix.stackexchange.com/questions/505915
复制相似问题