• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
               

            1CM

              

            利用FFmpeg+Mencoder完成自動剪輯合并批處理

                目前有很多視頻剪輯合并工具,其功能很強大.但是用起來很麻煩,一段一段需要手動處理.為了彌補這個弊端利用
            批處理文件完成全自動剪輯和合并的功能.效率灰常高哈哈 通過配置文件輸入剪輯時間使用起來更加方便
            __________________________________________________________
            Conversion_Batch.bat 從  _Periods.ini 中讀取剪輯信息和時間
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            setlocal enabledelayedexpansion
            echo @echo off>zCmd_tmp.bat
            set /a count=0
            rem Directory or file name contains an ! exclamation point problem
            for /f "eol=# delims=" %%i in (_Periods.ini) do (
                set /a count=!count!+1
            	if !count! EQU 1 (set ifn="%%i")
            	if !count! EQU 2 (set ofn=%%i)
            	if !count! EQU 3 (set extn=%%i
            		set mCmd=call Lib_Conversion !ifn! !ofn! !extn!)
            	if !count! GEQ 4 (
                    set /a newindex=!count!-3
            		if !newindex! LEQ 9 (set index=0!newindex!) else (set index=!newindex!)
            		set _time=%%i
            		rem echo !mCmd! !_time:~0,12! !_time:~13,12! !index!
            		echo !mCmd! !_time:~0,12! !_time:~13,12! !index!>>zCmd_tmp.bat ))
            setlocal disabledelayedexpansion
            call zCmd_tmp.bat
            del zCmd_tmp.bat
            __________________________________________________________________________
            計算總時間  Lib_CalculateTotalTime.bat 01:02:03.400 04:03:10.510 [display]
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            @echo off
            set start_pos_tmp=%1
            set end_pos_tmp=%2
            
            if "%start_pos_tmp:~1,1%"==":" set "start_pos_tmp=0%start_pos_tmp%"
            if "%end_pos_tmp:~1,1%"==":" set "end_pos_tmp=0%end_pos_tmp%"
            
            set hour=%start_pos_tmp:~0,2%
            set min=%start_pos_tmp:~3,2%
            set sec=%start_pos_tmp:~6,2%
            set msec=%start_pos_tmp:~9,3%
            
            rem --------for skip 08 09---------------
            if %hour:~0,1%==0  set hour=%hour:~1,1%
            if %min:~0,1%==0   set min=%min:~1,1%
            if %sec:~0,1%==0   set sec=%sec:~1,1%
            if %msec:~0,1%==0  set msec=%msec:~1,2%
            if %msec:~0,1%==0  set msec=%msec:~1,1%
            
            set /a hour=%hour%
            set /a min=%min%
            set /a sec=%sec%
            set /a msec=%msec%
            
            set /a start_millsec=%hour%*60*60+%min%*60+%sec%
            set /a start_millsec=%start_millsec%*1000+%msec%
            
            set ehour=%end_pos_tmp:~0,2%
            set emin=%end_pos_tmp:~3,2%
            set esec=%end_pos_tmp:~6,2%
            set emsec=%end_pos_tmp:~9,3%
            
            rem --------for skip 08 09---------------
            if %ehour:~0,1%==0  set ehour=%ehour:~1,1%
            if %emin:~0,1%==0   set emin=%emin:~1,1%
            if %esec:~0,1%==0   set esec=%esec:~1,1%
            if %emsec:~0,1%==0  set emsec=%emsec:~1,2%
            if %emsec:~0,1%==0  set emsec=%emsec:~1,1%
            
            set /a ehour=%ehour%
            set /a emin=%emin%
            set /a esec=%esec%
            set /a emsec=%emsec%
            
            set /a end_millsec=%ehour%*60*60+%emin%*60+%esec%
            set /a end_millsec=%end_millsec%*1000+%emsec%
            
            set /a total_time_millsec=%end_millsec%-%start_millsec%
            rem echo %hour% %min% %sec% %msec%
            rem echo %ehour% %emin% %esec% %emsec%
            
            rem echo %start_millsec% %end_millsec% %total_time_millsec%
            set /a tsec=%total_time_millsec%/1000
            set /a tmsec=%total_time_millsec%-%tsec%*1000
            set /a tmin=%tsec%/60
            set /a tsec=%tsec%-%tmin%*60
            set /a thour=%tmin%/60
            set /a tmin=%tmin%-%thour%*60
            
            if %thour% LEQ 9 (set thour=0%thour%)
            if %tmin%  LEQ 9 (set tmin=0%tmin%)
            if %tsec%  LEQ 9 (set tsec=0%tsec%)
            if %tmsec%  LEQ 9 (set tmsec=00%tmsec%) else (if %tmsec%  LEQ 99 (set tmsec=0%tmsec%))
            set total_time=%thour%:%tmin%:%tsec%.%tmsec%
            if "%3"=="display" (echo [%start_pos_tmp% - %end_pos_tmp%] = %total_time%)
            _______________________
            轉換 Lib_Conversion.bat
            ~~~~~~~~~~~~~~~~~~~~~~~
            @echo off
            set h=%time:~0,2%
            if "%h:~0,1%"==" " set "h=0%h:~1%"
            set m=%time:~3,2%
            set s=%time:~6,2%
            set hms=%h%%m%%s%
            rem ------------------------------input parameters-----------------------------
            set         inFile=%1
            set        outFile=%2_%hms%_%6.%3
            set      start_pos=%4
            set        end_pos=%5
            
            rem set video_bit_rate=-b:v 1500k
            rem set audio_bit_rate=-b:a 64k
            rem set     frame_size=-s 720x404
            rem set         aspect=-aspect 16:9
            set    logFileName=%2_conversion.log
            
            rem for copy
            set    video_codec=-c:v copy
            set    audio_codec=-c:a copy
            
            rem for H264
            rem set    video_codec=-c:v libx264
            rem set    audio_codec=-c:a libvo_aacenc
            
            rem for mpeg4 xvid
            rem set    video_codec=-c:v mpeg4
            rem set fourcc_tag_out=-tag:v XVID
            rem set    audio_codec=-c:a libmp3lame
            
            rem set         inFile="D:\TDDOWNLOAD\01.mp4"
            rem set        outFile="%hms%.avi"
            rem set      start_pos=00:40:10.000
            rem set        end_pos=00:40:11.000
            rem ------------------------------calctime-------------------------------------
            if "%end_pos%"    NEQ "" (call Lib_CalculateTotalTime %start_pos% %end_pos% display)
            if "%total_time%" NEQ "" (set total_time=-t %total_time%)
            if "%start_pos%"  NEQ "" (set start_pos=-ss %start_pos%)
            rem ------------------------------make cmd-------------------------------------
            set cmd=ffmpeg
            set cmd=%cmd% %start_pos%
            set cmd=%cmd% -y -i %inFile% %total_time%
            set cmd=%cmd% %audio_codec% %audio_bit_rate%
            set cmd=%cmd% %video_codec% %fourcc_tag_out% %video_bit_rate%
            rem set cmd=%cmd% -g 12 -bf 2 -qcomp 0.2 -dc 10 -mbd 2 %frame_size% %aspect%
            set cmd=%cmd% %frame_size% %aspect%
            set cmd=%cmd% %outFile%
            rem ------------------------------run cmd--------------------------------------
            set begin_time=%date:~0,10% %time:~0,11%
            @echo on
            %cmd%
            @echo off
            set end_time=%date:~0,10% %time%
            rem ------------------------------write to log---------------------------------
            echo ---%date:~0,10% %time:~0,11%---------------------------------------------->>%logFileName%
            echo %cmd%>>%logFileName%
            echo.>>%logFileName%
            echo         inFile = %inFile%>>%logFileName%
            echo        outFile = %outFile%>>%logFileName%
            if "%video_bit_rate%" NEQ "" (echo Video bit rate = %video_bit_rate:~5,10%>>%logFileName%)
            if "%audio_bit_rate%" NEQ "" (echo Audio bit rate = %audio_bit_rate:~5,10%>>%logFileName%)
            echo.>>%logFileName%
            echo      start_pos = %start_pos:~4,12%>>%logFileName%
            echo        end_pos = %end_pos%>>%logFileName%
            echo     total_time = %total_time:~3,12%>>%logFileName%
            echo.>>%logFileName%
            echo     begin time = %begin_time%>>%logFileName%
            echo       end time = %end_time%>>%logFileName%
            rem ------------------------------put message----------------------------------
            echo -------The end of the conversion------------------------------------------
            rem echo         inFile = %inFile%
            rem echo        outFile = %outFile%
            if "%video_bit_rate%" NEQ "" (echo  video bit rate = [v:%video_bit_rate:~5,10%] [a:%audio_bit_rate:~5,10%])
            echo      video time = [%start_pos:~4,12% - %end_pos%] = %total_time:~3,12%
            call Lib_CalculateTotalTime %begin_time:~11,11% %end_time:~11,11%
            echo conversion time = [%begin_time:~11,11%  - %end_time:~11,11% ] = %total_time:~0,12%
            echo --------------------------------------------------------------------------
            __________________
            合并 Lib_Joins.bat
            ~~~~~~~~~~~~~~~~~~
            @echo off
            setlocal enabledelayedexpansion
            dir *.avi/b/w/n/on>all_avi_name.txt
            set aaf=mencoder
            for /f %%i in (all_avi_name.txt) do (set aaf=!aaf! "%%i")
            set aaf=!aaf! -oac copy -ovc copy -o join.avi
            rem set aaf=!aaf! -oac pcm -ovc copy -o join.avi
            echo %aaf%>>join.log
            set begin_time=%date:~0,10% %time:~0,11%
            %aaf%
            set end_time=%date:~0,10% %time%
            echo ------------ All video join are completed ------------
            call Lib_CalculateTotalTime %begin_time:~11,11% %end_time:~11,11%
            echo join time = [%begin_time:~11,11% - %end_time:~11,11%] = %total_time:~0,12%
            echo ------------------------------------------------------
            
            下載批處理

            posted on 2012-09-20 14:23 1CM 閱讀(1371) 評論(0)  編輯 收藏 引用

            大美女久久久久久j久久| 精品久久久久久久无码| 久久久噜噜噜久久中文字幕色伊伊| 久久久久久a亚洲欧洲aⅴ| 国产AⅤ精品一区二区三区久久| 99久久国产亚洲高清观看2024| 伊人久久大香线蕉综合热线| 无码人妻久久一区二区三区 | 久久亚洲欧美日本精品| 久久久久亚洲AV无码专区桃色| 综合网日日天干夜夜久久| 国产女人aaa级久久久级| 国产精品一区二区久久精品涩爱| 国产一久久香蕉国产线看观看| 香蕉99久久国产综合精品宅男自 | 一本色道久久88精品综合| 91精品婷婷国产综合久久| 亚洲精品无码久久久久去q| 国产精品美女久久久久AV福利| 亚洲欧美伊人久久综合一区二区| 久久e热在这里只有国产中文精品99| 青青草原精品99久久精品66| 午夜精品久久久久久影视777| 99久久国产免费福利| 999久久久免费精品国产| 久久综合亚洲色HEZYO社区| 久久亚洲国产成人影院网站| 97久久精品人人澡人人爽| 久久精品国产亚洲AV电影 | 久久97精品久久久久久久不卡 | 青青草原综合久久| 精品久久久久久国产潘金莲| 亚洲精品乱码久久久久久蜜桃不卡| 日韩精品无码久久一区二区三| 99久久亚洲综合精品成人| 久久久久久综合一区中文字幕| 久久精品亚洲日本波多野结衣| 亚洲AV无码久久精品色欲| 久久久女人与动物群交毛片 | 久久精品国产亚洲av日韩| 久久久久亚洲精品无码蜜桃|