Опитвам се да направя андроид медиен плейър, който трябва да възпроизвежда медиите от мрежов поток. Знам, че може да възпроизвежда медии, които се предават по RTSP или HTTP, но моят случай е различен.
Нямам сървър за поточно предаване на медии и ако възнамерявам да използвам такъв, ще трябва да го модифицирам.
Това, което се опитвам да направя, е да предавам поточно видеото, което се заснема от камерата на android, към сървъра, да направя малка модификация във видеото (като промяна на цвета или прилагане на някакъв ефект и т.н.) и да го предавам обратно към телефона. Така че обикновено екранът ми е разделен на 2 части, едната е за възходящо предаване, а другата показва поточно предавано видео.
Сега това, което правя, е да заснема видеото на sdcard и в същото време го чета и предавам в мрежата. В уеб частта заснема видеоклипа (запазвам го във файл [също така мога да възпроизвеждам видеоклипа на сървъра]) и го изпращам обратно на телефона. На телефона мога да го получа, но не мога да разбера как да конвертирам този поток в правилния формат, така че да мога да го пусна в VideoPlayer
.
Открих също, че MediaPlayer
предоставя някакъв метод за възпроизвеждане на видеото от FileDescriptor
, така че мога ли да създам FileDescriptor
от сокета и да го предам на MediaPlayer
? Ще работи ли този метод? Възможно ли е да го направя без RTSP или HTTP?