Как отправить Memorystream из сокета http - PullRequest
0 голосов
/ 29 марта 2019

У меня есть приложение VB WinForms, я откуда-то получил кадры. Приложение не разработано мной.

_ImageList = New Queue(Of MemoryStream)

Dim bmpdecode As New Bitmap(nWidth, nHeight)
Dim ms As New MemoryStream

bmpdecode.Save(ms, Imaging.ImageFormat.Jpeg)

_ImageList.Enqueue(ms)

PictureBox1.BeginInvoke(New DelPintarImagen(AddressOf DrawImage), New Object() {bmpdecode})

DrawImage - это тип растрового изображения.

То, что я хочу, это получить из приложения для Android Xamarin VideoView или ImageView, что я вижу в PictureBox1

После нескольких дней исследований я не смог найти ничего, что работает минимально.

Я могу видеть поток по http в веб-браузере, но не могу получить ни с одного VideoView или ImageView.

1 Ответ

0 голосов
/ 10 апреля 2019

У меня есть решение для этого, оно простое, но оно работает.

Я использовал WebView для отображения потока в моем приложении Xamarin, отключив параметр масштабирования, поэтому для пользователя это похоже на воспроизведение потока.

C # код:

var wPlayer = FindViewById<WebView>(Resource.Id.webView1);
//Zoom Out for stretch the content by the width. 
wPlayer.Settings.LoadWithOverviewMode = true; 
wPlayer.Settings.UseWideViewPort = true;

wPlayer.SetPadding(0, 0, 0, 0);

wPlayer.LoadUrl("http://ip:port/?params");

Axml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:showIn="@layout/activity_main">

<android.webkit.WebView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/webView1"
/>


</RelativeLayout>
...