ffmpeg 视频裁剪格式问题

运用ffmpeg进行视频裁剪报错Invalid data found when processing input,以及运用ffmpeg进行视频裁剪

这两天需要将视频进行裁剪,具体是将一段长60分钟的图片进行裁剪,从第15分钟剪到第三十分钟,只需要其中的15分钟。然后在运行代码的时候报错了。错误代码如下

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c6f60] moov atom not found
/home/zhutianhao/avatest/Gsm_ZBStr0s.mkv: Invalid data found when processing input

在网上找了许多资料查看了,得出来的结论是ffmpeg在对mp4格式进行裁剪的时候,会有一个bug,好像跟一个moov相关。具体自己也没了解太清楚,但是自己直接把后缀改为mkv,问题就解决了。

顺便贴一下剪视频的代码,这个可以直接一次性剪一个文件夹下的多个视频。

IN_DATA_DIR="/home/zhutianhao/avatest"
OUT_DATA_DIR="/home/zhutianhao/data/ava/videos_15min"

if [[ ! -d "${OUT_DATA_DIR}" ]]; then
  echo "${OUT_DATA_DIR} doesn't exist. Creating it.";
  mkdir -p ${OUT_DATA_DIR}
fi

for video in $(ls -A1 -U ${IN_DATA_DIR}/*)
do
  out_name="${OUT_DATA_DIR}/${video##*/}"
  if [ ! -f "${out_name}" ]; then
    ffmpeg -ss 900 -t 901 -i "${video}" "${out_name}"
  fi
done

前面2个是输入目录,中间最后一行的900是起始时间,901是裁剪保留的片段,这里是保存后面的901秒。
代码直接在服务器上粘贴上去就可以。

你可能感兴趣的:(深度学习数据处理踩坑)