2016-12-14 3 views
0

У каждого видео есть информация о потоке, вот так. -> 0: 0 (eng): Видео: h264 (Constrained Baseline) (avc1/0x31637661), yuv420p, 576x432 [SAR 1: 1 DAR 4: 3]Как я могу получить информацию о видеопотоке при использовании android MediaPlayer, информация, подобная SAR и DAR

Я использовал MediaPlayer для воспроизведения видео, Like это.

MediaPlayer mInternalMediaPlayer = new MediaPlayer(); 
mInternalMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); 
mInternalMediaPlayer.setDataSource(source); 
mInternalMediaPlayer.prepareAsync(); 

и я хочу получить соотношение сторон видеоизображения, чтобы вычислить соотношение сторон экрана, как я могу это сделать?

ответ

0

Соотношение сторон хранения - отношение горизонтальных и вертикальных пикселей в видео.

Таким образом, видео, имеющее 1280x720, имеет SAR 16: 9, видеоролик размером 640 × 480 имеет SAR 4: 3 и так далее.

DAR - соотношение сторон экрана - если они совпадают, то легче отображать видео. Если они не совпадают, пиксели должны быть «раздавлены» или искажены, чтобы отображать видео, и степень, в которой они искажены, - это Pixel Aspect Ratio.

Они связаны, как это:

  • PAR = DAR/SAR

Таким образом, чтобы получить соотношение сторон для хранения все, что вам нужно, это регулярное отношение видео аспект.

Вы можете получить это с помощью '' MediaMetadataRetriever объект: https://developer.android.com/reference/android/media/MediaMetadataRetriever.html

Примером является:

MediaMetadataRetriever videoMetaRetriever = new MediaMetadataRetriever(); 


String videoWidth = videoMetaRetriever.extractMetadata(
        MediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH); 

String videoHeight = videoMetaRetriever.extractMetadata(
        MediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT); 

 Смежные вопросы

  • Нет связанных вопросов^_^