2013-07-02 1 views
2

서문는 PHP & MySQL은 동적 OGG 파일

나는 OGG 문서, 특히 framing 부분을 읽어 된 서비스를 제공 할 수 있습니다.

물론 많은 것을 이해하지 못했습니다. 그러나 내가 이해 한 바에 따르면, ogg 파일은 ogg 페이지 (64kB 최대)의 순서로 만들어집니다. "절대 과립 위치"는 각 페이지 머리글에서 ogg 비디오의 프레임 번호를 결정합니다.

실제 질문

한다고 가정 내가 가진 일부 대형 비디오 파일, 예를 들어, 로컬로 저장된 보안 장면. 비디오 파일을 ogg 페이지로 분할하고 각 페이지의 해당 타임 스탬프가있는 웹 서버의 MySQL 테이블에 저장합니다.

시간 에서 비디오를보기를 요청

시간 B에 (64KB의의 최대 물방울 크기), PHP 스크립트는 테이블을 쿼리하고 그 시간 범위 사이에서 OGG 페이지를 얻을 것입니다. 그리고 프레임 번호를 0에서 x으로 증가시키고 적절한 MIME 형식으로 반향시킵니다.

그럴까요?

+0

큰 비디오 파일을 저장하지 마십시오 데이터베이스에서. 그것을 위해 설계된 것이 아니며 단순히 작동하지 않습니다. 비디오 데이터를 파일 시스템에 일반 파일로 저장하고 거기에서 제공하십시오. 메타 데이터를 데이터베이스에 보관하고이를 사용하여 비디오 파일을 찾습니다. –

+1

큰 데이터 집합을 데이터베이스에 저장하는 데 문제가 없었습니다. 당신의 솔루션은 논리적으로 들린다. 파일의 시작 부분에 당신이 동적으로 구축 할 필요가있는 헤더가있을 수도있다. – DevZer0

+0

PHP의 메모리 및 실행 시간 제한을 염두에 두십시오. – ToBe

답변

0

나는 절대적으로 전문가에 대한 OGG 파일 아니지만, 당신이 말한 내용에 따라, 비디오 스트림은 OGG 페이지 일련의 사실이다.

각 페이지를 데이터베이스에 BLOB로 저장하는 것이 흥미로운 것 같습니다. 동적으로 요청시 해당 페이지를 재구성하십시오. 의견에서 제안한 DevZerO으로 요청시 파일 헤더를 재구성해야합니다.

클라이언트의 관점에서 볼 때 파일을 다운로드하는 것과 비슷합니다 (PHP는 스트리밍에 적합하지 않습니까?). 나는 이것이 좋은 생각, 당신은 그 방법에 대한 몇 가지 예비 단계를 달성하면, 나는 그것에 대해 몇 가지 피드 백을 가지고 기쁠 생각 사실 에서

)