簡體   English   中英

如何在C#中使用ARW文件和Sony的編解碼器

[英]How to use ARW file and sony's codec in c#

我嘗試了不同的示例,也做了谷歌,但找不到任何有效的C#解決方案..還發現了一些不同語言的代碼,但是我無法將它們轉換為C#,請幫忙...

我已經嘗試過:-將.arw Sony照片轉換為.raw文件

還找到了dcraw源代碼,但找不到與ARW相關的任何信息...

Image.FromFile和Image.FromStream方法也給出了“參數無效”。

剛才我嘗試了此操作,並得到“圖像無法解碼。圖像頭可能已損壞。”

BitmapDecoder bmpDec = BitmapDecoder.Create(new Uri(file), BitmapCreateOptions.DelayCreation, BitmapCacheOption.None);
BitmapEncoder bmpEnc = new BmpBitmapEncoder();
bmpEnc.Frames.Add(bmpDec.Frames[0]);
Stream ms = new MemoryStream();
bmpEnc.Save(ms);
Image srcImage = Bitmap.FromStream(ms);

請幫助我將arw原始文件轉換為jpeg。 我想使用或不使用編解碼器。 我不知道如何使用sony的代碼,所以請幫我。 我只是想讓這個程序工作

我已經找到方法。 只需在此處安裝可下載的Sony編解碼器https://esupport.sony.com/swu/4025/US/

然后,BitmapDecoder將正常工作。

“無法解碼圖像。圖像頭可能已損壞。”

如果C#應用程序平台是“任何CPU”或“ x86”,我也會得到同樣的結果。 將平台設置為“ x64”為我修復了該問題。 在COM上使用來自本機C ++和WIC的編解碼器時,我也有相同的行為。 也就是說,如果從32位應用程序調用它將不起作用,但對於64位應用程序則可以。

很抱歉在舊主題上發布,但是沒有太多有關此主題的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM