ffmpeg 将单张图片转换成视频
使用 -t
选项指定视频时长。
示例:
ffmpeg -loop 1 -i image.png -c:v libx264 -t 30 -pix_fmt yuv420p video.mp4
使用 -t
选项指定视频时长。
示例:
ffmpeg -loop 1 -i image.png -c:v libx264 -t 30 -pix_fmt yuv420p video.mp4
ffmpeg -i input.mp4 -ss start_time -to end_time -c copy output.mp4
start_time
是要开始切分的时间戳,以秒为单位。
end_time
是要结束切分的时间戳,以秒为单位。
-c copy
选项指示 ffmpeg 复制输入视频的音视频流,而不会重新编码它们。这将使输出文件更小,并且质量不会损失。
打开 『选择文件夹』对话框,支持指定默认路径
Function SelectFolder( myStartFolder )
' Version: 0.1.0
' Updated: 2021-08-07
' Standard housekeeping
Dim objFolder, objItem, objShell
' Custom error handling
On Error Resume Next
SelectFolder = ""
' Create a dialog object
Set objShell = CreateObject( "Shell.Application" )
Set objFolder = objShell.BrowseForFolder( 0, "Ñ¡ÔñÎļþ¼Ð", 0, myStartFolder )
' Return the path of the selected folder
If IsObject( objfolder ) Then SelectFolder = objFolder.Self.Path
' Standard housekeeping
Set objFolder = Nothing
Set objshell = Nothing
On Error Goto 0
End Function
msgbox SelectFolder("C:\Windows\Desktop")
将传入的文件路径分割为路径、文件名、扩展名三部分。
dim example
example="c:\windows\a.txt"
Function get_file_parts(in_file)
' Version: 0.1.0
' Updated: 2021-08-07
dim input_path,input_filename, ext_name, left_part_name
input_path=Left(in_file, InStrRev(in_file,"\") - 1)
input_filename=Right(in_file,Len(in_file)-InStrRev(in_file,"\"))
' msgbox input_path
' msgbox input_filename
left_part_name=Left(input_filename, InStrRev(input_filename,".") - 1)
ext_name=Right(input_filename,Len(input_filename)-InStrRev(input_filename,".")+1)
get_file_parts=input_path & "," & left_part_name & "," & ext_name
End Function
msgbox get_file_parts(example)
' c:\windows
' a
' .txt
使用选项 -filter_complex
滤镜语法:
filtername=option1=value1:option2=value2:option3=value3...
完整命令语法:
ffmpeg -i 输入0 -i 输入1 -i 输入N -filter_complex "多滤镜组合表达式" output.mp4
其中多滤镜组合表达式语法思路是:[输入]滤镜[输出];[输入]滤镜[输出];
如:在当前目录下的 test.txt 文本文件中随机读取一行数据
.bat
@echo off
setlocal enabledelayedexpansion
for /f "tokens=*" %%i in (test.txt) do (
set /a h+=1 & set r!h!=%%i
)
set /a s=%random% %% h+1
echo !r%s%!
pause
有时候只是需要 Git 仓库里某个子文件夹里的源代码文件,并不想克隆整个仓库(可能整个仓库比较大)。例如只想下载某个课程系列里第一课的源代码案例 ch01。
原理:
1,SVN 基于文件方式存储(而Git却是基于元数据方式分布式存储文件信息的)
2,GitHub 支持 SVN 客户端
re.sub(pattern, repl, string, count=0, flags=0)
参数:^Ref
pattern
匹配模式
repl
匹配处将被替换成的文本
string
待替换的原文
count
限制替换数量
flags
:
- re.IGNORECASE
忽略大小写