2016-08-18 16 views
0

YUV 파일이 있습니다. 비디오 파일에서 모든 프레임을 추출해야합니다. 문제는 프레임의 픽셀 깊이가 11 비트/픽셀이라는 것입니다.ffmpeg를 사용하여 'YUV'원시 파일에서 이미지를 제대로 추출 할 수 없습니다.

그러나 대부분의 픽셀 형식 옵션은 16 비트 또는 12 비트입니다. 11 비트/픽셀 회색조 형식을 찾고 있는데요.

ffmpeg -video_size 448x512 -r 25 -pixel_format gray -i MR.yuv outp 
ut-%d.png 

가 왜곡 캡처 출력 프레임 모두, 회색, gray16be 검사 :

현재 I 커맨드 라인을 실행. 11bit/픽셀 깊이 프레임을 추출하는 임의의 방법이 있는가? [맞춤]

original, gray16be 감사

+0

패딩 된 경우 lut 또는 geq 필터를 사용하여 입력 값의 크기를 조정할 수 있습니다. 사용 된 채도 샘플은 무엇입니까? 짧은 샘플을 게시 할 수 있습니까? – Mulvya

+0

@Mulvya 샘플링 방법은 11bit/pixel의 4 : 0 : 0입니다. PYUV 플레이어에서이 설정을 볼 때 비디오에 나타나는 결과 프레임이 최적의 품질입니다. 이제 ffmpeg를 사용하여 같은 프레임을 추출하고 싶지만 왜곡 된 이미지가 나타납니다. –

+0

1 프레임의 해상도와 파일 크기는 어떻게됩니까? 하나 첨부 할 수 있습니까? – Mulvya

답변

0

Prajwal 9와 16 사이의 비트 깊이와 상관 YUV 파일은 실제로는 16 비트로서 저장 될 (사용되지 않는 비트는 0으로 패딩됩니다). 소스 파일이 비트를 압축 한 이상한 소프트웨어에 의해 생성 된 것이 아니라면 나는 그것을 의심합니다.

gray16le을 사용해 보셨습니까? 그것은 gray16be보다 훨씬 더 일반적입니다.

P.S : 명령 행 ffmpeg 관련 질문은 stackoverflow 대신 superuser.com에서 질문하는 것이 좋습니다.

+0

예 gray16le로 시도했지만 결과가 좋지 않습니다. 모든 프레임에 검은 색 이미지가 나타납니다. Mulvya가 말했듯이 –

+0

은 내가 아이디어가 없기 때문에 샘플이 필요할 것입니다. – Ely

+0

원래의 프레임과 회색의 프레임이 붙어 있습니다. –