2014-11-26 4 views
0

나는 택배 서비스 프로젝트를 진행하고 있습니다. 저는 카메라 앱으로 일하는 직원을 위해 Android 애플리케이션을 개발했습니다. 사진 및 비디오 레코드를 만들 수 있습니다. 사진 또는 비디오 파일이 준비되면이 앱이 서버에 자동으로 업로드 할 수 있습니다 (WiFi 연결이 활성화 된 경우). 서버는 사진 및 비디오 파일에 대한 링크를 포함하여 각 직원의 일상 업무를 볼 수있는 웹 사이트를 유지 관리합니다. 물론 브라우저를 통해 사진에 액세스해도 문제는 없지만 비디오 파일에는 문제가 있습니다.온라인으로 안드로이드 녹화 비디오 스트리밍

Google은 직원이 근무하는 Android 기기를 제한하지 않으며 Android 2.3.3 이상에서 제공되며 카메라가 있어야합니다. 비디오는 CamcorderProfile.QUALITY_LOW 설정으로 작성되므로 형식은이 CamcorderProfile.QUALITY_LOW의 장치 결정에 달려 있습니다. 데스크탑 (Windows)의 다양한 장치에서 비디오 파일을 보는 데는 문제가 없습니다. 나와 내 수석은 일부 브라우저 플러그인을 가지고 있으므로이 파일을 브라우저에서 열 수 있습니다. 그러나 우리는 고객 측에서 어떠한 브라우저 플러그인이나 추가 소프트웨어도 필요로하지 않는 사이트에서 비디오보기 솔루션을 원합니다.

그래서 질문은 다음과 같습니다

  1. 은 무엇 (유튜브에서 같은) 클라이언트 측에 전체 파일을 다운로드하지 않고 온라인 비디오 시청을 가능하게 할 수있는 최고의 비디오 포맷 인, 비디오 기록이 매우 길어질 수 있습니다 (1 시간, 2 시간 또는 그 이상).

  2. 수동으로 입력 파일 형식을 지정하지 않아도 Android에서 녹화 한 비디오 파일을 해당 형식으로 변환하는 데 필요한 도구는 무엇입니까? 우리의 서버는 SMP Debian 3.2.63-2+deb7u1 x86_64" "에 의해 구동됩니다. 내가 뭔가를 놓친

가. 미안 해요,이 비디오를 다루는 첫 프로젝트입니다, 내가 지식이 부족합니다.

답변

0

난 내 자신의 질문에 대답, 향후 연구가 끝나면 태그를 사용하여 사이트의 모든 내용을 스트리밍 할 예정이며, 유일한 소스는 .mp4 (H.264)이며 사용자의 99.9 %는 저는 Windows 사용자입니다. Chrome, Mozilla Firefox 및 Microsoft Internet Explorer에서 H.264 비디오를 보는 데 아무런 문제가 없으므로 대부분의 고객이 수행 할 것입니다.

H.264 로의 비디오 변환은 ffmpeg이 작업을 수행합니다. 나는 이미 여러 가지 시험을했다. 진짜 문제는 모든 동영상이 인물 모드에서 Android 휴대 전화로 녹화되기 때문에 동영상 회전을 관리하는 것이 었습니다. Android에서는 프레임을 가로 모드 (네이티브 카메라 방향)로 녹화하지만 메타에서 90도 회전 속성을 지정하는 것으로 나타났습니다 데이터. 그리고 많은 양의 비디오 플레이어와 Firefox는 그것을 이해하기를 거부했습니다. 문제는 이런 명령에서 "트랜스"및 "회전"에 의해 해결 될 수

ffmpeg -i 1.avi -vf "transpose=1" -r 25 -b:a 64k -b:v 256k -metadata:s:v:0 rotate=0 r1.mp4 
  • -vf "transpose=1" 물리적 회전 이미
  • 을 수행되므로
  • -metadata:s:v:0 rotate=0 메타 데이터에 회전 특성을 클리어 프레임 90도
  • 회전

왼쪽은 출력 품질을위한 매개 변수를 조정하고, 일괄 변환 스크립트를 작성하고, crontab에 기록하고, 사람들이이 비디오를 볼 수 있도록 HTML 및 JS를 작성하는 작업입니다.