2016-06-22 4 views
4

Как конвертировать видео из H.264 (профиль с высоким разрешением 4: 4: 4) в H.264 (Основной профиль) с помощью ffmpeg?ffmpeg конвертировать из H.264 (профиль высокого качества 4: 4: 4) в H.264 (основной профиль)

Я не могу сделать это с помощью этой команды: ffmpeg -i 1/25359.mp4 -profile:v main out.mp4.

что бы вернуть ошибку:

... 
That'd return an error: 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '1/25359.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2avc1mp41 
    encoder   : Lavf56.40.101 
    Duration: 00:00:06.08, start: 0.000000, bitrate: 1059 kb/s 
    Stream #0:0(und): Video: h264 (High 4:4:4 Predictive) (avc1/0x31637661), yuv444p, 351x297, 1057 kb/s, 12.50 fps, 12.50 tbr, 12800 tbn, 25 tbc (default) 
    Metadata: 
     handler_name : VideoHandler 
No pixel format specified, yuv444p for H.264 encoding chosen. 
Use -pix_fmt yuv420p for compatibility with outdated media players. 
x264 [error]: main profile doesn't support 4:4:4 
[libx264 @ 0x8fa9640] Error setting profile main. 
[libx264 @ 0x8fa9640] Possible profiles: baseline main high high10 high422 high444 
Output #0, mp4, to '1/24545.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2avc1mp41 
    encoder   : Lavf56.40.101 
    Stream #0:0(und): Video: h264, none, q=2-31, 128 kb/s, 12.50 fps (default) 
    Metadata: 
     handler_name : VideoHandler 
     encoder   : Lavc56.60.100 libx264 
Stream mapping: 
    Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264)) 
Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height 

ответ

12

Ваш источник видео имеет полноразмерные хромы - как обозначено двумя последними 4s в YUV444P - и основной профиль не поддерживает этот формат, так что вы 'должен выбрать формат пикселей, такой как YUV 4: 2: 0

ffmpeg -i 1/25359.mp4 -vf "scale=2*trunc(iw/2):-2,setsar=1" -profile:v main -pix_fmt yuv420p out.mp4 
+0

Только один вопрос. Можно ли использовать «-pix_fmt yuv420p» для каждого видео? Я имею в виду, давала бы какая-нибудь ошибка для некоторых видео? Как это влияет на видео? (Я просто хочу создать хорошую команду ffmpeg, чтобы использовать ее на своем веб-сайте.) – Milad

+2

Для воспроизведения в Интернете вы должны использовать его. Это единственный поддерживаемый формат пикселей. – Mulvya

Смежные вопросы