全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
12
返回列表 发新帖
楼主: ShqBql
打印 上一主题 下一主题

【结贴】求个小脚本写法!~

[复制链接]
11#
发表于 2022-7-31 03:46:31 来自手机 | 只看该作者
ShqBql 发表于 2022-7-31 01:00
这里需要指定个啥路径?

比如 a

12#
发表于 2022-7-31 10:25:30 | 只看该作者
ShqBql 发表于 2022-7-31 01:00
这里需要指定个啥路径?

指定你的文件夹路径 只会扫描文件夹下的 不会遍历子文件夹
13#
 楼主| 发表于 2022-7-31 14:01:44 | 只看该作者
小心二次元 发表于 2022-7-31 10:25
指定你的文件夹路径 只会扫描文件夹下的 不会遍历子文件夹

还是搞不定,谢谢
  1. $ python /Users/abu/Desktop/temp/fenge.py  /Users/abu/Desktop/temp
  2. ffmpeg call: /Users/abu/Desktop/temp/222.mp4
  3. ffmpeg version 5.0.1 Copyright (c) 2000-2022 the FFmpeg developers
  4.   built with Apple clang version 13.1.6 (clang-1316.0.21.2.5)
  5.   configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/5.0.1_3 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-neon
  6.   libavutil      57. 17.100 / 57. 17.100
  7.   libavcodec     59. 18.100 / 59. 18.100
  8.   libavformat    59. 16.100 / 59. 16.100
  9.   libavdevice    59.  4.100 / 59.  4.100
  10.   libavfilter     8. 24.100 /  8. 24.100
  11.   libswscale      6.  4.100 /  6.  4.100
  12.   libswresample   4.  3.100 /  4.  3.100
  13.   libpostproc    56.  3.100 / 56.  3.100
  14. Unrecognized option 'o'.
  15. Error splitting the argument list: Option not found
  16. Traceback (most recent call last):
  17.   File "/Users/abu/Desktop/temp/fenge.py", line 47, in <module>
  18.     main()
  19.   File "/Users/abu/Desktop/temp/fenge.py", line 43, in main
  20.     ffmpeg_call(file)
  21.   File "/Users/abu/Desktop/temp/fenge.py", line 22, in ffmpeg_call
  22.     result = [file for file in os.listdir(path) if file.endswith('.mp4') and file.startswith(path)]
  23. NotADirectoryError: [Errno 20] Not a directory: '/Users/abu/Desktop/temp/222.mp4'
复制代码
14#
发表于 2022-7-31 15:30:29 | 只看该作者
看看这个行不行?

https://paste.org.cn/VceVcs40JY
15#
发表于 2022-7-31 19:31:51 | 只看该作者
保存以下代码为main.sh
运行./main.sh  ~/path/video/
确保视频文件名没有特殊字符

  1. #!/usr/bin/bash

  2. echo $1
  3. homedir=(`find $1  -maxdepth 1 -name '*.mp4' -o -name '*.mkv'`)
  4. for res in ${homedir[@]}
  5. do
  6.     echo $res
  7.     filename=${res##*/}
  8.     mkdir ${filename:0:-4}
  9.     ffmpeg -i $res -c copy -map 0 -segment_time 8 -f segment ${res:0:-4}/${filename:0:-4}+%03d.mp4
  10. done
复制代码
16#
 楼主| 发表于 2022-7-31 19:51:22 | 只看该作者
感谢各位大佬,最终我用了
  1. #!/bin/bash
  2. BASEDIR=`pwd`
  3. echo "Base dir: $BASEDIR"

  4. read -p "Do you want to proceed? (yes/no) " yn
  5. case $yn in
  6.         yes ) echo ok, we will proceed;;
  7.         no ) echo exiting...;
  8.                 exit;;
  9.         * ) echo invalid response;
  10.                 exit 1;;
  11. esac

  12. for MP4 in `find . -type f -name "*.mp4"`; do
  13. MP4DIR=$(echo $MP4 | sed 's/\.mp4$//')
  14. OUTPUTNAME=$(echo $MP4DIR | awk -F / '{print $NF}')
  15. mkdir -p $MP4DIR
  16. ffmpeg -i $MP4 -c copy -map 0 -segment_time 8 -f segment "${MP4DIR}/${OUTPUTNAME}+%04d.mp4"
  17. done
复制代码


楼上各位大佬的我多少有点问题,迫于太菜,不会修改,努力学习,争取过段时间不提这样的问题,或者是自己逐渐会修改。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-12-20 22:46 , Processed in 0.057095 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表