晚上要下班了老板發來一個任務:把一個300M左右的視頻壓縮到100M以內,以便在微信上發送。這倒不是難事,狸窩咱又不是沒用過,開搞!!!
就是這么邪氣,恰好100.18M
視頻質量:低等質量,音頻質量:低等質量,自定義視頻尺寸:1280*720。咔咔一波操作,100.18M,這神馬鬼這么巧,導出一下試試,四舍五入正好100M。上傳微信試試。
文件大於100M不能上傳
試試還真不行,要說也是,程序的規則是很嚴格的,要求不能大於100M,多一個bit就不行。本來想着立馬交差,那就再調調!
可別看這0.18M還真不容易調,自定義里的視頻參數調一下變化太大,不到50M,這質量就有點對不起老板了;可是音頻參數又基本沒什么影響。
視頻大於25M不能上傳
- 換個MP4格式試試,效果還可以,但是提示視頻大於25M不能上傳
我當時是這樣想的,難道是這種mp4格式不支持,剛才還提示的是100M不能上傳呢。
- 降個頻率實時,效果還可以,但是提示視頻大於25M不能上傳
好吧,我可能是當局者迷吧,我還以為這個頻率不受支持。
- 剪切下試試,效果還可以,但是提示視頻大於25M不能上傳
這我就納悶了,我剪切視頻,任何視頻參數都沒有變,應該不存在視頻格式的問題,為啥剛才提示的是100M,顯示死活過不了25M的坎。
微信你的提示邏輯是這樣???
實在是搞不定了,壓個包給老板發微信了,微信不支持我搞個毛線呀。
做完了回頭一想,不對呀,微信你的提示邏輯不會是這樣吧:
if message is 文件
if message.size > 100M:
alert 文件大於100M不能上傳
return;
else if message is 視頻文件
if message.size > 25M:
alert 視頻大於25M不能上傳
return;
else
正常
...
我記得剛工作時,做表單驗證有這么中情況,表單項是必填的整數。然后我們就加了三條驗證規則:
- 必填項驗證
- 數字驗證
- 整數驗證
然后就是這么提示的
- 沒填,提示你必填
- 填的非數字,提示你必須填數字
- 填的非整數,提示你必須填整數
后來覺得一層一層玩客戶不好,改了提示
- 沒填、填的非數字、填的非整數,都提示該項是整數必填項
又感覺提示錯誤指向不明顯,就又改進了一下
- 沒填、填的非數字、填的非整數,都提示該項是整數必填項+(不能為空/不能是非數字/不能是非整數)
感覺這樣還不錯。