记一件好事: "帮我把这个视频发到微信群里" - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
banxi1988
V2EX    程序员

记一件好事: "帮我把这个视频发到微信群里"

  •  
  •   banxi1988
    banxi1988 2017-04-05 21:50:47 +08:00 7696 次点击
    这是一个创建于 3124 天前的主题,其中的信息可能已经有所发展或是发生改变。

    2 号下午,老婆拿着一台手机跑过来跟我说,"为什么这个视频发不了微信? " 在她演示给我看的时候,我知道了可能的原因.微信提示"导入失败", 但是实际原因是可能视频过大. 找到要发送的文件一看大小,居然有: 2.48G, 虽然只有 19 分钟左右的长度. 然后我就有了把这个视频发送到微信群上的任务. 不过还好不是修电脑,我想我应该可以搞定.

    1. 先把视频传输到电脑上 开始尝试使用蓝牙来传,但是半天没有响应. 然后还是打开开发者模式(用完之后记得关闭) 使用 adb 来传. adb pull /storage/emulated/0/DCIM/Camera/20170402_151526.mp4 (其实 adb pull 也不怎么快)

    2. 初尝 ffmpeg 压缩 用手机拍的原始视频,由于没有压缩过体积都很大. 首先我想到用 ffmpeg 来压缩一下. ffmpeg -i 20170402_151526.mp4 -vcodec libx264 -preset slower -crf 28 -acodec libmp3lame -ab 128k 15151.mp4 执行这条命令大概过了一个小时压缩完成,压缩到了 500 多 M,我看了下效果,肉眼看起来没什么差别. 但是还是太大了.然后想着,换用其他参数再试,感觉太慢了, 我想直接在 15151.mp4 这个结果之上再压缩. 首先原来的分辩率是 1920 x1080 发微信用不了这么大,发 480p 的就差不多了. 但是试了几个参数都差强人意.

    3. 换用 QuickTime Player 导出有惊喜 这个时候我想起,好像 QuickTime Player 好像也支持将视频导出成小格式. 于是试了下, 选择导出成 480p, 令我很意外的是,从原来的 2.48 G 的视频导出成 480p 的视频,只花了 1 分钟左右的时间 , 最后导出的大小是 大概 500 多 M mov 格式视频.,比 ffmpeg 快多了.

    4. 使用 ffmpeg 再压缩 然后再将 QuickTime Player 导出的 mov 格式的视频用 ffmpeg 再压缩一下. ffmpeg -i 20170402_151526.mov -vcodec libx264 -preset slow 15153.mp4 这个压缩之后只有 100 M 左右了. 查了下微信的限制大概是 25M. 但是再压的话也压不到 25M 以下,毕竟有 19 分钟的长度. 然后我想着把这个视频分 5 段输出.

    5. 视频旋转 分段之前先将原来横屏的视频,翻转 90 度. ffmpeg -i 15153.mp4 -vf rotate=PI/2 15153_r.mp4

    6. 使用 ffmpeg 分段. for ((i=0;i<5;i++)); do ffmpeg -ss $((i * 230)) -i 15153_r2.mp4 -c copy -t 230 vp$i.mp4; done; 我这里使用了一个 for 循环,其实也可以不用循环,多执行几次就 OK 了. 比如第一段: -ss 0 参数后面表示偏移时间为 0(秒), -t 230 表示时长 230 秒. ffmpeg -ss 0 -i 15153_r2.mp4 -c copy -t 230 vp1.mp4

    7. 将各分段视频推送到手机上 adb push vp{0,1,2,3,4}.mp4 /sdcard/

    推送到手机上是因为没有 WiFi, 需要使用手机流量来发送.(还好我流量够用)

    32 条回复    2017-06-07 15:22:29 +08:00
    chanssl
        1
    chanssl  
       2017-04-05 22:10:13 +08:00
    为什么要用 adb 来拉文件。。。 MTP 不好么
    ys0290
        2
    ys0290  
       2017-04-05 22:42:26 +08:00 via iPhone
    USB 插到电脑上看不到存储盘吗?
    Arrowing
        3
    Arrowing  
       2017-04-05 22:45:34 +08:00   1
    我上次也遇到类似的问题,结果我发了个在线视频地址过去就完事了。。。
    2333333333333
    如果是本地视频,可以上传到第三方视频平台吧。
    Athrob
        4
    Athrob  
       2017-04-05 22:46:07 +08:00 via iPhone
    为什么不传到腾讯视频再分享?
    xspoco
        5
    xspoco  
       2017-04-05 22:47:41 +08:00
    微信视频的时长最长是多少。。
    orzfly
        6
    orzfly  
       2017-04-05 22:48:39 +08:00
    @chanssl #1
    1. OS X 并不支持 MTP ,虽然可以装 Google 官方的 https://www.android.com/filetransfer/ 应用来传输 MTP
    2. MTP (对我而言)很不稳定(看个人使用情况,不用讨论)
    hundan
        7
    hundan  
       2017-04-05 22:49:50 +08:00 via Android
    其实,能不能 ffmpeg 再 quicktime 再 ffmpeg 再 q 再 f …重复执行
    manhere
        8
    manhere  
       2017-04-05 22:51:44 +08:00
    安卓手机的话可以弄个 ES 文件管理器,用 FTP 方式管理文件
    nicevar
        9
    nicevar  
       2017-04-05 22:51:54 +08:00   26
    那天下午,老婆跟几个闺蜜在家看综艺节目,突然跑过来跟我说,“ xxtv 这个要会员才能看呢”,我一看是有预览时间的,应该可以搞定
    1.直接 adb connect 192.168.2.105:5555 连上电视
    2.接着 adb shell tcpdump -p -vv -s 0 -w /sdcard/video.pcap 进行抓包,切换一下视频清晰度之后中断
    3.然后 adb pull /sdcard/video.pcap ,用 wireshark 打开过滤 http 协议竟然直接找到几个 m3u8 地址
    4.打开一个原来的 DLNA 测试工程,代码中写死播放地址,然后运行选择电视直接 push 过去让她们先看着,但是这样每个视频搞一次不是累死?
    5.趁她们看电视的时候直接从系统找到那个 apk ,发现除了混淆外没做什么安全防护,反编译之, java 和 smali 各一份
    6.在 java 代码中分析播放器模块播放进度逻辑部分,很快找到一个 progress 的回调跳转判定
    7.再到 smali 文件定位这个地方,修改跳转逻辑重新打包安装测试没发现问题,速替换掉电视上的包,真是神不知鬼不觉,但是 who care?
    速速回到书房发现世界之树已经被拆了,竟然扣了 14 分!!!冲了一个月的分啊
    ichubei
        10
    ichubei  
       2017-04-05 22:53:17 +08:00 via iPhone
    上传到优酷 发视频链接最简单
    banxi1988
        11
    banxi1988  
    OP
       2017-04-05 23:00:22 +08:00
    @Arrowing
    @Athrob
    @ichubei
    考虑到是一个比较私密的视频,不方便放到这些视频网站.
    helixzz
        12
    strong>helixzz  
       2017-04-05 23:04:05 +08:00
    @nicevar 这个才是最强的……
    kassadin
        13
    kassadin  
       2017-04-06 00:18:49 +08:00
    我可能做的是假 Android 开发
    ryd994
        14
    ryd994  
       2017-04-06 02:10:43 +08:00   1
    你这个参数当然慢了
    ffmpeg -i 20170402_151526.mp4 -vcodec libx264 -preset slower -crf 28 -acodec libmp3lame -ab 128k 15151.mp4
    faster 以下压缩效果都差不太多,时间就要爆炸了
    而且你这里也没降分辨率啊, 480p 没多少的
    crf28 也有点过了,默认 23 ,其实 20 都能看的
    音频不要 mp3 , aac 才是标准
    NoAnyLove
        15
    NoAnyLove  
       2017-04-06 04:19:34 +08:00
    adb pull 虽然慢,但是稳定啊
    msg7086
        16
    msg7086  
       2017-04-06 04:52:27 +08:00   1
    压片不用 Handbrake ?
    Valyrian
        17
    Valyrian  
       2017-04-06 06:10:51 +08:00
    @ryd994 crf 是数字越小画质越好。。
    ryd994
        18
    ryd994  
       2017-04-06 06:43:48 +08:00
    @Valyrian 是我记错了……
    我就是记得比默认设置更差的 crf 其实编码出来也不是不能看而已
    xeis
        19
    xeis  
       2017-04-06 07:38:50 +08:00 via Android
    这是顺手破解了 xxtv 的会员啊。。。
    21grams
        20
    21grams  
       2017-04-06 08:42:16 +08:00 via Android
    一个格式工厂就能搞定的事。。。
    bearqq
        21
    bearqq  
       2017-04-06 09:03:33 +08:00
    @nicevar 谁说的 who care ?
    这都能找到老婆,我才是日了狗
    (□′)┻━┻
    frank418
        22
    frank418  
       2017-04-06 09:35:56 +08:00
    @nicevar 666
    21grams
        23
    21grams  
       2017-04-06 09:38:08 +08:00 via Android
    @nicevar 难道不应该是赶紧给老婆充上会员吗?你这脑回路清奇啊。
    xcssum
        24
    xcssum  
       2017-04-06 09:38:20 +08:00
    @nicevar 我选择开个会员……
    Chaos11
        25
    Chaos11  
       2017-04-06 10:16:08 +08:00
    9L 信仰不纯阿
    zzcchh
        26
    zzcchh  
       2017-04-06 10:22:53 +08:00 via Android
    @nicevar 如果老婆大人让你破解一下小米视频的会员呢?
    immrwk
        27
    immrwk  
       2017-4-06 10:30:11 +08:00
    原来我的关注点
    差强人意的意思是勉强使人满意
    为什么总有人乱用,不是高考重点词汇吗
    immrwk
        28
    immrwk  
       2017-04-06 10:30:43 +08:00
    @immrwk #28 原谅
    everhythm
        29
    everhythm  
       2017-04-06 11:20:31 +08:00
    额,是不是可以开个 gif 录制下视频,然后发上去

    虽然时间长点。。
    Smirn0ff
        30
    Smirn0ff  
       2017-04-06 12:42:49 +08:00
    大哥 安卓 xposed + 微信视频转发插件!不好用吗?
    msg7086
        31
    msg7086  
       2017-04-07 01:05:52 +08:00
    @ryd994 默认 23 ,其实 28 已经接近不能看了,高频噪点满天飞,低频各种大色块。
    nicevar
        32
    nicevar  
       2017-06-07 15:22:29 +08:00
    @zzcchh 不用,小米的盒子里有一亿你信么? auth 换成测试环境就行了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2681 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 08:39 PVG 16:39 LAX 01:39 JFK 04:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86