Bug 26303

Summary: Сломалось кодирование c libx264
Product: Sisyphus Reporter: Michael A. Kangin <prividen>
Component: x264Assignee: Anton Farygin <rider>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: ender, rider
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
полный вывод ffmpeg none

Description Michael A. Kangin 2011-09-14 23:00:18 MSK
Created attachment 5106 [details]
полный вывод ffmpeg

При попытке перекодировать файл с -vcodec libx264 кодирование не начинается с ошибкой со словами "[libx264 @ 0x621440] This build of x264 requires high depth input. Rebuild to support 8-bit input.".

Команда кодирования:
$ ffmpeg  -y -i cam5-2011-09-14-21-18-03.ts -vcodec libx264 -vpre ultrafast -crf 31 -r 8 -t 600.3 -ss 1 -f mp4 -threads 0 outfile

ffmpeg-0.7.1-alt3
libx264-116-alt0.1
Система x86_64.

Со старыми версиями пакетов (libx264-106-alt2, ffmpeg-1:0.6-alt5) все работало замечательно.

Полный вывод ffmpeg в аттаче.
Comment 1 Sergey Bolshakov 2011-09-15 16:21:29 MSK
fixed in libx264-116-alt0.2
Comment 2 Michael A. Kangin 2011-09-16 17:16:50 MSK
Спасибо!

Но что-то там всё равно сломалось в новых версиях: на выходе получается файл в 4-5 раз(!) больше, чем был раньше.
Все x264-опции проверил, исправил парочку, что отличались, не помогло.
Comment 3 Sergey Bolshakov 2011-09-16 17:26:38 MSK
а если кодировать непосредственно утилём x264 ?
Comment 4 Michael A. Kangin 2011-09-16 20:47:53 MSK
(In reply to comment #3)
> а если кодировать непосредственно утилём x264 ?

Старый x264, похоже, был собран без поддержки libav* formats, и умеет открывать только какие-то непонятные YUV4MPEG (*.y4m), так что непосредственно сравнить не получится.

С новым x264 результат получается сопоставимым с ffmpeg, т.е., похоже, libx264 гадит.

oldhost $ ffmpeg  -y -i cam5-2011-09-14-21-18-03.ts -vcodec libx264 -vpre veryfast -crf 31 -r 8 -t 600.3 -ss 1 -f mp4 -threads 0 outfile1

outfile1 = 4442349

newhost $ ffmpeg  -y -i cam5-2011-09-14-21-18-03.ts -vcodec libx264 -vpre veryfast -crf 31 -r 8 -t 600.3 -ss 1 -f mp4 -threads 0 outfile2

outfile2 = 24678495

newhost $ x264 --crf 31 --preset veryfast --fps 8 -o outfile3 cam5-2011-09-14-21-18-03.ts

outfile3 = 30166191
Comment 5 Sergey Bolshakov 2011-09-17 02:08:07 MSK
в последнем примере наверное стоит указать --profile baseline
Comment 6 Michael A. Kangin 2011-09-17 16:12:35 MSK
(In reply to comment #5)
> в последнем примере наверное стоит указать --profile baseline

даже немножко похуже стало: размер получился 34254287