• 批处理系列(10)


    结合本系列文章第一篇,看本文。

    需要ffmpeg,配置ffmpeg到环境变量。

    应用场景:下载一个专辑的有声文件,音轨上固定时间有广告之类的插入,去除掉它。

    这里展示的是去掉开头部分。

    @echo off
    @REM @Author: xianghongai@gmail.com
    title 音频剪辑操作  by:小可(xianghongai@gmail.com)
    SETLOCAL ENABLEDELAYEDEXPANSION
    
    :GTBegin
    cls
    @echo 音频剪辑操作(提前设置好起始时间,备份好原始音频数据)
    @echo --------------------------------------------
    set /p HandleDir=需要处理的目录:
    
    :GTCONTINUE
    cls
    @echo 音频剪辑操作
    @echo --------------------------------------------
    @echo 处理的目录:%HandleDir%
    @echo.
    @echo -----------------1.相同时间段剪辑-----------------
    @echo   11 - 剪辑当前目录
    @echo   12 - 剪辑层级子目录
    @echo -------------------其它-------------------
    @echo   8 - 重新选择目录
    @echo   9 - 退出
    @echo.
    set  GTOperator=9
    set /p GTOperator="选择操作数: "
    @echo.
    
    if %GTOperator% equ 11 goto GTDIRPREFIX
    if %GTOperator% equ 12 goto GTSUBDIRPREFIX
    
    if %GTOperator% equ 8 goto GTBegin
    if %GTOperator% equ 9 goto GTExit
    
    echo 请选择正确的操作数
    pause >nul
    goto GTCONTINUE
    
    rem @echo 不能做文件名称的字符
    rem @echo  / : * ? " < > |
    
    rem 11.当前目录:目录名-文件名
    :GTDIRPREFIX
    cd /d "!HandleDir!"
    for /f "delims=" %%i in ('dir /a-d /b *.MP3 2^>nul') do (
        if not "%~nx0"=="%%i" (
            ffmpeg -ss 00:00:47.666 -i "%%nxi" -acodec copy "O%%~nxi"
        )
    )
    echo 搞定
    pause >nul
    goto GTCONTINUE
    
    rem 12.子目录:子目录名-文件名
    :GTSUBDIRPREFIX
    cd /d "!HandleDir!"
    for /f "usebackq" %%i in (`dir /ad /b /s^|sort /r`) do (
        for /f "usebackq delims=" %%j in (`dir /a-d /b "%%i*.MP3" 2^>nul`) do (
            ffmpeg -ss 00:00:47.666 -i "%%i\%%j" -acodec copy "%%i\%%~nxi-O%%~nxj"
            )   )
    echo 搞定
    pause >nul
    goto GTCONTINUE
    
    
    :GTExit
    exit
    
    

    转载保留原文地址和作者名,只为错误勘正和信息补充。
    版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)

  • 相关阅读:
    网络爬虫基础练习
    中文词频统计
    综合练习:英文词频统计
    字符串、组合数据类型练习
    MVC Controller进行单元测试
    mvc、webapi杂记
    C#异步执行
    cross-domain-ajax-request-jquery
    JS将/Date(1446704778000)/转换成string
    SQL并发数查询
  • 原文地址:https://www.cnblogs.com/daxiang/p/8572723.html
Copyright © 2020-2023  润新知