2012-06-08 8 views
1

양식을 사용하여 비디오를 업로드하고 업로드 된 임시 파일에서 비디오 정보를 구문 분석하려고합니다. 임시 파일에는 파일의 시작 부분에 양식 정보가 포함되어 있으며 나머지는 비디오 바이트입니다. ffmpeg는 비디오 바이트가 시작되는 위치에서 파일을 파싱 할 수 있습니까? 많은 감사합니다!ffmpeg 파일의 특정 위치에서 구문 분석 할 수 있습니까?

답변

0

당신은 가장 쉬운 방법은 관심있는 데이터 만 추출 할 dd(1) 도구를 사용하는 것입니다 아마 함께 스크립트에 조각을 찾고 있다면 그것은이 같은 보일 것이다.

dd if=/path/to/temp/file ibs=<size to skip> skip=1 | ffmpeg --whatever 

를이 은 에 해당 블록 크기를 사용하므로 모두 입력 작업이 완벽하지 않으므로 은 적합하지 않습니다. 좀 더 크고 2의 배수의 배수가 처음에는 낭비하는 많은 공간에 비해 이상적이지만, 거의 동일한 내용의 새 파일을 만드는 것보다 훨씬 낫습니다.

+0

나는 그것을 시도하고 그 방법을 좋아하지 않는다. 모두 고마워. – Treper

+0

나는 단지이 방법을 발견하고 유용하다고 생각했습니다. ffmpeg에서 비디오 포맷을 결정하는 데 필요한 바이트 수를 알 수 있습니까? 또는 여러 파일 형식에 대한 비디오 정보를 설명하는 데 필요한 바이트 수를 지정하면 원본 파일에서 모두 추출하지 않고 dd를 사용하여 특정 바이트를 추출 할 수 있습니다. 감사합니다. – Treper

+0

'libmagic' 라이브러리는 첫 번째 킬로바이트 정도의 파일 포맷을 결정할 수 있습니다. 그래서 헤더를 없애면 파일 타입을 추가적으로 KB 단위로 찾아 낼 수있을 것입니다. 대부분의 _containers_는 몇 바이트에서 유형을 알려주지 만 컨테이너 내부의 스트림 형식을 발견하면 꽤 많이 걸릴 수 있습니다. – sarnold

관련 문제