
1 learningman 2020-08-07 12:25:27 +08:00 转码不是放在本地的吧。。。 |
2 wysnylc 2020-08-07 12:26:14 +08:00 阿里媒体处理,自己转码是不是闲后期升级不够麻烦呀 |
3 mikumkf 2020-08-07 12:46:51 +08:00 不是 |
4 fyooo OP @learningman 理论上手机拍的视频 raw 体积很大,需要先转码一次再发送到后台吧? |
5 blueaurora 2020-08-07 14:17:05 +08:00 是的,ffmpeg 手机上可以弄到几 M,手机上压缩大小都是用它。早期斗音也是这么干的,但快手对 ffmpeg 工程的积累很深,他们不是直接用 ffmpeg 的 |
6 blueaurora 2020-08-07 14:18:09 +08:00 android 手机上,把 ffmpeg 弄成 so, 然后在 android 里,用 java 调用 ffmpeg 命令 |
7 hoyixi 2020-08-07 14:21:33 +08:00 服务器端处理,比如国内肯定有敏感过滤,然后各种存储策略,比如分片,比如音频视频分离 |
8 learningman 2020-08-07 14:23:09 +08:00 @fyooo 手机能拍 RAW 吗。。。只有那些顶级电影机才能拍 RAW 的,手机本身已经是输出 h264,h265 |
9 takemeaway 2020-08-07 14:28:31 +08:00 大部分都是,FFmpeg 是成熟的转码和视频处理插件。 |
10 zhiyzellda 2020-08-07 14:34:58 +08:00 via Android @fyooo 没看懂想要问什么。。。 手机拍的视频如果转码了就会降低视频质量,如果不想降低质量,那转码后的视频只会比转码前的视频更大。转码一次再发到后台,后台负担更大吧。 我个人很讨厌把视频压缩得不能看的行为。 应该是原画传到服务器端,服务器端进行转码,例如原画是 1080P,服务器可以压缩它变成 480P 或者 240P 。播放的时候你需要 480P,服务器就把转码完成的 480P 发给你。 |
11 wanacry 2020-08-07 14:36:35 +08:00 国内商业带宽太贵 |
12 hahahahaha234 2020-08-07 14:47:43 +08:00 @learningman 当年我的 htc m10 可以拍 RAW 照片哈 |
13 learningman 2020-08-07 16:17:14 +08:00 @hahahahaha234 RAW 照片和视频不是一个概念。。。 |
14 em70 2020-08-07 16:21:50 +08:00 涉及多媒体数据处理几乎全是 ffmpeg,压制一定放云端,用户可以接受异步,前端技术难度大,体验也不好 |
16 lwlizhe 2020-08-07 16:32:36 +08:00 额,我是刚刚学音视频,可能理解不到位哈……想问各位大佬 这种情况下为啥需要转码呢,客户端直接编码扔给服务端不就行了么………… 我个人理解中,转码的作用是为了适应不同情况下做的操作,所以应该是服务端去做的事,转好码以后分发给需要这个码的客户端,然后客户端再解码播放出来 |
19 lwlizhe 2020-08-07 16:50:55 +08:00 @tusik 噢噢噢噢噢噢,我看到楼主的回复了……突然明白了楼主为啥有这个疑惑…… raw 应该是容器格式吧……所以如果直接传输一个已经经过了编码封装的文件,那确实需要解封装,解码,转码,编码,封装这一套…… 不过我学到的那部分好像是直接拿到 YUV 源数据,并对其进行编码封装……所以才没楼主这个疑惑点 |
20 fgodt 2020-08-07 16:53:08 +08:00 短视频 app 都是直接录制成合适的码率了,没有所谓的转码。但是这里面会用到 ffmpeg 和 mediacodec/videotoolbox opengles 大概是流程 camera->perview->opengles->mediacodec/videotoolbox->ffmpeg->video |
21 lwlizhe 2020-08-07 16:55:44 +08:00 楼主之所以这个疑惑,我感觉是跟我一样刚入门的原因…… raw 在音视频中,跟 mp4,3gp 那些一样,是一个容器封装格式,H264,这种才是编码格式,YUV 这个是视频源数据格式,非常之巨大,所以需要进行编码,后面再封装为 raw,3gp,mp4 这种文件,这样才是我们最常见到的文件 回规正题 感觉抖音 app 应该是直接拿到 YUV 源数据,并对其直接编码,封装,丢给服务端,不需要转码 |
22 blueaurora 2020-08-07 21:54:16 +08:00 app 把视频上传时,就需要压缩了,否则一个视频那么大哪受得了。 其实抖音开始上传的视频分辨率都不高的,这里有一个在分辨率不高的情况下,如何让视频更清晰的问题。相机采集的数据就是 YUV 的,然后本地加滤镜之后,剪裁大小、并生成基于 h264 的 mp4, 再把 mp4 用 ffmpeg 压缩一下,上传给后端 |
23 fansangg 2020-08-08 02:10:58 +08:00 mediacodec |
24 chihiro2014 2020-08-08 11:52:46 +08:00 先转码一次,不然的话对面服务器带宽撑不住的。如果全民这么搞 |
25 yhx5768 2020-08-08 12:30:06 +08:00 解压下 apk 看下 lib 里有没有 ffmpeg 相关 so 就知道了 |
26 rb6221 2020-08-08 12:53:08 +08:00 如果你是上传视频的话,那拍摄本身就包含了限定格式,这个可以当成广义上的转码 如果你是下载视频播放,那么一般是在服务器做的,毕竟有缓存可以做到几乎不占用带宽。 直播推拉流的话,一般是服务端来做 |
27 wxjer 2020-08-14 15:22:45 +08:00 还可以试试 RxFFmpeg |
28 DingSoung 2021-02-08 11:14:30 +08:00 via iPhone 某产品做摄像机是用的 Ffmpeg |