FFMPEG 将 FLV 转换为 MP4 并减小文件大小



我有一个通过Wowza录制实时流的系统。我从Wowza那里得到了一个带有记录的.flv文件。问题是,5分钟文件接近50mb大。但是当我看一些你可以从网上下载的电视剧时,它们是 20 分钟,在 mp4 中,就像 150mb 一样大。无论什么。。。看,流输入是这样的:

Input #0, flv, from 'rtmp://127.0.0.1/stream/test.stream':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0.0: Video: h264 (Constrained Baseline), yuv420p, 720x404 [PAR 1:1 DAR 180:101], 25 tbr, 1k tbn, 50 tbc
Stream #0.1: Audio: aac, 48000 Hz, stereo, s16

FFmpeg 在"会话"上向我展示了这样的东西:

frame= 2721 fps= 27 q=-1.0 Lsize=   17188kB time=111.21 bitrate=1266.1kbits/s

你知道如何使用 FFmpeg 转换 .MP4 中的 FLV 文件同样接近质量但文件大小更小?

顺便说一句,我在Linux^^操作

谢谢

这是基于使用最新ffmpeg的linux mashine

使用以下代码并仅更改 -crf 值,您可以创建各种视频剪辑大小。数字越小质量越高。

最终视频与所有现代设备/服务兼容,如本机网络播放器,iOS设备,安卓设备,微软设备,ps3,xbox等。

ffmpeg
-y //overwrite the file if it exists
-i INPUTFILE // replace with the input file
-metadata title=THETITLE // set a nice title, visible on modern devices
-metadata date=THEDATE // set a nice title, visible on modern devices
-c:v libx264 // use the h264 codec
 -crf 21 // try different numbers between 18-26
 -preset veryslow // placebo,slow,fast,ultrafast==big file 
 -tune film // tune it a little
 -pix_fmt yuv420p // preferred on most modern devices
 -profile:v main // preferred on most modern devices
 -level 3.1 // preferred on most modern devices 
 -refs 4 // preferred on most modern devices
-c:a libfdk_aac // use aac
 -metadata:s:a language=eng // set a language, visible on modern devices 
 -b:a 128k // audio bitrate 128k is like mp3 192k
 -ar 48000 // 44100 ... whatever
 -ac 2 // audiochannels
 -movflags +faststart //move the metadata in the front of the video so it loads faster
OUTPUTFILE

最新更新