2014-02-17 4 views
6

비디오를 녹화하고 amazon s3에 업로드하는 안드로이드/ios 비디오 공유 응용 프로그램을 개발했습니다. 호환성을 위해 안드로이드/ios는 H264/AAC 코덱과 함께 mp4 형식으로 기록합니다. 아이폰 OS에서Mp4 비디오 로테이션 메타 데이터

은 비디오 미세 경기

사용자가 파일의 회전을 설정, 센서로부터 정보를 받고, 세로 또는 가로 앱을 쏠 수 (안드로이드와 iOS에서 비슷한에 mediarecorder.setOrientationHint) 안드로이드 및 그 반대로. 문제는 웹 브라우저에서 비디오를 재생할 때입니다. mp4 형식 (예 : 크롬)을 지원하는 브라우저는 동영상을 표시하지만 회전 메타 데이터는 무시합니다. 리눅스에서 mplayer로 비디오를 재생할 때도 똑같은 일이 발생합니다. 마음에 오는

첫 번째 솔루션은 브라우저가 회전 메타 데이터를 무시하는 이유가 거기에

ffmpeg -i in.mp4 -vf transpose=<rotation value> out.mp4 

입니까? 그게 버그 야? 비디오를 녹화하는 동안이 문제를 해결하기 위해 뭔가를 할 수 있을까요?

여기에 각각 iOS 및 Android의 2 가지 샘플이 있습니다.

Thansk

ios video android video

답변

0

방법 1 : 화면 비율이 수평이 아닌 경우 HTML 요소를 회전
Chrome HTML5 Video Flipping Portrait Sideways

방법 2 : 다시 인코딩 아이폰 비디오
Displaying vertical videos with html5 on chrome

방법 3 : (고급) 아이폰 OS-장치에 제대로 방향을 설정
iOS AVFoundation: Setting Orientation of Video

방법 4 : 그가 대답
Use FFmpeg to rotate the video based on its <rotate> metadata? Why does Android put the wrong metadata?

을 발견 한 경우이 사람을 물어
관련 문제