|
우선 답변 감사드립니다.
제가 너무 간략하게 질문을 올렸나 봅니다. (죄송)
경황중에 오린 질문이다 보니 제대로 올리지를 못했네요.
현재 개발하여야 하는 것은 avi, mpeg 등의 동영상 파일을 서버에서 틀면 서버에 접속해 있는 클라이언트에도 해당 내용의 "영상" 및 "사운드"가 나타나는 일종의 인터넷 방송과 비슷한 형태의 서버, 클라이언트 개발입니다. 개발 제한 사항은 "Windows 98계열의 OS"에서 서버 및 클라이언트가 돌아간다는 것입니다. NT계열이라면 WMT 서버를 이용해 보겠으나, 98계열이다 보니 이를 이용할 수도 없고 하여 다른 방법을 찾고 있습니다.
가장 단순무식하게 생각하면 동영상파일을 몽땅 전송해 주고 그거를 MediaPlayer 컴포넌트를 이용하여 돌리면 되겠지만, 동영상파일이 어디 단순한 크기의 파일입니까 ? 기본적으로 MBytes 단위이다 보니 미치지(-_-;;) 않은 다음에야 이런 방법을 사용하겠습니까 ?
개발시간이라도 많으면 avi, mpeg 등의 파일의 헤더를 파악하고 처리하겠는데, 시간이 너무 부족한 관계로 기(記) 개발된 것(컴포넌트 등)이 있다면, 그걸 이용할려구 하고 있습니다.
이와 관련하여 아시는 내용이 있으면 좀 알려 주세요. ^^
유영인 [Chris] 님이 쓰신 글 :
: 일반적인 전송 방법으로 한다면.. 속도가 많이 안나오겠죠..? 화면 크기도.. 어느정도로 제한을 두셔야 할것 같습니다. 그렇지 않으면.. 속도가 나오기 힘들겠죠..
:
: 1. 화면을 캡쳐한 뒤, 보여줄 크기만큼으로 축소
: 2. 축소된 비트맵에서 바로 이전의 비트맵과 비교하여 Pixel Color가 다른 곳을 뽑아내서, int 형으로 연산시킴. 만약, 똑같다면 -1 값을 사용.
: 3. 연산된 값의 픽셀들을 String으로 길게 늘어뜨림
: 4. 압축 알고리즘으로 해당 String을 압축 (화면 크기가 작으면, 오히려 압축이 더 비효율 적입니다)
:
:
: 몇가지 문제점이 있었는데, 제일 큰 문제는.. 서버에서 화면을 캡쳐할때, 동영상은 캡쳐가 잘 되지 않는다는 점입니다. 그래서 임시 방편으로, 동영상을 멈춘후에, 윈도우에서 화면을 다시 그리게 하고 캡쳐를 했던 기억이 나네요. 역시.. 속도가 많이 떨어지고 비디오 카드마다 다른 성능을 보이는, 별로 좋지 않은 방법이었습니다..
:
: 그리고, 전송은 소켓으로 해당 값을 스트림 전송시키시면 됩니다.
:
: 하느리 님이 쓰신 글 :
: : 한대의 서버에 다수의 클라이언트가 물려 있는 상황에서 서버에서 디스플레이하는 동영상을 클라이언트에도 전송하면서 보이게 하고 싶은데, 방법이 영 떠오르지를 않네요. 어떤 방법을 이용하면 될까요 ?
: :
|