
Привет, я хочу закодировать raw(юв) видео вм4вс помощью команды ffmpeg вВп8схему кодирования, я пробую использовать эту команду:
./ffmpeg -s 1280x720 -i raw.yuv -vcodec libvpx 1.m4v
но ошибка была:
Input #0, rawvideo,from 'raw.yuv':
Duration: 00:00:58, start: 0.000000, bitrate: 276416 kb/s
Stream #0.0: Video: raw, yuv420p, 1280x720, 276480Kbs,25 tbr, 25 tbn, 25 tbc
[mp4 @ 0x13acff0]track 1: could not find tag, codec not currently supported in c
ontainer
Output #0, ipod, to '1.m4v':
metadata:
encoder :lavf55.0.100
Stream #0.0: Video: vp8, yuv420p, 676x380, q=1--1, 200k,90k tbn, 25
tbc
Stream mapping:
Stream #0.0 -> #0.0(raw video ->libvpx)
Could not write header for output file #0 (incorrect codec parameters ?)
Пожалуйста, мне нужна помощь.
решение1
M4V — это переименованный контейнер MP4, поэтому он может содержать только кодеки MPEG (и небольшое количество не-MPEG аудиокодеков, например AC3). VP8 — это не кодек MPEG. Его нужно поместить в контейнер MKV или WEBM (на самом деле намеренно ограниченная форма MKV).
ffmpeg -s 1280x720 -i raw.yuv -c:v libvpx output.webm
Если вы хотите добиться хороших результатов с VP8, вам следует прочитатьРуководство по кодированию VP8наFFmpeg вики.