我正在收到byte[]
圖像數據(來自網絡攝像頭源,通過網絡傳輸)並希望將其顯示在我的WPF圖像控件中。 如果我將分辨率設置爲160x120,我會看到一個很好的小圖像被顯示出來。 對於任何其他決議,雖然我看到虛無,沒有,zilch,蹲。將Image.Source設置爲有效數據時未顯示圖像
如果我將原始字節寫入磁盤,我可以看到數據確實是一個有效的jpg圖像。 只是爲了確保它不是jpeg不兼容我已經用png和bmp編碼/解碼測試了它,並得到了相同的結果;仍然沒有圖像。
任何人都有一個明智的想法?
private bool OnImage(byte[] inJpg)
{
this.Dispatch(() =>
{
//File.WriteAllBytes("h:\\tmp\\test" + sImageNum++ + ".jpg", inJpg);
using (MemoryStream ms = new MemoryStream(inJpg))
{
BitmapDecoder decoder = new JpegBitmapDecoder(ms, BitmapCreateOptions.None, BitmapCacheOption.Default);
ImageRemoteVideo.Source = decoder.Frames[0];
}
}
);
}
如果你寫的圖像到磁盤,然後設置您的來源爲指向該文件,而不是對其進行解碼的情況發生?不是將其作爲一種解決方案,而是將其作爲解決問題的可能手段。你能告訴我們你的XAML嗎?那裏有什麼新奇的東西? – 2012-03-15 20:26:34
XAML: <的ScrollViewer Grid.Row = 「1」 VerticalScrollBarVisibility = 「自動」 HorizontalScrollBarVisibility = 「自動」> <圖像彈力= 「無」 名稱= 「ImageRemoteVideo」/> 的ScrollViewer> – Pygmy 2012-03-15 20:53:20
我只是試圖創建將其UriSource設置爲我寫入磁盤的文件的BitmapImage,並將Image的源設置爲該BitmapImage,然後工作正常。所以絕對不是圖像/圖像數據,設置圖像的來源肯定會出錯。 – Pygmy 2012-03-15 21:02:24