RTP/RTSP 로 미디어를 스트리밍 할경우~

김일목의 이미지

RTP/RTSP 로 미디어를 스트리밍 할때
꼭 특정한 파일만 스트리밍이 가능한건가요?
MPEG는 전부 스트리밍 가능한건가요?
AVI 도 되는 건지 잘 모르겠네요~
제발 알려 주세요~

루믹서의 이미지

스트리밍은 스트리밍 포멧으로 변환을 해야 합니다. transcoding이라고하죠. 일단 MPEG에도 여러방식이 있지만, encoding방식에 따라 스트리밍이 가능한지 안한지 구분을 하게 됩니다. RTP/RTSP 프로토콜을 이용하여 스트리밍을 하지만 그 미디어가 플레이 될때. 위에 따라오는 패킷이 loss가 생겨도 미디어를 얼마나 잘 플레이 해줄까가 문제가 되겠네요..
예로 AVI가 앞뒤로 10M를 읽어서 decoding을 해서 영상으로 보여진다고 하면.. 패킷의 사이즈는 정해져있어서 10M를 다보내진 못합니다. 그래서 이것을 다 받아야만 플레이가 가능하죠. 정확히 코덱에대한 알고리즘을 알지는 못하지만 MPEG의 기본 코덱인 mpg는 스트리밍이 가능합니다.
H.263, mp3도 스트리밍이 가능합니다.
제가 avi를 jmf를 이용해서 스트리밍을 했을때 안돼더군요..
이럴때는 transcoding을 이용하여 스트리밍 가능한 포멧으로 바꾸어주어야 합니다.

조금 검색해 보면 streaming가능한 파일포멧을 찾을수 있을겁니다.^^;;
추가로 윈도미디어에서는 wmv,asf가 스트리밍 가능 포멧이죠^^;;

thyoo의 이미지

Streaming에서
RTP위의 프로토콜로는 MPEG2 TS가 많이 쓰입니다.
ES야 뭐가 됐든 상관이 없지요.

인터넷 경유라면 비디오 ES의 경우
MPEG4 AVC 또는 MS v-1가
많이 쓰입니다.
___________________________________
Less is More (Robert Browning)

___________________________________
Less is More (Robert Browning)

unipro의 이미지

RTP/RTSP로 스트리밍할 때, 보통 .MP4 또는 .MOV를 사용합니다.(사실 MP4는 MOV를 기반으로 만든 것이기 때문에 접근방식은 같습니다.) 이 두개의 파일 포맷은 힌트트랙을 제공하는데, 이는 데이타 전송방법을 저장하는데 사용합니다. 따라서 RTP/RTSP 방식으로 전송하는 놈은 저장된 미디어의 포맷(보통 인코딩 방식)과 상관없이 힌트트랙만을 참조해서 데이타를 보내게 됩니다. 당연한 얘기지만, 이 방식을 사용하려면 전송하기 이전에 반드시 힌트트랙을 생성해줘야 합니다.

만약에 AVI를 RTP/RTSP로 데이타를 전송한다면 약간 복잡해지지만, 가능합니다. 전송하는 놈이 저장된 미디어 포맷에 따라서 적절한 페이로드를 생성해서 보내주면 됩니다. 얘는 새로운 미디어 포맷의 전송기능을 추가할 때마다 그에 따른 페이로드를 구성해주는 모듈을 추가해야합니다.

RTP/RTSP를 사용해서 어떤 미디어 포맷도 전송가능하리라 생각합니다. 독자적인 페이로드를 정의해서 사용할 수도 있겠지만, 여러 다른 프로그램과 호환성을 고려한다면 전송할 미디어 포멧의 페이로드를 정의한 표준문서를 찾아보는 것이 좋겠습니다.

내 블로그: http://unipro.tistory.com

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.