2017-11-09 22 views
1

저는 비디오 스트리밍 및 처리의 초보자입니다.Basler 카메라 잡기 루프에서 비디오 스트림 생성

Basler GiGE 카메라에서 스트림을 가져 와서 웹 컨테이너에 표시해야합니다.

Basler.Pylon C# API를 사용하여 카메라에 액세스하고 이미지를 하나씩 가져옵니다. IGrabResult 개체가 반환 된 이후 폭, 높이, 보폭, 물론 바이트 버퍼와 같은 다양한 매개 변수에 액세스 할 수 있습니다.

내 PC에서 이미지 창에 쉽게 표시 할 수 있지만 ASP.NET 웹 응용 프로그램에서 표시하려면 어떻게해야합니까?

편집

사람이 일반적으로 작동, 즉 너무

+1

https://developer.mozilla.org/en/US/Apps/Fundamentals/Audio_and_video_delivery/Live_streaming_web_audio_and_video 여기에 "전체 비디오 스트리밍 작업"에 대한 개요가 있습니다. 그러면 RTSP 또는 HLS C# 예를 들면 –

답변

1

비디오 스트리밍은 매우 전문적이며 일반적으로 인터넷을 통해 고화질 비디오를 여러 최종 사용자에게 스트리밍하려는 경우, 자신을 구축하기보다는 전용 비디오 스트리밍 서버를 사용하는 것이 가장 쉽습니다.

전용 비디오 스트리밍 서버는 호스팅 서비스 (예 : Vimeo)를 통해 제공 할 수 있으며, 설치 및 실행하는 상업용 서버 (예 : Wowza)이거나 설치 및 실행하는 프리웨어 스트리밍 서버 (예 : GStreamer)가 될 수 있으므로 그곳에.

일반적으로 스트리밍 서버는 비디오를 청크로 나누고 비디오의 여러 비트 전송률 복사본을 만듭니다. 이를 통해 클라이언트는 ABR (Adaptive Bit Rate Streaming)을 사용하여 비디오 청크를 청크로 다운로드하고 현재 장치 및 네트워크 상태에 따라 다음 청크의 비트 전송률 버전을 선택할 수 있습니다. HLS와 MPEG-DASH는 ABR 스트리밍 프로토콜의 예입니다.

웹 페이지에서이 스트리밍 프로토콜을 이해할 수있는 HTNML5 플레이어가 필요합니다. 프리카 Shaka 및 Dash.js 플레이어와 같은 많은 예제가 있습니다. 이를 웹 페이지에 통합하는 것은 매우 간단합니다.

Netflix 및 YouTube와 같은 서비스에서 사용중인 것을 볼 수 있습니다.이 서비스는 빠른 비트율에서 시작하여 빠른 시작을 보장하기 위해 종종 시작되며 이후 현재의 네트워크 조건 및 장치에 도달했습니다. 유튜브를 볼 때 당신은 예를 들어,이 그래프를 볼 수있는 방법에 여기에 몇 가지 정보를 참조하십시오 :

말로 미루어 보아, 위의 모든, 그것은 당신의 사건이 될 것으로 보인다 가치가 아무것도 스틸 이미지 스트림을 처리합니다. 모든 비디오가 실제로는 여전히 정지 이미지 스트림이지만, 이미지가 자주 변경되지 않을 수도 있으므로 위의 기술 중 일부는 필요하지 않을 수 있습니다. 비디오 스트리밍의 많은 기술은 서버에서 클라이언트로 초당 30 또는 60 개의 고품질 프레임을 스트리밍하는 대용량 데이터.

예를 들어 이미지 스트림이 30 초마다 한 번 나타나는 경우 Nisus가 말한 것처럼 웹 페이지에 이미지를 표시하고 웹 페이지 또는 앱에서 매번 서버를 폴링하도록 할 수 있습니다 30 초 (귀하의 경우 ASP.NET AJAX 사용)를 클릭하여 새 이미지를 다운로드하십시오.

0

당신은 적어도 두 가지 옵션이 어떻게 작동하는지 비디오 스트리밍을 설명 할 수 있다면이 가이드 라인에 대한 코드를하지만, 더 찾고 있지 않다 - 첫 번째 몇 초마다 일련의 jpeg 이미지를 생성하고 태그 및 간단한 자바 스크립트 코드를 사용하여 클라이언트에서 하나씩 보여줍니다. 두 번째 옵션은 mp4 비디오를 생성하고 스트리밍하여 일부 COM-windows 미디어 플레이어 또는 html5 컨트롤로 클라이언트에 표시하는 것입니다.