Я пытаюсь загрузить видео в VideoView
и MediaController
со следующим кодом:
video.setVideoURI(Uri.parse(uri));
mediaController = new MediaController(this);
mediaController.setMediaPlayer(video);
mediaController.setAnchorView(footer);
video.setMediaController(mediaController);
video.requestFocus();
video.start();
Если я использую файл.3gp (например, это), он воспроизводит. Но мой MP4 файл не будет воспроизводить только диалоговое окно, в котором говорится:
Извините, это не может воспроизвести это видео
Я согласен, что видео может быть не в правильных форматах для такой цели, как я не сделал это коллегой. В каком формате должны находиться видео?
Обычно я использую Handbrake и запускаю Ubuntu.
Формат В настоящее время:
Видео:
Размеры: 1024 x 624
CODEC: H.264/AVC
Скорость кадров: 30 кадров в секунду
бит: 1307 Кбит/с
Аудио:
CODEC: аудио MPEG-4 AAC
Каналы: Стерео
Частота дискретизации: 44100 Гц
Битрейт: 63 кбит/с
Вот некоторые ошибки LogCat при воспроизведении в качестве ресурса:
12-20 10:54:26.120: I/MediaPlayer(27966): uri is:android.resource://com.android.player/2130968576
12-20 10:54:26.120: I/MediaPlayer(27966): path is null
12-20 10:54:26.160: E/MediaPlayer(27966): Unable to to create media player
12-20 10:54:26.160: D/MediaPlayer(27966): Couldn't open file on client side, trying server side
12-20 10:54:26.160: I/MediaPlayer(27966): prepareAsync called in state 4
12-20 10:54:26.160: E/MediaPlayer(27966): error (1, -2147483648)
12-20 10:54:26.210: E/MediaPlayer(27966): Error (1,-2147483648)
12-20 10:54:26.210: D/VideoView(27966): Error: 1,-2147483648
У меня был один из тех лампочек, и я обнаружил, что видео было размещено на Amazon S3. Загрузили его на наш веб-сервер IIS и он играет!
Пожалуйста, обратитесь к следующему документу, он имеет всю спецификацию
http://developer.android.com/guide/appendix/media-formats.html
Спасибо,