Ale*_*iro 1 video ffmpeg video-conversion
我通常从 Deutsche Welle 下载和观看视频来练习我的德语。最近,我经常上下班,在火车上用手机看视频会很好。
我曾尝试将视频复制+粘贴到手机上,但没有读取。
我试图用 ffmpeg 转换它,但它也没有被读取。
在一个小的 cygwin bash 脚本中使用的命令是:
ffmpeg -y -i video.mp4 -r 14.65 -s 320x240 -b 389k -acodec libvo_aacenc -ac 1 -ar 8000 -ab 12k video.3gp
Run Code Online (Sandbox Code Playgroud)
原始、下载、视频的特点是:
元数据:
major_brand : mp42
minor_version : 0
compatible_brands: isom
creation_time : 2014-02-10 03:54:28
Run Code Online (Sandbox Code Playgroud)
持续时间:00:01:59.16,开始:0.000000,比特率:695 kb/s
Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 598 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc
Metadata:
creation_time : 2014-02-10 03:54:28
handler_name : MP4 Video Media Handler
Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, s16, 93 kb/s
Metadata:
creation_time : 2014-02-10 03:54:28
handler_name : MP4 Sound Media Handler
Run Code Online (Sandbox Code Playgroud)
而手机制作的视频的特点是:
元数据:
major_brand : isom
minor_version : 512
compatible_brands: skm23gp5
Run Code Online (Sandbox Code Playgroud)
持续时间:00:00:27.31,开始:0.000000,比特率:405 kb/s
Stream #0:0(und): Audio: amr_nb (samr / 0x726D6173), 8000 Hz, 1 channels, flt, 12 kb/s
Metadata:
handler_name : soun
Stream #0:1(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 320x240 [SAR 1:1 DAR 4:3], 389 kb/s, 14.65 fps, 15 tbr, 1k tbn, 15 tbc
Metadata:
handler_name : vide
Run Code Online (Sandbox Code Playgroud)
转换下载的视频是正确的行吗?
非常感谢。
在不知道手机及其平台的情况下在这里进行一些猜测,但来自 ffmpeg 的 3GP 视频通常包含 H.264 视频。您的手机录制 MPEG-4 Part II 视频,它(或多或少)是 H.264 的前身,因此“更简单”。
许多旧手机不能播放 H.264 或只能播放它的一个严格子集。鉴于原始视频使用H.264基线并且您的手机不会播放它,我想在它上面看H.264是不可能的。
在 AVI 容器中尝试 MPEG-4 和 MP3 音频——这是在旧机器上或在 H.264 无处不在之前视频的首选组合:
ffmpeg -y -i video.mp4 -c:v mpeg4 -b:v 600k -c:a libmp3lame output.avi
Run Code Online (Sandbox Code Playgroud)
您也可以使用-qscale:v 3
代替 VBR 的比特率设置。此处,值范围为 1-31,其中越低越好。请参阅Xvid/DivX 编码指南。
如果您的手机支持具有基线配置文件的 H.264,适用于移动目标或计算能力较低的平台:
ffmpeg -y -i video.mp4 -c:v libx264 -crf 23 -profile:v baseline \
-c:a aac -strict experimental output.mp4
Run Code Online (Sandbox Code Playgroud)
通过将 CRF 参数设置在 18 到 28 之间来更改质量,其中越低越好。
关于您的原始命令的注释:
-b
不明确 – 使用-b:v
和指定视频或音频比特率-b:a
libvo_aacenc
提供 ffmpeg 中所有 AAC 编码器的最差质量。使用内部的aac
,或者如果可以的话,libfdk_aac
或者libfaac
. 请参阅AAC 编码指南。 归档时间: |
|
查看次数: |
11870 次 |
最近记录: |