KR101096802B1 - 비디오 스트림 혼합장치 및 그 방법 - Google Patents
비디오 스트림 혼합장치 및 그 방법 Download PDFInfo
- Publication number
- KR101096802B1 KR101096802B1 KR1020090017032A KR20090017032A KR101096802B1 KR 101096802 B1 KR101096802 B1 KR 101096802B1 KR 1020090017032 A KR1020090017032 A KR 1020090017032A KR 20090017032 A KR20090017032 A KR 20090017032A KR 101096802 B1 KR101096802 B1 KR 101096802B1
- Authority
- KR
- South Korea
- Prior art keywords
- stream
- slice
- video stream
- slice header
- screen
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012545 processing Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000007906 compression Methods 0.000 description 9
- 230000006835 compression Effects 0.000 description 9
- 230000006866 deterioration Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234345—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/188—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
- H04N7/152—Multipoint control units therefor
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
비디오 스트림 혼합장치 및 그 방법이 개시된다. 본 발명의 일 실시예에 따른 비디오 스트림 혼합장치는 압축 도메인에서 다수의 비디오 스트림을 사용자가 원하는 화면 구성을 가지는 단일 압축 비디오 스트림으로 혼합한다.
비디오 스트림, 혼합, NAL, SPS, 슬라이스 헤더
Description
본 발명의 일 양상은 영상 처리기술에 관한 것으로, 보다 상세하게는 비디오 신호 혼합 기술에 관한 것이다.
본 연구는 지식경제부 및 정보통신연구진흥원의 광가입자망(FTTH)서비스 개발 실험사업의 일환으로 수행한 연구로부터 도출된 것이다.
디지털 영상 데이터는 영상회의, 고화질 텔레비젼, 주문형 비디오(VOD) 수신기, MPEG(Moving Picture Experts Group) 영상을 지원하는 퍼스널 컴퓨터, 게임기, 지상파 디지털 방송 수신기 디지털 위성 방송 수신기 및 케이블 텔레비젼(CATV) 등의 다양한 분야에서 사용된다. 그런데, 디지털 영상 데이터는 영상 자체의 특성과 아날로그 신호를 디지털화하는 과정에서 데이터량이 크게 증가하기 때문에 그대로 사용되기보다는 효율적인 영상 압축방법에 의해 압축된다.
영상 압축기술로는 MPEG, H.26x 등의 압축 표준이 있다. H.264/AVC (Advanced Video Coding)는 ITU-T VCEG(Video Coding Experts Group)와 ISO/IEC MPEG의 JVT(Joint Video Team)에 의해 표준으로 제정된 영상 압축기술이다. H.264/AVC 표준은 종래의 다른 비디오 압축표준과 같이 블록기반 부호화 방식을 유지하면서 우수한 비트율-왜곡(Rate-Distortion) 성능을 보여준다.
일 양상에 따라, 압축 비디오 스트림들을 압축 도메인에서 사용자가 원하는 화면 구성을 가지는 단일 압축 비디오 스트림으로 혼합하는 비디오 스트림 혼합장치 및 그 방법을 제안한다.
일 양상에 따른 비디오 스트림 혼합장치는, 압축된 복수의 비디오 스트림을 입력받는 입력 버퍼부, 입력된 비디오 스트림의 비트열을 분석하는 스트림 분석부, 분석 결과에 기초하여 최종 혼합 화면을 구성할 복수의 압축 비디오 스트림 비트열의 슬라이스 헤더 영역을 화면 구성에 따라 선택적으로 변경하는 스트림 혼합부 및 슬라이스 헤더 영역 변경에 따라 혼합된 압축 비디오 스트림을 출력하는 출력 버퍼부를 포함한다.
한편 다른 양상에 따른 비디오 스트림 혼합방법은, 압축된 복수의 비디오 스트림을 입력받는 단계, 입력된 비디오 스트림의 비트열을 분석하는 단계, 분석 결과에 기초하여 최종 혼합 화면을 구성할 복수의 압축 비디오 스트림 비트열의 슬라이스 헤더 영역을 화면 구성에 따라 선택적으로 변경하는 단계 및 슬라이스 헤더 영역 변경에 따라 혼합된 압축 비디오 스트림을 출력하는 단계를 포함한다.
본 발명의 일 실시예에 따르면, 압축된 비디오 스트림들을 픽셀 영역까지 복원하지 않고 압축 도메인에서 사용자가 원하는 화면 구성을 가지는 단일 압축 비디 오 스트림으로 혼합할 수 있다. 따라서 다수의 비디오 스트림을 혼합할 때 실시간성을 보장할 수 있고, 화질 열화 현상을 방지할 수 있다.
이하에서는 첨부한 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1a 및 도 1b는 본 발명이 적용되는 서비스 시스템을 도시한 예시도이다.
도 1a는 본 발명의 일 실시예에 따른 인터넷 기반 참여형 방송 서비스 시스템을 도시한 예시도이다. 도 1a를 참조하면, 일 실시예에 따른 비디오 스트림 혼합장치는 인터넷 기반 참여형 방송 서비스 시스템에 적용 가능하다. 이때 방송 서비스는 참여형 IPTV 방송 서비스일 수 있다.
일 실시예에 따른 인터넷 기반 참여형 방송 서비스 시스템은 방송 서비스를 제공하는 방송 서비스 제공장치(100)와 방송 서비스를 시청하는 시청자 단말(120) 및 방송 서비스를 시청하면서 동시에 방송에 참여하는 참여자 단말(110)로 구성된다.
이때 일 실시예에 따르면, 방송 서비스 제공장치(100)는 인터넷 망을 통해 현재 방송중인 서비스(예를 들면 프로그램)에 대해서 시청자가 참여를 원할 경우 참여자 단말(110)로부터 압축된 비디오 스트림을 수신한다. 그리고, 방송중인 비디오 스트림의 특정 영역에 참여자 단말(110)로부터 수신된 비디오 스트림을 혼합하여 실시간으로 참여자 단말(110)에 재전송한다.
방송 서비스 제공 시스템의 미디어 서버가 방송에 참여자 단말로부터 전송된 압축 비디오 스트림과 방송 프로그램 제공장치가 방송중인 압축된 비디오 스트림을 각각 방송 프로그램을 구성할 화면에 적합하게 혼합하고, 다시 전송용 비디오 스트림으로 압축하여 시청자 단말 및 참여자 단말에게 전송할 수 있다.
그런데, 미디어 서버는 비디오 스트림 혼합 과정에 있어서 압축된 비디오 스트림들을 복호기에서 픽셀 단위로 디코딩하고, 픽셀 데이터들을 혼합한 후 다시 손실부호화 특성을 가지는 부호화기부를 통해 압축한다. 이에 따라 화면의 화질이 열화될 가능성이 있다. 또한, 미디어 서버를 통해 다수의 비디오 스트림들을 픽셀 단위로 디코딩하는 과정과 혼합된 비디오 데이터를 압축하는 과정이 실행됨에 따라, 높은 고화질의 다수 비디오 스트림들을 동시에 처리하는데 걸리는 시간이 지연될 수 있다. 따라서 실시간성을 요구하는 방송용 비디오 스트림을 제작하기 어렵다.
그러나, 본 발명의 일 실시예에 따르면, 미디어 서버가 아닌 방송 서비스 제공장치(100)가 압축된 다수의 비디오 스트림들을 혼합한다. 그리고, 방송 서비스 제공장치(100)가 압축된 다수의 비디오 스트림들을 픽셀 도메인 혹은 DCT(Discreate Cosine Transform) 도메인까지 디코딩을 수행하지 않고 압축 도메인 에서 비디오 스트림들을 혼합한다. 따라서 화질의 열화현상 없이 실시간으로 비디오 스트림을 혼합할 수 있다.
도 1b는 본 발명의 다른 실시예에 따른 다자간 영상회의 서비스 시스템을 도시한 예시도이다. 도 1b를 참조하면, 일 실시예에 따른 비디오 스트림 혼합장치는 다자간 영상회의 서비스 시스템에 적용 가능하다. 다자간 영상회의 서비스 시스템은 다자간 회의 방송을 제공하는 회의 서비스 제공장치(130) 및 회의에 참여하는 참여자 단말(140)로 구성된다.
이때 일 실시예에 따르면, 다자간 영상회의 서비스 제공장치(130)는 현재 영상회의 서비스에 참여하는 참여자 단말(140)로부터 압축된 비디오 스트림을 수신하고, 수신된 비디오 스트림을 실시간으로 특정 영역에 혼합하여 참여자 단말(140)에 재전송할 수 있다.
다자간 영상회의 시스템의 MCU(Multipoint Control Unit)가 도 1a에 전술한 미디어 서버와 비슷한 기능을 수행할 수 있다. 그러나 이 경우 역시 다수의 비디오 스트림을 동시에 처리하기에는 시간 지연 및 화질열화 문제점을 가진다.
그러나, 본 발명의 일 실시예에 따르면, 압축된 다수의 비디오 스트림들을 픽셀 도메인 혹은 DCT 도메인까지 디코딩을 수행하지 않고 압축 도메인에서 혼합함으로써 화질의 열화현상 없이 실시간으로 비디오 스트림을 혼합할 수 있다.
한편, 도 1a 및 도 1b에 방송 서비스 제공 시스템 및 다자간 영상회의 시스템을 도시하였으나, 일 실시예에 따른 비디오 스트림 혼합장치의 적용 예는 전술한 실시예에 한정되지 않는다. 예를 들면, 압축된 다수의 비디오 데이터를 사용하는 동영상 합성 및 보관, 다채널 DVR 시스템 등에 적용할 수 있다.
한편, 본 발명의 일 실시예에 따른 비디오 스트림 혼합장치는 H.264/AVC 압축 기술을 이용할 수 있다. H.264/AVC는 ITU-T에서 제안한 H.32x 비디오 표준의 한 종류로서, 매우 높은 데이터 압축률을 가지는 디지털 비디오 코덱 표준이다.
도 2는 본 발명의 일 실시예에 따른 비디오 스트림 혼합장치(1)의 구성도이다. 도 2를 참조하면, 일 실시예에 따른 비디오 스트림 혼합장치(1)는 입력 버퍼부(10), 스트림 분석부(20), 스트림 혼합부(30) 및 출력 버퍼부(40)를 포함한다.
입력 버퍼부(10)는 압축된 복수의 비디오 스트림을 입력받는다. 그리고, 입력되는 다수의 비디오 스트림들의 비트열(bit string)을 저장한다. 이때 입력 버퍼부(10)는 인터넷 기반 참여형 방송 서비스를 통한 시청자 단말 또는 다자간 영상회의에서의 회의 참여자 단말로부터 압축된 복수의 비디오 스트림을 입력받을 수 있다. 그리고, 아직 혼합되지 않은 비트열들 중에서 버퍼 충만도(buffer fullness)가 가장 큰 버퍼의 비트열을 선택적으로 스트림 분석부(20)에 제공할 수 있다.
스트림 분석부(20)는 입력 버퍼부(10)를 통해 입력된 비디오 스트림의 비트열을 분석한다. 스트림 분석부(20)는, 입력된 비디오 스트림 중 네트워크 추상계층 단위(Network Abstraction Layer unit, 이하 NAL 단위)로 입력되는 비트열을 대상으로 NAL 단위의 종류를 나타내는 식별정보를 통해 비디오 스트림의 비트열을 인식할 수 있다. NAL 단위는 NAL 헤더와 슬라이스 헤더영역(slice header) 및 슬라이스 데이터영역(slice data)으로 구성된다. 이때 NAL 헤더에는 NAL 단위의 종류 를 나타내는 식별정보인 nal-unit-type 필드 정보가 포함된다.
일 실시예에 따른 스트림 분석부(20)는 NAL 단위로 입력되는 비트열에서 4바이트 또는 3바이트로 구성된 개시부호코드(start prefix code)로부터 NAL 헤더를 검색하고, 검색된 NAL 헤더에 포함되는 식별정보(nal_unit_type) 필드 정보를 통해 식별된 비트열 구분 정보를 후술할 스트림 혼합부(30)에 제공한다.
나아가, 스트림 분석부(20)는 복수의 비디오 스트림의 비트열에 대한 슬라이스 헤더영역(slice header) 및 슬라이스 데이터영역(slice data)을 스트림 혼합부(30)에 제공한다.
그리고, 스트림 분석부(20)는 분석된 비디오 스트림이 화면 혼합의 주체가 되는 단말로부터 수신된 기본 비트열이면, 기본 비트열에 해당되는 스트림의 개시부호 정보(start prefix code), NAL 헤더영역(NAL header), 시퀀스 처리정보에 해당되는 시퀀스 파라미터 셋(Sequence Parameter Set, SPS) 및 픽쳐 처리정보에 해당되는 픽쳐 파라미터 셋(Picure Parameter Set, PPS)을 스트림 혼합부(30)에 제공할 수 있다. 나머지 비디오 스트림들의 개시부호 정보, NAL 헤더영역, SPS 및 PPS는 스트림 혼합부(30)에 제공하지 않는다.
이때 기본 비트열은 도 1a에 도시된 인터넷 기반 참여형 방송 서비스를 통한 방송 서비스 제공장치로부터 제공된 비디오 스트림 또는 도 1b에 도시된 다자간 영상회의에서의 회의 참여자 중 발언권을 가진 참여자의 단말로부터 입력되는 압축 비디오 스트림일 수 있다.
한편, 스트림 혼합부(30)는 스트림 분석부(20)의 분석 결과에 기초하여 최종 혼합 화면을 구성할 복수의 압축 비디오 스트림 비트열의 슬라이스 헤더 영역을 화면 구성에 따라 선택적으로 변경한다.
출력 버퍼부(40)는 스트림 혼합부(30)를 통해 슬라이스 헤더 영역 변경에 따라 혼합된 압축 비디오 스트림을 출력한다. 이때 출력 버퍼부(40)는 스트림 혼합부(30)에서 혼합 처리된 한 개의 슬라이스 비트열이 한 프레임을 구성할 수 있도록 비트열을 선택적으로 제공받아 최종 혼합 비트열을 출력한다.
도 3은 본 발명의 일 실시예에 따른 도 2의 스트림 혼합부(30)의 세부 구성도이다. 도 3을 참조하면, 스트림 혼합부(30)는 비트열 판별부(300), 시퀀스 파라미터 셋 변환부(310) 및 슬라이스 헤더 변환부(320)를 포함하며, 나아가 슬라이스 데이터 정렬부(330)를 더 포함할 수 있다.
비트열 판별부(300)는 도 2의 스트림 분석부(20)를 통해 분석된 비트열의 식별정보를 이용하여 시퀀스 처리정보에 해당되는 시퀀스 파라미터 셋(SPS)을 판별한다.
시퀀스 파라미터 셋 변환부(310)는 비트열 판별부(300)를 통해 판별된 시퀀스 파라미터 셋(SPS)에 대해 비디오 스트림을 혼합할 화면에 따라 해상도 정보를 변환한다. 예를 들면, 시퀀스 파라미터 셋 변환부(310)는 최종 혼합화면을 구성할 화면의 해상도 크기에 따라서 가로 크기를 나타내는 pic_width_in_mbs_minus1 필드 값 및 최종화면의 세로 크기를 나타내는 pic_height_in_map_units_minus1 필드 값을 변경하고 출력한다.
슬라이스 헤더 변환부(320)는 혼합할 화면을 구성하는 각 슬라이스의 슬라이 스 헤더영역(slice header)을 변경한다. 이때 이때 슬라이스 헤더 변환부(320)는 각 슬라이스의 슬라이스 헤더영역에 포함된 매크로블록(MacroBlock) 중 시작 매크로 블록에 해당되는 어드레스 정보를 변경할 수 있다. 즉, 슬라이스 헤더 변환부(320)는 한 개의 슬라이스를 구성하는 슬라이스 헤더의 시작 매크로블록 어드레스를 지시하는 first_mb_in_slice 필드 정보만을 변환하고, 슬라이스를 구성하는 나머지 매크로블록 어드레스는 설정하지 않는다.
H.264/AVC 표준 신택스에는 한 화면을 구성하는 각 슬라이스마다 첫 매크로블록 어드레스만을 지시하는 필드를 가지고 있어, 다수의 비디오 스트림을 혼합할 때 화면 구성을 유연하게 정의할 수 있다. 또한 본 발명의 일 실시예에 따르면, 매크로블록 어드레스 정보를 추출하기 위한 역 VLC와 매크로블록 어드레스 증가에 따른 차이 값을 VLC로 부호화하는 과정을 수행할 필요가 없다.
한편, 슬라이스 데이터 정렬부(330)는 슬라이스의 슬라이스 헤더영역 변경에 따라 슬라이스 데이터 영역의 최종 바이트를 정렬한다. 슬라이스 데이터 정렬부(330)의 정렬과정에 대한 상세한 설명은 도 5에서 후술한다.
도 4는 본 발명의 일 실시예에 따른 스트림 혼합 과정에서의 매크로블록 어드레스 재할당을 설명하기 위한 참조도이다. 이때 도 4는 일 실시예에 따른 비디오 스트림 혼합장치가 한 화면에 대해 3개의 비디오 스트림을 혼합한다고 가정한 경우에 해당된다. 도 4에 도시된 굵은 점선(420)은 각 비디오 스트림들의 경계를 임의로 도시한 것이고, 화살표 실선(430)은 혼합된 슬라이스 헤더의 first_mb_in_slice 필드의 값을 변경하기 위한 매크로블록 어드레스의 증가 방향을 도시한 것이다.
이때, 슬라이스 헤더 변환부(320)는 최종 혼합화면을 구성하는 각 입력 비트열들의 슬라이스 헤더에서 왼쪽의 첫 슬라이스 헤더의 first_mb_in_slice 필드 값은 변환하지 않고(410), 나머지 슬라이스 헤더의 first_mb_in_slice 필드 값은 화면 구성에 따라 변환한다(400).
도 5는 본 발명의 일 실시예에 따른 슬라이스 데이터 바이트 정렬 과정에서의 슬라이스 비트열을 도시한 참조도이다.
도 5를 참조하면, 일 실시예에 따른 비디오 스트림 혼합장치는 슬라이스의 슬라이스 헤더영역 변경에 따라 슬라이스 데이터 영역의 최종 바이트를 정렬한다.
H.264/AVC 신택스 표준은 한 화면에서 한 개의 슬라이스를 구성하는 비트열이 슬라이스 헤더와 슬라이스 데이터를 포함하여 바이트 단위로 정렬되어 구성되어 있다. 따라서 본 발명의 일 실시예에 따르면, 비디오 스트림 혼합장치는 매크로블록 어드레스가 값이 변화되는 것에 따라 한 개의 슬라이스를 구성하는 슬라이스 데이터의 최종 바이트를 다시 정렬한다.
도 5의 참조부호 501은 입력되는 한 개의 슬라이스 헤더와 슬라이스 데이터를 포함한 슬라이스 비트열의 크기를 도시한 것이고, 참조부호 502는 입력 슬라이스 비트열의 크기를 도시한 것이며, 참조부호 503은 입력 비트열의 마지막 바이트 크기를 도시한 것이다.
한편 도 5의 참조부호 504는 매크로블록 어드레스가 변경되어 참조부호 502의 크기가 늘어난 길이를 도시한 것이고, 참조부호 504 크기만큼 늘어난 비트에 의 해 슬라이스 데이터의 마지막 바이트가 참조부호 505 크기만큼 비트가 밀린다. 따라서 비디오 스트림 혼합장치는 참조부호 506 크기만큼 늘어난 비트 수를 계산하여 바이트 정렬에 필요한 임의의 '0'값을 삽입하여 최종 마지막 비트들을 바이트 정렬 한다. 참조부호 507은 최종 변환된 슬라이스 헤더와 슬라이스 데이터를 포함한 한 슬라이스를 구성하는 비트열의 크기를 도시한 것이다.
도 6은 본 발명의 일 실시예에 따른 비디오 스트림 혼합방법을 도시한 흐름도이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 비디오 스트림 혼합장치는 압축된 복수의 비디오 스트림을 입력받는다(S600). 이어서, 비디오 스트림 혼합장치는 입력된 비디오 스트림의 비트열을 분석한다(S610).
그리고, 비디오 스트림 혼합장치는 분석에 따라 식별된 비트열의 슬라이스 헤더 영역을 변경(S620)하여 최종 혼합 화면을 구성할 복수의 비디오 스트림을 혼합한다(S630). 여기서, 비디오 스트림 혼합장치는 스트림 분석을 통해 인식된 비트열의 식별정보를 이용하여 시퀀스 처리정보에 해당되는 시퀀스 파라미터 셋을 판별한다. 그리고, 판별된 시퀀스 파라미터 셋에 대해 비디오 스트림을 혼합할 화면에 따라 해상도 정보를 변환한다. 이어서, 혼합할 화면을 구성하는 각 슬라이스의 슬라이스 헤더영역을 변경한다. 변경되는 슬라이스 헤더영역은 매크로블록 중 시작 매크로블록에 해당되는 어드레스 정보일 수 있다.
이어서, 비디오 스트림 혼합장치는 혼합된 비디오 스트림을 출력한다(S640).
이제까지 본 발명에 대하여 그 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1a 및 도 1b는 본 발명이 적용되는 서비스 시스템을 도시한 예시도,
도 2는 본 발명의 일 실시예에 따른 비디오 스트림 혼합장치의 구성도,
도 3은 본 발명의 일 실시예에 따른 도 2의 스트림 혼합부의 세부 구성도,
도 4는 본 발명의 일 실시예에 따른 스트림 혼합 과정에서의 매크로블록 어드레스 재할당을 설명하기 위한 참조도,
도 5는 본 발명의 일 실시예에 따른 슬라이스 데이터 바이트 정렬 과정에서의 슬라이스 비트열을 도시한 참조도,
도 6은 본 발명의 일 실시예에 따른 비디오 스트림 혼합방법을 도시한 흐름도이다.
<도면의 주요부분에 대한 부호의 설명>
1 : 비디오 스트림 혼합장치 10 : 입력 버퍼부
20 : 스트림 분석부 30 : 스트림 혼합부
40 : 출력 버퍼부 300 : 비트열 판별부
310 : 시퀀스 파라미터 셋 변환부 320 : 슬라이스 헤더 변환부
330 : 슬라이스 데이터 정렬부
Claims (12)
- 압축된 복수의 비디오 스트림을 입력받는 입력 버퍼부;상기 입력된 비디오 스트림의 비트열을 분석하는 스트림 분석부;상기 분석 결과에 기초하여 최종 혼합 화면을 구성할 복수의 압축 비디오 스트림 비트열의 슬라이스 헤더 영역을 화면 구성에 따라 선택적으로 변경하는 스트림 혼합부; 및상기 슬라이스 헤더 영역 변경에 따라 혼합된 압축 비디오 스트림을 출력하는 출력 버퍼부를 포함하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 1 항에 있어서, 상기 스트림 혼합부는,상기 스트림 분석부를 통해 분석된 비트열의 식별정보를 이용하여 시퀀스 처리정보에 해당되는 시퀀스 파라미터 셋을 판별하는 비트열 판별부;상기 판별된 시퀀스 파라미터 셋에 대해 상기 비디오 스트림을 혼합할 화면에 따라 해상도 정보를 변환하는 시퀀스 파라미터 셋 변환부; 및상기 혼합할 화면을 구성하는 각 슬라이스의 슬라이스 헤더영역을 상기 화면 구성에 따라 변경하는 슬라이스 헤더 변환부를 포함하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 2 항에 있어서, 상기 슬라이스 헤더 변환부는,상기 각 슬라이스의 슬라이스 헤더영역에 포함된 매크로블록 중 시작 매크로블록에 해당되는 어드레스 정보를 변경하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 2 항에 있어서,상기 슬라이스의 슬라이스 헤더영역 변경에 따라 상기 슬라이스 데이터 영역의 최종 바이트를 정렬하는 슬라이스 데이터 정렬부를 더 포함하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 1 항에 있어서, 상기 스트림 분석부는,상기 입력된 비디오 스트림 중 네트워크 추상계층 단위로 입력되는 비트열을 대상으로 상기 네트워크 추상계층 단위의 종류를 나타내는 식별정보를 통해 상기 비디오 스트림의 비트열을 인식하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 1 항에 있어서, 상기 스트림 분석부는,상기 복수의 비디오 스트림의 비트열에 대한 슬라이스 헤더영역 및 슬라이스 데이터영역을 상기 스트림 혼합부에 제공하고,상기 분석된 비디오 스트림이 화면 혼합의 주체가 되는 단말로부터 수신된 기본 비트열이면, 상기 기본 비트열에 해당되는 스트림의 개시부호 정보, 네트워크 추상계층 헤더 영역, 시퀀스 처리정보에 해당되는 시퀀스 파라미터 셋 및 픽쳐 처 리정보에 해당되는 픽쳐 파라미터 셋을 상기 스트림 혼합부에 제공하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 6 항에 있어서,상기 기본 비트열은 인터넷 기반 참여형 방송 서비스를 제공하는 방송 서비스 제공장치로부터 수신된 비디오 스트림 또는 다자간 영상회의 서비스에서의 회의 참여자 중 발언권을 가진 참여자의 단말로부터 수신된 압축 비디오 스트림인 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 1 항에 있어서,상기 입력 버퍼부는 인터넷 기반 참여형 방송 서비스를 이용하는 시청자 단말로부터 상기 압축된 복수의 비디오 스트림을 입력받고,상기 출력 버퍼부는 상기 혼합된 압축 비디오 스트림을 상기 시청자 단말에 출력하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 제 1 항에 있어서,상기 입력 버퍼부는 다자간 영상회의 서비스를 이용하는 회의 참여자 단말로부터 상기 압축된 복수의 비디오 스트림을 입력받고,상기 출력 버퍼부는 상기 혼합된 압축 비디오 스트림을 상기 회의 참여자 단말로 출력하는 것을 특징으로 하는 비디오 스트림 혼합장치.
- 압축된 복수의 비디오 스트림을 입력받는 단계;상기 입력된 비디오 스트림의 비트열을 분석하는 단계;상기 분석 결과에 기초하여 최종 혼합 화면을 구성할 복수의 압축 비디오 스트림 비트열의 슬라이스 헤더 영역을 화면 구성에 따라 선택적으로 변경하는 단계; 및상기 슬라이스 헤더 영역 변경에 따라 혼합된 압축 비디오 스트림을 출력하는 단계를 포함하는 것을 특징으로 하는 비디오 스트림 혼합방법.
- 제 10 항에 있어서, 상기 분석 결과에 기초하여 최종 혼합 화면을 구성할 복수의 압축 비디오 스트림 비트열의 슬라이스 헤더 영역을 화면 구성에 따라 선택적으로 변경하는 단계는,상기 분석된 비트열의 식별정보를 이용하여 시퀀스 처리정보에 해당되는 시퀀스 파라미터 셋을 판별하는 단계;상기 판별된 시퀀스 파라미터 셋에 대해 상기 비디오 스트림을 혼합할 화면에 따라 해상도 정보를 변환하는 단계; 및상기 혼합할 화면을 구성하는 각 슬라이스의 슬라이스 헤더영역을 변경하는 단계를 포함하는 것을 특징으로 하는 비디오 스트림 혼합방법.
- 제 11 항에 있어서, 상기 각 슬라이스의 슬라이스 헤더영역을 변경하는 단계는,상기 각 슬라이스의 슬라이스 헤더영역에 포함된 매크로블록 중 시작 매크로 블록에 해당되는 어드레스 정보를 변경하는 것을 특징으로 하는 비디오 스트림 혼합방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080119794 | 2008-11-28 | ||
KR1020080119794 | 2008-11-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100061265A KR20100061265A (ko) | 2010-06-07 |
KR101096802B1 true KR101096802B1 (ko) | 2011-12-22 |
Family
ID=42362062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090017032A KR101096802B1 (ko) | 2008-11-28 | 2009-02-27 | 비디오 스트림 혼합장치 및 그 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101096802B1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101053161B1 (ko) * | 2009-07-22 | 2011-08-02 | 주식회사 엠씨넥스 | H.264/avc 압축 영역에서의 동영상 합성 방법 및 장치 |
KR101446073B1 (ko) * | 2013-12-26 | 2014-10-06 | 연세대학교 산학협력단 | 영상 합성 방법, 장치 및 시스템 |
KR101446074B1 (ko) * | 2013-12-26 | 2014-10-06 | 연세대학교 산학협력단 | 영상 합성 방법, 장치 및 시스템 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007336036A (ja) | 2006-06-13 | 2007-12-27 | Kddi Corp | 動画像合成装置及びプログラム |
-
2009
- 2009-02-27 KR KR1020090017032A patent/KR101096802B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007336036A (ja) | 2006-06-13 | 2007-12-27 | Kddi Corp | 動画像合成装置及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
KR20100061265A (ko) | 2010-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9769485B2 (en) | Multi-layer encoding and decoding | |
KR102111436B1 (ko) | 다중 영상의 단일 비트 스트림 생성방법 및 생성장치 | |
US9036700B2 (en) | Simulcast of stereoviews for 3D TV | |
US8526489B2 (en) | Personal video recorder | |
JP6809471B2 (ja) | 送信装置、送信方法、受信装置および受信方法 | |
KR102361314B1 (ko) | 360도 가상현실 방송 서비스 제공 방법 및 장치 | |
KR101053161B1 (ko) | H.264/avc 압축 영역에서의 동영상 합성 방법 및 장치 | |
KR20180044902A (ko) | 송신 장치, 송신 방법, 수신 장치 및 수신 방법 | |
CN1197378C (zh) | 发送适于运动图像专家组及其他数据格式的逐行视频序列 | |
US20240163502A1 (en) | Transmission apparatus, transmission method, encoding apparatus, encoding method, reception apparatus, and reception method | |
KR101096802B1 (ko) | 비디오 스트림 혼합장치 및 그 방법 | |
US20160381365A1 (en) | Apparatuses and methods for performing information extraction and insertion on bitstreams | |
KR101012760B1 (ko) | 다시점 비디오의 송수신 시스템 및 방법 | |
Jaksic et al. | Implementation of Video Compression Standards in Digital Television | |
WO2015102462A1 (ko) | 다중 영상의 단일 비트 스트림 생성방법 및 생성장치 | |
Percheron et al. | HEVC, the key to delivering an enhanced television viewing experience “Beyond HD” | |
De Lameillieure et al. | A comparative study of simulcast and hierarchical coding | |
KR100749180B1 (ko) | 광대역 통신망을 이용한 화상 통신 서비스 방법 및 그시스템 | |
Knee | MPEG video | |
Vieron et al. | 4K TV capture, an early experience sharing | |
CN115606187A (zh) | 基于混合nal单元类型的图像编码/解码方法和设备及存储比特流的记录介质 | |
Spalević et al. | Regulatory Framework Distribution of HDTV Channels in the Western Balkan Countries | |
Yoo et al. | Syntax-based mixing method of H. 263 coded video bitstreams | |
Murithi | IP multicast in digital television transmission infrastructure | |
Murugan | Multiplexing H. 264 video with AAC audio bit streams, demultiplexing and achieving lip synchronization during playback |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20141205 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20171213 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20200106 Year of fee payment: 9 |