Подтвердить что ты не робот

Пример видеопотока для Android

Я хочу реализовать потоковое видео в моем проекте. Итак, есть ли какой-нибудь учебник, который работает? Видео сохраняются на стороне сервера. Итак, чтобы получить видео с помощью URL-адреса и воспроизвести его на Android. Я попробовал несколько примеров, но у меня возникла ошибка: "Извините, это видео невозможно воспроизвести". Я пытаюсь использовать MP4.

4b9b3361

Ответ 1

У меня была такая же проблема, но, наконец, я нашел способ.

Вот прохождение:

1- Установите VLC на свой компьютер (SERVER) и перейдите в Media- > Streaming (Ctrl + S)

2- Выберите файл для потока или если вы хотите передать свою веб-камеру или... нажмите на вкладку "Захват устройства" и выполните настройку и, наконец, нажмите кнопку "Стрим".

3 Здесь вы должны настроить конфигурацию потокового сервера, просто перейдите на вкладку "Вариант" и вставьте следующую команду:

:sout=#transcode{vcodec=mp4v,vb=400,fps=10,width=176,height=144,acodec=mp4a,ab=32,channels=1,samplerate=22050}:rtp{sdp=rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/}

ПРИМЕЧАНИЕ. Замените YOURCOMPUTER_SERVER_IP_ADDR на свой IP-адрес компьютера или на любом сервере, на котором запущен VLC...

ПРИМЕЧАНИЕ. Вы можете видеть, что видеокодек - это MP4V, который поддерживается андроидом.

4 перейдите в eclipse и создайте новый проект для медиа-плейбака. создайте объект VideoView и в функции OnCreate() напишите следующий код:

mVideoView = (VideoView) findViewById(R.id.surface_view);

mVideoView.setVideoPath("rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/");
mVideoView.setMediaController(new MediaController(this));

5 запустите apk на устройстве (не симулятор, я его не проверял) и дождитесь запуска воспроизведения. пожалуйста, подумайте, что процесс буферизации займет около 10 секунд...

Вопрос: Кто-нибудь знает, как уменьшить время буферизации и воспроизвести видео почти вживую?

Ответ 2

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

Код, указанный в android-Sdk/samples/android-?/ApiDemos, отлично работает. Скопируйте каждую папку в проект Android, а затем в MediaPlayerDemo_Video.java введите путь к видео, которое вы хотите передать в переменной пути. Он остается пустым в коде.

Для меня работал следующий видеопоток: http://www.pocketjourney.com/downloads/pj/video/famous.3gp

Я знаю, что протокол RTSP должен использоваться для потоковой передачи, но класс mediaplayer поддерживает HTTP для потоковой передачи, как указано в коде.

Я искал формат видео и обнаружил, что видео, преобразованное в mp4 или 3gp с использованием Quicktime Pro, отлично работает для потоковой передачи.

Я тестировал последний apk на Android 2.1. Приложение dosent работает на эмуляторах хорошо. Попробуйте на устройствах.

Я надеюсь, что это поможет.