일부 장치의 화면을 기록하려면 Android 4.4 screenrecord
명령을 사용하고 있지만 --size
매개 변수를 사용하면 캡처 비디오가 손상됩니다.Android adb 화면 캡처에 유효한 캡처 크기 찾기
주어진 장치의 인코더에 대해 유효한 screenrecord
크기 목록을 얻으려면 어떻게해야합니까?
일부 장치의 화면을 기록하려면 Android 4.4 screenrecord
명령을 사용하고 있지만 --size
매개 변수를 사용하면 캡처 비디오가 손상됩니다.Android adb 화면 캡처에 유효한 캡처 크기 찾기
주어진 장치의 인코더에 대해 유효한 screenrecord
크기 목록을 얻으려면 어떻게해야합니까?
그런 목록이 없습니다. 적어도 모두 유효 해상도가 포함 된 것은 아닙니다. 인코더가 해당 프로필 레벨을 지원하는 경우 AVC profile list에 나열되어
어떤 크기 작동합니다, 당신은 그 MediaCodec
를 쿼리하여 얻을 수 있습니다. Java 프로그래밍 언어로 작성된 코드에서 AVC 용으로 MediaCodecInfo
을 얻은 다음 배열을 얻을 수있는 CodecCapabilities
객체를 얻으려면 getCapabilitiesForType()
을 사용해야합니다. CodecProfileLevel
클래스에는 AVC 프로필 수준 상수가 포함됩니다. (나는이 개인 고유의 동등한 것들이 무엇인지 잘 모르겠다.)
명시 적으로 지원되지 않는 많은 해결책이 효과가있다. M과 N이 모두 16의 배수이면 (임의의 MxN 해상도가 작동 할 확률은 1080에 대한 추가 허용치와 함께) 훨씬 높아집니다. 그러나 일부 기기는 제한적입니다 (예 : this post 참조).
지원되는 프로필/레벨을 얻을 수 있었지만이를 어떻게 계산할 수 있습니까? 지원되는 크기는 무엇입니까? – jacob
AVC 표준 (또는 이전에 링크 된 AVC wikipedia 페이지)에서 테이블을 만듭니다. CTS 테스트 중 하나에서 테스트 사례의 너비/높이/fps를 결정하는 데 사용되는 예제를 볼 수 있습니다. https://android.googlesource.com/platform/cts/+/kitkat-release/tests/tests/ media/src/android/media/cts/EncodeVirtualDisplayWithCompositionTest.java ('getAvcSupportedFormatInfo()'를 찾으십시오). 일부 다른 테스트에는 비슷한 검사가 있어야합니다. 로우 엔드 장치는 720p 인코딩을 지원하지 않을 수 있지만 기존 테스트에서이를 필요로합니다. – fadden