2013-02-07 5 views
1

Android 기기에서 포도 나무 비디오를 볼 수있는 앱을 만들었습니다. 기본적으로 .mp4 비디오가 VideoView에로드됩니다. 다음 문서 (http://developer.android.com/guide/appendix/media-formats.html)에서 mp4 비디오 재생은 Android 버전 3 이상의 기기에서 지원됩니다.동영상 재생을 지원하는 Android 기기를 확인하는 방법은 무엇인가요?

나는 이전 버전의 Android 버전을 필터링하는 매니페스트 파일에 이미 android:minSdkVersion="11"을 추가했지만, Android의 최신 버전 (예 : 4.1, 4.2)을 사용하는 사용자로부터 피드백을 받고 있습니다. '동영상을 재생할 수 없습니다'라는 오류 메시지가 표시됩니다.

에뮬레이터를 사용하여 비디오 재생을 테스트 할 방법이 없기 때문에 (내가 틀렸다면 수정하십시오.) 무슨 일이 일어나는지 정말로 알 수 없습니다.

비디오 재생을 할 수있는 장치의 기능을 확인하거나 최소한 비디오를 재생할 수있는 에뮬레이터를 얻을 수있는 방법이 있는지,이 문제를 올바르게 수정할 수 있습니까?

pd. 관심있는 사용자는 Google Play에서 내 앱에 연결할 수 있습니다. 당신이 볼 수 있듯이, 나는 부정적인 리뷰에 의해 짓 눌린 되 해요 : 당신이 밀접하게 구글의 호환성 매트릭스를 보면 https://play.google.com/store/apps/details?id=com.thirtymatches.vineflow

답변

1

, 당신은은 안드로이드 3.0 릴리스와 함께 시작 MP4/H264 인코딩에 대한 지원을 확인할 수 있습니다. MP4/H.264의 재생은 모든 Android 기기에서 Android 1.0으로 지원되었으므로 다른 API 호환성이 필요한 경우가 아니라면 최신 Android 버전으로 사용을 제한 할 필요가 없습니다.

VideoView를 통해 이러한 모든 장치의 비디오 재생은 휴대 전화의 칩셋에서 제공하는 하드웨어 디코더를 사용하여 수행됩니다. 따라서 호환성을 보장하려면 비디오를 최저 공통 분모로 인코딩해야합니다. Google은 연결된 페이지 하단에 '동영상 인코딩 권장 사항'을 제공합니다. I also wrote an answer은 모든 안드로이드 기기에서 재생되는 MP4/H264 형식으로 어떻게 트랜스 코드되었는지 설명합니다.

비디오 클립으로 Vine이 무엇을하는지 모르는 경우 비디오가 모두 균일 한 인코더 매개 변수로 인코딩되지 않았을 수 있습니다. 그들은 광범위한 호환성을 보장하기 위해 추가 서버 측 처리없이 비디오를 핸드셋에서 직접 스트리밍하고 스트리밍 할 수 있습니다. 나는 모른다. 그렇다면 자신의 소프트웨어 코덱 (RockPlayer, MX Player 또는 VLC do와 같은 앱)을 구현하거나 b) 서버에서 동영상을 트랜스 코딩하지 않고 (즉, 콘텐츠를 보여줄 수있는 Android 앱을 개발하는 것이 어려울 수 있습니다. 아마도 Vine의 서비스 조건에 위배됩니다).

+1

게시물을 읽고 그것이 이전/이후 3 + android 버전 문제가 아니라는 것을 알게 된 후 다른 접근 방식을 시도했는데 .mp4 비디오를 장치로 다운로드 한 다음 재생하면서 문제가 해결되었습니다. 그것. 기본적으로 videoView.setVideoURL에서 videoView.setVideoPath로 전환하면이 문제가 해결됩니다. – Henrique

관련 문제