[英]Can we convert a live video stream into a byte array?
我正在使用C#.NET,我從url(rtsp:// streamurl)獲取實時視頻流。 現在,我想知道是否可以將實時流轉換為字節數組,以便可以使用NReco.VideoConverter組件使用.h264對該流進行編碼,然后通過服務器對其進行流傳輸。
我目前正在收集有關NReco.VideoEncoder的詳細信息並研究基礎知識。 它具有一種轉換實時視頻流的方法 ,但是對於輸入文件,它需要System.IO.Stream而不是URL路徑。 這就是為什么我問這個問題。 謝謝!
我沒有使用NReco.VideoEncoder的經驗,所以這只是一個猜測:
查看鏈接到界面的鏈接時,您將看到:
public ConvertLiveMediaTask ConvertLiveMedia(
Stream inputStream,
string inputFormat,
string outputFile,
string outputFormat,
ConvertSettings settings
)
Stream非常靈活(第一個輸入參數),因此您應該能夠使用文件和Web中的任何內容……因此您應該能夠以這種方式進行操作(尚未編譯此代碼):
// convert url to stream
WebRequest request=WebRequest.Create(url); // your rtsc url?
request.Timeout=30*60*1000;
request.UseDefaultCredentials=true;
request.Proxy.Credentials=request.Credentials;
WebResponse response=(WebResponse)request.GetResponse();
using (Stream stream = response.GetResponseStream())
{
var converter = new FFMpegConverter(); // init converter
converter.ConvertLiveMedia(stream, // put your stream here
"???", // problem here... no rtsc support in Formats enum found, so you might need to know the video format
"C:\whateverpath\whatever.hevc", // extension?
Format.h265);
}
我在這里看不到如何支持rtsc,現在您可能需要先將哪種視頻編碼打包到rtsc中,否則轉換器將無法理解輸入(至少在使用您提到的此接口時)。 這就是我在評論中的意思:您需要知道(字節)流的數據結構,才能知道如何解釋這些位,否則您必須做出猜測。
他們的網站指出了該功能:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.