상기 목적을 달성하기 위해서, 본 발명에 관한 방송 수신 장치는 다수의 트랜스포트 스트림을 수신하는 방송 수신 장치이며, 상기 다수의 트랜스포트 스트림으로부터 각각 시청에 관한 시청 관련 데이터를 결정하여, 상기 시청 관련 데이터 이외의 다른 데이터를 삭제함으로써 또는 상기 다른 데이터로부터 분리함으로써, 상기 시청 관련 데이터를 추출하는 전처리 수단과, 상기 전처리 수단에 의해 추출된 각 시청 관련 데이터를 다중화 하는 다중 수단과, 상기 다중 수단에 의해 다중화된 다중화 데이터를 상기 방송 수신 장치의 외부에 있는 외부 장치로 출력하는 출력 인터페이스 수단과, 상기 외부 장치에 의해서 처리된 상기 다중화 데이터를 상기 외부 장치로부터 취득하는 입력 인터페이스 수단과, 상기 입력 인터페이스 수단에 의해서 취득된 상기 다중화 데이터를 분리하는 다중 분리 수단을 구비하는 것을 특징으로 한다.
이것에 의해, 외부 장치로 출력하기 전에 필요한 데이터를 선택할 수가 있고, 방송 수신 장치와 외부 장치의 전송 레이트를 낮게 억제할 수 있게 된다. 그 결과, 저렴한 가격의 하드웨어를 이용하여 다수의 트랜스포트 스트림을 동시에 적절하게 처리할 수 있다.
또, 상기 전처리 수단은 상기 방송 수신 장치가 보유하는 보유 정보에 따라서, 시청 관련 데이터의 추출에 관한 조건을 나타내는 독자 정보를 작성하고, 상기 독자 정보에 나타내어지는 조건에 따라서 상기 시청 관련 데이터를 결정하는 것을 특징으로 한다.
이것에 의해 방송 수신 장치 내에서 추출 혹은 삭제하는 정보를 독자적으로 결정할 수 있게 된다.
또 상기 전처리 수단은 현재 사용자의 시청 상황을 상기 보유 정보로하여, 상기 시청 상황에 따라서 상기 독자 정보를 작성하는 것을 특징으로 한다.
이것에 의해, 사용자의 시청 상황에 따라서, 사용자에게의 영향을 최소한으로 억제하는 조건 설정을 할 수 있게 된다.
또, 상기 전처리 수단은 사용자의 기호를 상기 보유 정보로서, 상기 기호에 따라서 상기 독자 정보를 작성하는 것을 특징으로 한다.
이것에 의해, 언어 정보 등 사용자가 항상 시청하고 있는 조건의 우선도를 고려할 수 있다.
또, 상기 전처리 수단은 시청 관련 데이터의 추출에 관한 조건을 나타내는 전처리 정보를 수신하고, 상기 독자 정보 및 상기 전처리 정보를 근거로 추출 대상의 시청 관련 데이터를 나타내는 필터링 조건을 설정하는 수신부와, 상기 수신부에서 설정된 필터링 조건에 의해 나타내어지는 시청 관련 데이터를 상기 각 트랜스포 트 스트림 중에서 결정하여 추출하는 필터링부를 갖는 것을 특징으로 한다.
이것에 의해, 트랜스포트 스트림 중에서 지정된 데이터를 선별할 수 있다.
또, 상기 전처리 정보는 상기 시청 관련 데이터의 추출에 관한 조건으로서, 상기 트랜스포트 스트림에 포함되는 스트림 및 방송 서비스 중 적어도 하나를 나타내는 것을 특징으로 한다.
이것에 의해, 트랜스포트 스트림 중의 필요한 정보로부터, 패킷 혹은 프로그램을 구성하는 정보를 지정할 수 있다.
또, 상기 수신부는 CPU 상에서 동작하는 프로그램으로부터 지정된 상기 전처치 정보를 수신하는 것을 특징으로 한다.
이것에 의해, CPU 상에서 동작하는 프로그램이 요구하는 조건을 필터링 조건으로 설정할 수 있다.
또, 상기 필터링 조건은 추출 대상의 시청 관련 데이터로서, 상기 트랜스포트 스트림을 구성하는 스트림 및 방송 서비스 중 적어도 하나를 나타내는 것을 특징으로 한다.
이것에 의해, 지정된 스트림 또는 방송 서비스 단위로 필터링을 행할 수 있다.
또, 상기 전처리 수단은 또한, 트랜스포트 스트림 중의 구조를 나타내는 구조 정보의 일부 혹은 전부를 기억하는 기억부를 구비하고, 상기 수신부는 상기 기억부에 기억되어 있는 구조 정보의 일부 혹은 전부를 이용하여 상기 필터링 조건을 설정하는 것을 특징으로 한다.
이것에 의해, 스트림을 특정하는 정보로 지정된 경우에는, 이 기억부에 기억된 구조 정보를 참조함으로써, 다른 정보를 보충할 수도 있게 된다. 또, 서비스를 특정하는 정보로 지정된 경우에는, 그 서비스에 필요한 스트림 중의 정보를 참조하기 위해서 이용할 수 있다.
또, 상기 기억부는 상기 방송 수신 장치의 기동 시에, 또는 상기 수신부로부터 지시를 받았을 때에, 상기 트랜스포트 스트림으로부터 상기 구조 정보의 일부 혹은 전부를 취득하여 기억하는 것을 특징으로 한다.
이것에 의해, 본 기억부를 참조할 시에, 즉시 정보를 취득할 수 있다.
또, 상기 기억부가 기억하고 있는 상기 구조 정보의 일부 혹은 전부에 변경이 발생한 경우에는 상기 수신부는, 상기 변경에 따라서 필터링 조건을 갱신하는 것을 특징으로 한다.
이것에 의해, 스트림 중의 변경에 즉시 대응할 수 있다. 예컨대, CPU로부터 서비스를 특정하는 정보를 이용하여 지정되어 있던 경우, 그 서비스 중에 포함되는 스트림의 정보가 방송 중에 변화할 가능성이 있다. 일례로서는, 멀티 앵글 등의 정보가 부가됨으로써 AV의 데이터가 추가되기도 하는 경우가 있다. 이러한 경우에도, 서비스를 특정하는 정보로 지정된 경우는, 그 변경을 통지함으로써, 이러한 스트림 중의 변경에 대응할 수 있다.
또, 상기 전처리 정보가 시청 관련 데이터의 추출에 관한 조건으로서, 상기 트랜스포트 스트림에 포함되는 방송 서비스를 나타내고 있을 때에는, 상기 수신부는 상기 기억부에 기억되어 있는 구조 정보의 일부 혹은 전부를 이용하여 상기 방 송 서비스를 해당 방송 서비스에 관련되는 스트림으로 변환하는 것을 특징으로 한다.
이것에 의해, 방송 서비스 지정을 스트림 지정과 동일하게 처리할 수 있다.
또, 상기 수신부는 상기 전처리 정보의 수신 시에, 상기 기억부에 기억되어 있는 구조 정보의 일부 혹은 전부를 이용하여, 상기 외부 장치의 처리에 필요한 외부 처리 조건을 특정하고, 상기 외부 처리 조건을 시청 관련 데이터의 추출에 관한 조건으로서 상기 독자 정보에 추가하는 것을 특징으로 한다.
이것에 의해, 전처리 정보를 참조하여, 외부 장치에 필요한 조건을 추가할 수 있다.
또, 상기 전처리 정보가 시청 관련 데이터의 추출에 관한 조건으로서, 상기 트랜스포트 스트림에 포함되는 방송 서비스를 나타낼 때에는, 상기 수신부는 상기 기억부에 기억되어 있는 구조 정보의 일부 혹은 전부를 이용하여, 상기 전처리 정보에 의해서 나타내어지지 않는 방송 서비스를 구성하는 스트림의 전부 혹은 일부를 특정하고, 상기 스트림의 전부 혹은 일부를 삭제하는 것을 시청 관련 데이터의 추출에 관한 조건으로서 상기 독자 정보에 추가하는 것을 특징으로 한다.
이것에 의해, 불필요한 정보를 대폭으로 삭제할 수 있다.
또, 상기 전처리 수단은 또한, 상기 방송 수신 장치의 기동 시에 추출 대상이 되는 시청 관련 데이터를 나타내는 디폴트 필터링 조건을 기억하고 있는 디폴트 설정 기억부를 갖고, 상기 필터링부는 상기 방송 수신 장치의 기동 시에 상기 디폴트 필터링 조건에 의해 나타내어지는 시청 관련 데이터를 상기 각 트랜스포트 스트 림 중에서 결정하여 추출하는 것을 특징으로 한다.
이것에 의해, 항상 필요한 설정을 매 회 행할 필요가 없게 되는 것과, 방송 수신 장치의 기동과 동시에 필터링 조건 설정을 행할 수 있게 된다.
또, 상기 수신부는 상기 필터링 조건을 상기 디폴트 필터링 조건으로서 디폴트 설정 기억부에 격납하는 것을 특징으로 한다.
이것에 의해, 디폴트 설정 기억부에 기억하고 있는 정보를 변경할 수 있다. 또, 방송 수신 장치의 기동과 동시에, 필터링 조건의 설정을 할 수 있게 된다.
또, 상기 수신부는 상기 외부 장치의 처리에 필요한 조건을 상기 디폴트 필터링 조건으로서 디폴트 설정 기억부에 격납하는 것을 특징으로 한다.
이것에 의해, 항상 필요한 외부 장치의 설정을 기동 시에 처리할 수 있고, 실행 중에는 트랜스포트 스트림에 의존한 조건 설정만을 할 수 있게 된다.
또, 상기 전처리 수단은 또한, 상기 트랜스포트 스트림에 포함되는 스트림 중의 정보를 개서하는 변환부를 갖는 것을 특징으로 한다.
이것에 의해, 다수의 트랜스포트 스트림으로부터 선택한 조건에 동일한 식별자를 갖는 것이 있었던 경우에 이들의 식별자를 변경할 수 있는 동시에, 이들의 식별자의 변경에 따라서, 트랜스포트 스트림 중의 구조 정보의 변경을 행할 수 있게 된다. 일례로서는 PID의 개서나, 구조 정보의 개서로서는 PAT나 PMT를 변경할 수 있다.
또, 상기 변환부는 상기 트랜스포트 스트림에 포함되는 스트림의 식별자, 혹은 상기 스트림의 구조를 나타내는 구조 정보를 개서하는 것을 특징으로 한다.
이것에 의해, 다수의 트랜스포트 스트림으로부터 선택한 조건에 동일한 식별자를 갖는 것이 있었던 경우에 이들의 식별자를 변경할 수 있는 동시에, 이들의 식별자의 변경에 따라서, 트랜스포트 스트림 중의 구조 정보의 변경을 할 수도 있게 된다. 일례로서는 PID의 개서나, 구조 정보의 개서로서는, PAT나 PMT를 변경할 수 있게 된다.
또, 상기 수신부는 상기 변환부에 의해서 개서된 스트림의 식별 정보와, 상기 개서의 내용을 나타내는 변환 정보를 상기 필터링부에 설정하는 것을 특징으로 한다.
이것에 의해, 변환한 패킷을 스트림 중의 지정한 패킷과 변경할 수 있다.
또, 상기 필터링부는 상기 수신부로부터 지정된 스트림을 상기 식별 정보에 근거하여 특정하고, 상기 스트림의 식별자 또는 구조 정보를 상기 수신부로부터 지시된 내용으로 개서하는 것을 특징으로 한다.
이것에 의해, 변환한 패킷을 스트림 중의 지정한 패킷과 변경할 수 있게 된다.
또, 상기 전처리 수단은 또한, 상기 트랜스포트 스트림으로부터 프로그램 배열 정보를 작성하는 프로그램 배열 정보 작성부를 갖는 것을 특징으로 한다.
이것에 의해, 프로그램 배열 정보를 작성할 수 있다. 또한, 이 프로그램 배열 정보는 독자로 규정한 것이어도 되고, 사양으로 정해져 있는 것이러도 된다.
또, 상기 수신부는 상기 프로그램 배열 정보 작성부에 의해서 작성된 프로그램 배열 정보를 수취하여, 상기 필터링부에 상기 프로그램 배열 정보를 설정하는 것을 특징으로 한다.
이것에 의해, 프로그램 배열 정보를 스트림 중에 추가하는 설정을 할 수 있다.
또, 상기 필터링부는 상기 수신부로부터 수취한 프로그램 배열 정보에 의해서 나타내어지는 프로그램을 추출 대상의 시청 관련 데이터로서 상기 필터링 조건으로 추가하는 것을 특징으로 한다.
이것에 의해, 프로그램 배열 정보를 스트림 중에 추가할 수 있다.
또, 상기 필터링부는 상기 트랜스포트 스트림 중의 불연속점을 검출하고, 상기 불연속점에 패킷을 삽입하는 것을 특징으로 한다.
이것에 의해, 선별된 후의 트랜스포트 스트림에서, 불연속점을 검출할 수 있다.
또, 상기 수신부는 상기 외부 장치로부터 지정되는 상기 전처리 정보를 수신하는 것을 특징으로 한다.
이것에 의해, 외부 장치로부터의 조건을 설정할 수 있다.
또, 상기 수신부는 또한, 상기 외부 장치로부터 수신한 상기 전처리 정보에 의해 나타내어지는 조건에 대한 답신을 상기 외부 장치에 하는 것을 특징으로 한다.
이것에 의해, 외부 장치와 쌍방향으로 메시지 통신을 하고, 조건 설정을 할 수 있다.
또, 상기 보유 정보는 시청 관련 데이터의 추출에 관한 조건 및 상기 조건 을 설정한 설정원의 속성 중 적어도 하나를 나타내는 것을 특징으로 한다.
이것에 의해, 설정 조건의 비교 혹은 설정원 속성에 따라서, 독자 정보의 결정을 행할 수 있게 된다.
또, 상기 설정원의 속성은 CPU 상에서 동작하는 프로그램, 상기 외부 장치 및 방송 수신 장치 중의 어느 하나를 나타내는 것을 특징으로 한다.
이것에 의해, 이들 간에 우선도를 결정하고, 독자 정보의 설정에 사용할 수 있게 된다.
또, 상기 전처리 수단은 상기 독자 정보에 나타내어지는 조건을 만족하는 시청 관련 데이터를 검색하여, 일정 시간 내에 상기 조건을 만족하는 시청 관련 데이터가 존재하지 않는 경우에는, 그 조건을 삭제하기 위해서 상기 설정원으로 문의하거나, 혹은 문의하지 않고 삭제하는 것을 특징으로 한다.
이것에 의해, 설정 효과가 낮은 조건의 삭제를 할 수 있게 된다.
또, 상기 전처리 수단은 상기 설정원의 속성이 CPU 상에서 동작하는 프로그램 혹은 외부 장치를 나타내는 경우, 상기 설정원으로 메시지를 통지하는 것을 특징으로 한다.
이것에 의해, 설정원이 상정하는 조건과 상위가 발생하지 않도록 할 수 있게 된다.
또, 상기 수신부는 상기 외부 장치가 취급할 수 있는 최대 능력, 상기 방송 수신 장치와 외부 장치와의 인터페이스의 최대 전송 레이트 및 상기 방송 수신 장치의 최대 능력 중 적어도 하나를 상기 보유 정보로서 특정하고, 상기 보유 정보에 따라서 상기 독자 정보를 작성하는 것을 특징으로 한다.
이것에 의해, 각각의 처리 능력을 고려한 조건 설정을 할 수 있다.
또, 상기 수신부는 상기 독자 정보에 관해서 상기 외부 장치로 문의하고, 상기 외부 장치로부터 수신한 답신에 따라서 상기 독자 정보를 갱신하는 것을 특징으로 한다.
이것에 의해, 외부 장치의 처리에 필요한 정보를 삭제하는 것을 방지할 수 있다.
또, 상기 다중 수단은 상기 전처리 수단에서 추출된 각 시청 관련 데이터의 추출원이 되는 상기 각 트랜스포트 스트림의 식별을 행하기 위해서, 상기 각 시청 관련 데이터에 포함되는 패킷의 개서를 하는 개서부와, 상기 개서부에 의해서 개서된 다수의 시청 관련 데이터를 다중화하는 다중 실행부를 갖는 것을 특징으로 한다.
이것에 의해, 입력된 트랜스포트 스트림의 패킷 사이즈를 변경하지 않고, 다수의 트랜스포트 스트림을 식별할 수 있다.
또, 상기 개서부는 상기 각 시청 관련 데이터의 미사용 영역의 일부 혹은 전부를 개서하는 것을 특징으로 한다.
이것에 의해, 입력된 트랜스포트 스트림의 패킷 사이즈를 변경하지 않고, 다수의 트랜스포트 스트림을 식별할 수 있다. 일례로서, MPEG2 트랜스포트 스트림의 경우 PAT나 PMT 내에 존재하는 RESERVE 영역을 개서할 수 있다.
또, 상기 개서부는 상기 패킷의 일부 혹은 전부를 개서하는 것을 특징으로 한다.
이것에 의해, 입력된 트랜스포트 스트림의 패킷 사이즈를 변경하지 않고, 다수의 트랜스포트 스트림을 식별할 수 있다. 일례로서, MPEG2 트랜스포트 스트림의 경우, 모든 TS패킷에 대하여 트랜스포트 스트림을 식별하는 정보를 부여할 수 있다.
또, 상기 다중 실행부는 상기 개서부에 의해서 개서된 다수의 시청 관련 데이터를 시분할 다중화하는 것을 특징으로 한다.
이것에 의해, 다수의 시청 관련 데이터를 하나의 스트림으로서 취급할 수 있다. 또, 다중화된 스트림을 얻을 수 있다.
또, 상기 다중 수단은 상기 전처리 수단에서 추출된 각 시청 관련 데이터의 추출원이 되는 상기 각 트랜스포트 스트림의 식별을 하기 위해서, 상기 각 시청 관련 데이터에 헤더를 부여하는 헤더 부여부와, 상기 헤더 부여부에 의해서 헤더가 부여된 다수의 시청 관련 데이터를 다중화하는 다중 실행부를 갖는 것을 특징으로 한다.
이것에 의해, 다수의 트랜스포트 스트림을 식별하는 설정을 하여 다중할 수 있게 된다.
또, 상기 다중 수단은 상기 외부 장치가 취급할 수 있는 최대 능력, 상기 방송 수신 장치와 외부 장치와의 인터페이스의 최대 전송 레이트 및 상기 방송 수신 장치의 최대 능력을 특정하고, 상기 특정 결과에 근거하여 상기 다중화 데이터를 취급할 수 있는지 없는지를 판별하여, 상기 판별 결과를 상기 전처리부에 통지하는 것을 특징으로 한다.
이것에 의해, 각각의 처리 능력을 고려한 조건 설정을 할 수 있다.
또, 상기 다중 수단은 상기 다중화 데이터에 포함되는 시간에 관한 정보를 다중화의 태양에 따라서 보정하는 것을 특징으로 한다.
이것에 의해, 예컨대 PCR이라는 표준 시간의 오차를 작게 할 수 있다.
또, 상기 다중 수단은 우선도의 지정을 받아 상기 전처리 수단에 의해 추출된 다수의 시청 관련 데이터를 상기 우선도에 따라서 다중화하는 것을 특징으로 한다.
이것에 의해, 다중화 데이터의 전송 레이트의 합계가 방송 수신 장치와 어댑터 간의 전송 레이트보다도 큰 경우에 발생하는 패킷의 결여나 지연의 영향을 최소한으로 억제하도록 설정할 수 있게 된다.
또, 상기 다중 분리 수단은 상기 다중화 데이터로부터 분리된 시청 관련 데이터를 변경하는 것을 특징으로 한다.
이것에 의해, 다중 분리 수단 이후의 디바이스는 종래의 디바이스를 사용할 수 있게 된다.
또, 상기 다중 분리 수단은 상기 다중 수단에 의해서 부여된 상기 헤더의 내용에 근거하여 상기 각 트랜스포트 스트림의 식별을 하고, 상기 식별 결과에 따라서 상기 다중화 데이터의 분리를 하는 것을 특징으로 한다.
이것에 의해, 다중화 데이터를 적절하게 분리할 수 있게 된다.
또, 본 발명에 관한 한정 수신 해제 장치는 시청할 수 있는 사용자가 한정되 도록 스크램블을 걸어 방송되는 트랜스포트 스트림의 스크램블을 해제하는 한정 수신 해제 장치이며, 다수의 상기 트랜스포트 스트림의 각각으로부터 시청에 관한 시청 관련 데이터가 추출되어 다중화된 다중화 데이터를 취득하는 입력 인터페이스 수단과, 상기 입력 인터페이스 수단에 의해서 취득된 상기 다중화 데이터에 포함되는 상기 각 시청 관련 데이터를 식별하는 식별 수단과, 상기 식별 수단에 의해서 식별된 각 시청 관련 데이터에 대하여 스크램블의 해제를 하는 한정 수신 해제 수단과, 상기 한정 수신 해제 수단에 의해서 스크램블이 해제된 각 시청 관련 데이터를 포함하는 다중화 데이터를 출력하는 출력 인터페이스 수단을 구비하는 것을 특징으로 한다.
이것에 의해, 선별되어 다중화된 다중화 데이터를 적절하게 처리할 수 있게 된다. 또한, 한정 수신 장치의 결과를 방송 수신 장치에 반신할 수 있게 된다.
또, 상기 방송 수신 장치는 또한, 상기 외부 장치로의 출력 방식에 관해서, 상기 외부 장치와 교섭하는 교섭 수단을 구비하고, 상기 출력 인터페이스 수단은 상기 교섭 수단의 교섭 결과에 따른 방식으로 상기 다중화 데이터를 출력하는 것을 특징으로 한다.
이것에 의해, 전처리 수단이나 다중 수단으로 행한 처리를 고려하여 한정 수신 해제를 할 수 있게 된다. 예컨대, 다수의 스트림을 선별하기 위한 방법으로서, 패킷 내의 데이터를 개서하여 행할지, 헤더를 부여하여 행할지에 대한 것 등의 교섭을 할 수 있게 된다. 또, 전처리 수단으로 트랜스포트 스트림에 어떠한 선별을 하였는지 등에 대한 교섭을 할 수 있다.
또, 상기 한정 수신 해제 장치는 또한, 상기 다중화 데이터의 취득 방식에 관해서, 상기 입력 인터페이스 수단의 취득처와 교섭하는 교섭 수단을 구비하고, 상기 입력 인터페이스 수단은 상기 교섭 수단의 교섭 결과에 따른 방식으로 상기 다중화 데이터를 취득하는 것을 특징으로 한다.
이것에 의해, 전처리 수단이나 다중 수단으로 행한 처리를 고려하여 한정 수신 해제를 할 수 있게 된다. 예컨대, 다수의 스트림을 선별하기 위한 방법으로서, 패킷 내의 데이터를 개서하여 행할지, 헤더를 부여하여 행할지 등에 대한 교섭을 할 수 있게 된다. 또, 전처리 수단으로 트랜스포트 스트림에 어떠한 선별을 하였는지 등에 대한 교섭을 할 수 있다.
또, 상기 한정 수신 해제 장치는 또한, 상기 시청 관련 데이터의 취급 능력, 추출의 대상으로 해야 하는 상기 시청 관련 데이터, 추출의 대상으로부터 제외되는 상기 시청 관련 데이터 및 취급할 수 있는 다중화 방식에 관한 정보 중 적어도 하나를 방송 수신 장치에 통지하는 통지부를 갖는 것을 특징으로 한다.
이것에 의해, 방송 수신 장치로부터 한정 수신 해제 장치로 데이터를 송출할 시의 데이터 조건을 방송 수신 장치에 통지할 수 있게 된다.
또, 상기 한정 수신 해제 장치는 또한, 상기 출력 인터페이스의 출력처로부터의 요구에 따르는 요구 응답부를 갖는 것을 특징으로 한다.
이것에 의해, 방송 수신 장치와 한정 수신 해제 장치간에 쌍방향 메시지 통신을 할 수 있게 된다.
또한, 본 발명은 상기 방송 수신 장치 및 한정 수신 해제 장치뿐만 아니라, 이들 장치가 동작하는 방법이나, 그 동작을 컴퓨터에 실행시키는 프로그램, 이 프로그램을 격납하는 기억 매체로서도 실현할 수 있다.
(실시 형태1)
본 발명은 대상이 되는 방송 시스템으로서, 위성 시스템, 지상파 시스템, 케이블 시스템의 3종류의 운용 형태를 상정한다. 위성 시스템은 위성을 이용하여 방송 신호를 방송 수신 장치에 전송하는 형태, 지상파 시스템은 지상파 신호 송출 장치를 이용하여 방송 신호를 방송 수신 장치에 전송하는 형태, 케이블 시스템은 케이블 헤드 엔드를 이용하여 방송 신호를 방송 수신 장치에 전송하는 형태이다. 본 발명은 각 방송 시스템의 차이와 직접적인 관계를 갖지 않으므로, 방송 시스템에 관계없이 적용 가능하다.
본 발명에 관한 방송 시스템의 실시 형태를, 도면을 참조하면서 설명한다. 도 2는 방송 시스템을 구성하는 장치의 관계를 나타낸 블록도이고, 방송국측 시스템(101) 및 3개의 단말 장치A(111), B(112), C(113)로 구성된다. 방송국측 시스템∼각 단말 장치간의 결합(121)에 관해서는 유선/무선의 양 경우가 존재한다. 예컨대 케이블 시스템에서는 방송국측 시스템∼각 단말 장치간은 유선으로 결합된다. 한편, 위성/지상파 시스템에서의 방송국측 시스템∼각 단말 장치간에는, 하행(방송국측 시스템으로부터 각 단말 장치로)방향으로는 유선 결합이 존재하지 않고, 방송 신호는 전파를 이용하여 전송된다. 상행(각 단말 장치로부터 방송국측 시스템으로)방향에 관해서는 전화 회선, 유선 인터넷 등을 이용한 유선 결합, 무선 통신을 이용한 무선 결합의 양 경우가 있고, 각 단말 장치는 사용자 입력 등의 정보를 방 송국측 시스템으로 송신한다. 본 실시 형태에서는 하나의 방송국측 시스템에 대하여 3개의 단말 장치가 결합되어 있지만, 임의의 수의 단말 장치를 방송국측 시스템에 결합하여도 본 발명은 적용 가능하다.
방송국측 시스템(101)은 다수의 단말 장치에 대하여 영상·음성·데이터 방송용 데이터 등의 정보를 방송 신호에 포함시켜 송신한다. 방송 신호는 방송 시스템의 운용 규정이나, 방송 시스템이 운용되는 나라·지역의 법률에 의해 정해진 주파수 대역 내의 주파수를 이용하여 전송된다.
예로서, 케이블 시스템에 관한 방송 신호 전송 규정의 예를 나타낸다. 본 예로 나타내는 케이블 시스템에서는 방송 신호 전송에 이용되는 주파수 대역이 그 데이터의 내용과 전송 방향(상행, 하행)에 관해서 분할되어 이용된다.
도 3은 주파수 대역의 분할의 일례를 나타내는 표이다. 주파수 대역은 Out Of Band(약칭 OOB)와 In-Band의 두 가지로 나누어진다. 5∼130MHz가 OOB에 할당되고, 주로 방송국측 시스템(101)과 단말 장치A(111), B(112), C(113)간의 데이터의 교환에 사용된다. 130MHz∼864MHz는 In-Band에 할당되고, 주로, 영상·음성을 포함하는 방송 채널에 사용된다. OOB에서는 QPSK 변조 방식이, In-Band는 QAM64 또는 QAM256 변조 방식이 사용된다. 변조 방식 기술에 관해서는, 본 발명에 관여가 거의 없는 공지 기술이므로, 상세한 설명은 생략한다.
도 4는 OOB주파수 대역의 더욱 상세한 사용의 일례이다. 70MHz∼74MHz는 방송국측 시스템(101)으로부터의 데이터 송신에 사용되고, 모든 단말 장치A(111), B(112), C(113)가 방송국측 시스템(101)으로부터 동일한 데이터를 수취하게 된다. 한편, 10.0MHz∼10.1MHz는 단말 장치A(111)로부터 방송국측 시스템(101)으로의 데이터 송신에 사용되고, 10.1MHz∼10.2MHz는 단말 장치B(112)로부터 방송국측 시스템(101)로의 데이터 송신에 사용되며, 10.2MHz∼10.3MHz는 단말 장치C(113)로부터 방송국측 시스템(101)으로의 데이터 송신에 사용된다. 이것에 의해, 각 단말 장치 고유의 데이터를 각 단말 장치A(111), B(112), C(113)로부터 방송국측 시스템(101)으로 송신할 수 있게 된다.
도 5는 In-Band의 주파수대에 대한 사용의 일례이다. 150∼156MHz와 156∼162MHz는 각각 TV채널 1과 TV채널 2에 할당되고, 이후, 6MHz 간격으로 TV채널이 할당된다. 310MHz 이후는 1MHz단위로 라디오 채널에 할당된다. 이들의 각 채널은 아나로그 방송으로 사용하여도 되고, 디지털 방송으로서 사용하여도 된다. 디지털 방송의 경우는, MPEG2 사양에 근거한 TS패킷 형식으로 전송되고, 음성이나 영상에 부가하여 각종 데이터 방송용 데이터도 송신할 수 있다.
방송국측 시스템(101)은 이들의 주파수 대역을 이용하여 단말 장치에 적절한 방송 신호를 송신하기 위해, QPSK변조부나 QAM변조부 등을 갖는다. 또, 단말 장치로부터의 데이터를 수신하기 위해, QPSK 복조기를 갖는다. 또, 방송국측 시스템(101)은 이들 변조부 및 복조부에 관련되는 여러가지 기기를 갖는다고 생각할 수 있다. 그러나, 본 발명은 주로 단말 장치에 관한 것이므로, 상세한 설명은 생략한다.
단말 장치A(111), B(112), C(113)는 방송국측 시스템(101)으로부터의 방송 신호를 수신하여 재생한다. 또, 방송국측 시스템(101)에 대하여, 각 단말 장치 고 유의 데이터를 송신한다. 3개의 단말 장치는 본 실시 형태에서는 동일한 구성을 취한다.
또한, 본 예에서는 케이블 시스템 운용에 관한 일례의 상세한 것을 소개하고 있지만, 본 발명은 위성, 지상파 시스템 및 케이블 시스템의 다른 형태에서도 적용 가능하다. 위성 및 지상파 시스템에서의 방송국측 시스템과 각 단말 장치의 결합은 상기와 같이 유선/무선의 양 경우가 존재하고, 또한 주파수 대역이나 주파수 간격, 변조 방식, 방송국측 시스템의 구성 등은 방송 시스템의 종별이나 운용에 의존하여 상이하지만, 이것은 본 발명과의 관련성이 없으며, 본 발명은 이것이 어떻게 규정되어도 적용 가능하다.
방송국측 시스템(101)은 트랜스포트 스트림을 변조하여 방송 신호에 포함시켜 전송한다. 각 단말 장치는 방송 신호를 수신하고, 복조하여 트랜스포트 스트림을 재현하며, 그 중에서 필요한 정보를 추출하여 이용한다. 또한, 트랜스포트 스트림의 데이터 형식으로서, 예컨대, MPEG2 트랜스포트 스트림 형식을 이용할 수 있다. MPEG2 트랜스포트 스트림은 디지털 방송 등에 이용된다. 여기서는, 디지털 방송 수신 장치(단말 장치)에 존재하는 디바이스와 탈착 가능한 어댑터 간의 전송에 관한 설명을 하므로, 우선 MPEG2 트랜스포트 스트림의 구성을 간단히 기술한다.
도 6은 TS패킷의 구성을 도시하는 도면이다. TS패킷(500)은 188바이트의 길이를 갖고, 헤더(501), 어댑테이션 필드(502), 페이로드(503)로 이루어진다. 헤더(501)는 TS패킷의 제어 정보를 유지한다. 4바이트의 길이를 갖고, 504로 나타내어지는 구성을 취한다. 이 중에 “Packet ID(이하 PID)"로 기술되는 필드를 가지며, 이 PID의 값에 의해서, TS패킷의 식별을 한다. 어댑테이션 필드(502)는 시각 정보 등의 부가적인 정보를 유지한다. 어댑테이션 필드(502)의 존재는 필수가 아니고, 존재하지 않는 경우도 있다. 페이로드(503)는 영상·음성이나 데이터 방송용 데이터 등, TS패킷이 전송하는 정보를 유지한다.
도 7은 MPEG2 트랜스포트 스트림의 모식도이다. TS패킷(601 및 603)은 헤더에 PID(100)를 유지하고, 페이로드에 영상 1에 관한 정보를 유지한다. TS패킷(602 및 605)은 헤더에 PID(200)를 유지하며, 페이로드에 데이터 1에 관한 정보를 유지한다. TS패킷(604)은 헤더에 PID(300)를 유지하고, 페이로드에 음성 1에 관한 정보를 유지한다.
MPEG2 트랜스포트 스트림(600)은 TS패킷(601∼605)과 같은 연속하는 TS패킷에 의해서 구성된다. TS패킷은 이 페이로드에 영상이나 음성, 데이터 방송용의 데이터 등 여러가지 정보를 유지한다. 방송 수신 장치는 TS패킷을 수신하여, 각 TS패킷이 유지하는 정보를 추출하는 것으로써, 영상·음성을 재생하고, 프로그램 편성 정보 등의 데이터를 이용한다. 이 때, 동일 PID를 갖는 TS패킷은 동일 종류의 정보를 유지한다. 도 7에서도, TS패킷(601 및 603)은 모두 영상 1에 관한 정보를 전송하고, 또 TS패킷(602 및 605)은 모두 데이터 1에 관한 정보를 전송한다.
영상 및 음성은 PES(Packetized Elementary Stream)패킷이라는 형식으로 표현된다. PES패킷은 실제로 전송될 때 분할하여 TS패킷에 격납된다. 도 8은 PES패킷을 전송할 때의 분할예를 도시한다. PES패킷(701)은 하나의 TS패킷 내의 페이로드에 격납하여 전송하기에는 크므로, PES패킷 분할A(702a), PES패킷 분할B(702b), PES패킷 분할C(702c)로 분할하여, 동일 PID를 갖는 3개의 TS패킷(703∼705)에 의해서 전송된다.
이와 같이, 동일 PID를 갖는 TS패킷을 추출한 부분을 엘레멘터리 스트림(ES)이라고 한다. 또한, PES패킷도 헤더와 페이로드로 분리되어 있고, 이 PES패킷의 페이로드 내에는 압축된 영상 데이터(VIDEO_ES)와 압축된 음성 데이터(AUDIO_ES)와 자막용 데이터가 존재한다.
프로그램 편성 정보나 데이터 방송용의 데이터 등의 정보는 MPEG2 섹션이라고 하는 형식을 이용하여 표현된다. MPEG2 섹션은 실제로 전송될 때, 분할하여 TS패킷에 격납된다. 도 9는 MPEG2 섹션을 전송할 때의 분할예를 도시한다. MPEG2 섹션(801)은 하나의 TS패킷 내의 페이로드에 격납하여 전송하기에는 크므로, 섹션 분할A(802a), 섹션 분할B(802b), 섹션 분할C(802c)로 분할하여, 동일 PID를 갖는 3개의 TS패킷(803∼805)에 의해서 전송된다.
도 10은 MPEG2 섹션의 구조를 표현한다. MPEG2 섹션(900)은 헤더(901) 및 페이로드(902)로 구성된다. 헤더(901)는 MPEG2 섹션의 제어 정보를 유지한다. 그 구성은 헤더 구성(903)에 의해서 표현된다. 페이로드(902)는 MPEG2 섹션(900)이 전송하는 데이터를 유지한다. 헤더 구성(903)에 존재하는 table_id는 MPEG2 섹션의 종류를 표현하고, 또한 table_id_extension은 table_id가 동일한 MPEG2 섹션끼리를 구별할 때에 이용되는 확장 식별자이다. MPEG2 섹션의 사용예로서, 도 11에 프로그램 편성 정보를 전송하는 경우를 예로 든다. 이 예에서는, 행1004에 기재되는 바와 같이, 방송 신호의 복조에 필요한 정보는 헤더 구성(903) 내의 table_id가 64인 MPEG2 섹션에 기재되고, 또한 이 MPEG2 섹션은 PID에 16이 부여된 TS패킷에 의해서 전송된다. 또한, 섹션도 PES 패킷과 마찬가지로, 동일 PID로 운반되는 패킷을 추출하여 통합한 것이 MPEG2 섹션(801)을 전송하는 ES라고 할 수 있다.
MPEG2 트랜스포트 스트림 내에는 또한 프로그램이라는 개념이 존재한다. 프로그램은 ES의 집합으로서 표현되고, 다수의 ES를 통합하여 취급하고 싶은 경우에 이용된다. 프로그램을 이용하면, 영상·음성이나, 그것에 부수하는 데이터 방송용 데이터 등을 일괄적으로 취급하는 것이 가능하게 된다. 예컨대, 동시에 재생하고 싶은 영상·음성을 통합하여 취급할 경우, 영상을 포함하는 PES 패킷을 전송하는 ES와, 음성을 포함하는 PES 패킷을 전송하는 ES를 프로그램으로 통합하는 것으로써, 방송 수신 장치는 2개의 ES를 동시에 재생하여야하는 것을 알게 된다. 이러한, 프로그램을 표현하기 위해서, MPEG2에서는 PMT(Program Map Table) 및 PAT(Program Association Table)라는 2개의 테이블이 이용된다. 상세한 설명은 ISO/IEC13818-1, “MPEG2 Systems" 사양을 참조되면 된다. 또한, 여기서는 혼돈을 피하기 위해 프로그램을 서비스라고 한다. 또, PMT, PAT 이외에도 섹션에는 PSI라는 프로그램 특정 정보를 나타내는 것이 있다. PSI에는 다음 4개가 있다.
PAT(Program Association Table):트랜스포트 스트림 중의 PMT의 PID 등을 기술한다. 트랜스포트 스트림 내에 하나만 존재한다.
PMT(Program Map Table):서비스마다 존재하고, 서비스를 구성하는 ES 등의 PID를 지정한다.
CAT(Conditional Access Table):유료 방송 제어용의 EMM(가입자의 개인 정 보. 스크램블의 키도 포함)의 PID를 지정한다.
NIT(Network Information Table):변조 주파수 등, 전송로의 정보와 방송 서비스를 관련시키는 정보를 포함한다. 상세한 것은 운용 규정.
또한, 이 PSI 이외의 전송 제어 신호를 SI(Service Information)라고 하는 프로그램 배열 정보에 의해서, PSI 이외의 정보나, PSI에 관련된 상세 정보 등을 전송하는 테이블이 정의되어 있다. 이들의 정의는, 방송 규격에 따라 상이하다. 일례를 들면, 일본의 경우에는 ARIB의 규격, 유럽 디지털 방송 규격의 경우에는 DVB-MHP의 규격, 미국 케이블 방송의 경우는 OCAP에 상세한 내용이 기술되어 있다.
도 12는 섹션, PES 패킷 및 ES 정보 등의 계층 구조의 일례를 도시한다. TS(1101)는 트랜스포트 스트림을 나타내고, CAT(1102)나 PAT(1103)를 포함한다. PAT(1103)는, 네트워크 정보의 NIT(1104) 및 서비스 정보를 나타내는 PMT(1105)의 PID를 다수 정의한다. 또 PAT(1103)는 다수의 서비스를 정의하고 있고, PMT(1105, 1110)와 같은 각 PMT의 PID를 갖는다. PMT(1105)에는 그 서비스를 구성하기 위한 Audio의 ES(1107)나 Video의 ES(1108)와 서비스의 기준이 되는 시각을 나타내는 PCR(Program Clock Reference)(1106)과 Private Section(1109)으로 운반되는 독자 섹션이 존재한다. Private Section(1109) 중에는, 어플리케이션 등의 정보가 운반된다.
이 어플리케이션의 일례로서는, 일본의 ARIB의 경우에는 BML언어로 기술된 파일, DVB-MHP나 미국의 OCAP에서는, Java의 실행 형식인 Class 파일이다. 이와 같이 MPEG2 트랜스포트 스트림은 여러가지 정보를 전송하기 위해서 계층 구성을 취 한다. 방송 수신 장치는 방송 신호 내에 존재하는 MPEG2 트랜스포트 스트림이 내포하는 정보를, MPEG2 트랜스포트 스트림의 계층 구성을 거쳐가며 추출한다. 또 TS(1101) 중에는, EIT(1111)나 SDT(1112) 등과 같이, PAT(1103), PMT(1105)부터 거쳐갈 수 없는 정보도 존재한다.
이후, 본 실시 형태의 전제가 되는 상황에 관해서 설명한다.
디지털 방송 수신 장치의 하드웨어 구성을 나타내는 블록도를 도 13에 도시한다. 본 실시 형태에서는, 하나 혹은 다수의 트랜스포트 스트림의 입력이 있는 디지털 방송 수신 장치를 규정하고 있으므로, 여기서는 예로서 두 개의 튜너나 AV디코더로 나타내고 있지만, 이들의 수에 의존하지 않고 본 발명은 적용 가능하다. 또 본 하드웨어 구성에서는, TS디코더(1206)로부터 AV디코더(1207)로의 PES 패킷의 출력 수가 2로 되어있지만, 본 발명은 이 수에는 의존하지 않고 적용 가능하다. 또, TS디코더(1206) 자체가 다수이어도, 본 발명은 적용 가능하다.
도 13의 방송 수신 장치는 튜너(1201)(1201a, 1201b), 전처리부(1202)(1202a, 1202b), 다중부(1203), 어댑터(1204), 다중 분리부(1205), TS디코더(1206), AV디코더(1207), 스피커(1208), 디스플레이(1209), CPU(1210), 2차 기억부(1211), 1차 기억부(1212), ROM(1213), 입력부(1214)로 구성된다. 또한, 어댑터(1204)는 단말 장치(1200)로부터 착탈할 수 있다. 튜너(1201)는, 1201a와 1201b 두개의 튜너를 통합한 것을 가리킨다. 또, 전처리부(1202)는 1202a와 1202b의 두개의 전처리부를 통합한 것을 가리킨다. 또, AV디코더(1207)도, 1207a와 1207b의 두개의 AV디코더를 통합한 것을 가리킨다. 또한, 튜너(1201), 전처리부(1202), AV 디코더(1207)는 각각 하나 혹은 다수 존재하여도, 본 발명은 적응 가능하다.
도 14는 단말 장치(1200)의 외관의 일례인 박형TV이다.
박형TV의 본체(1301)는 어댑터(1204)를 제외하고 단말 장치(1200)의 구성 요소를 모두 내장하고 있다.
디스플레이(1302)는 도 13에서의 디스플레이(1209)에 상당한다.
프론트 패널부(1303)는 다수의 버튼으로 구성되고, 도 13의 입력부(1214)에 상당한다.
신호 입력 단자(1304)는 방송국측 시스템(헤드 엔드)(101)과의 신호의 송수신을 하기 위해서 케이블 선에 접속된다. 신호 입력 단자(1304)는 도 13의 튜너(1201)와 접속되어 있다.
카드(1305)는 도 13의 어댑터(1204)에 상당한다. 어댑터(1204)는 도 14의 카드(1305)와 같이, 단말 장치(1200)와는 독립된 형태를 취하고, 단말 장치(1200)에 착탈 가능하게 되어 있다. 어댑터(1204)의 상세한 것은 후술한다.
삽입 슬롯(1306)에는 어댑터(1204)가 삽입된다.
도 13을 참조하여, 튜너(1201)는 CPU(1210)가 지정하는 주파수를 포함하는 튜닝 정보에 따라서, 방송국측 시스템(101) 내에서 변조되어 전송되어 온 방송 신호를 복조하는 디바이스이다. 또한, 여기서는 구성 요소로서, 튜너(1201)를 들지만, 여기서의 구성 요소가 트랜스포트 스트림을 출력하는 것이라면, 다른 구성 요소라도 적용 가능하다. 일례로서, 하드디스크에 보존되어 있는 트랜스포트 스트림을 독출하여, 전처리부(1202)로 트랜스포트 스트림을 출력하는 것도 가능하다. 또 , IEEE1394를 이용하여 외부 장치로부터 트랜스포트 스트림을 입력할 수도 있다. 또한, 전처리부 상당의 처리가 행해지고 있는 경우에는, 전처리부(1202)의 처리를 생략하여도 가능하다.
어댑터(1204)가 유지하는 디바이스를 동작시키기 위해서는 어댑터(1204)에 대하여 튜너(1201)가 복조한 트랜스포트 스트림을 입력해야 할 필요가 있다. 그러나, 다수의 트랜스포트 스트림을 입력하는 경우에는, 모든 트랜스포트 스트림을 다중화하여 어댑터로 송신하면, 전송 레이트나 CPU의 처리 속도가 높아진다. 그래서, 전처리부(1202)와 다중화부(1203)를 지나, 어댑터(1204)로 송신한다.
전처리부(1202)에서는, 어댑터 이후의 처리에 필요한 정보만을 트랜스포트 스트림으로부터 선택한다. 혹은 불필요한 정보만 트랜스포트 스트림으로부터 삭제하는 것도 가능하다. 도 15에 전처리부의 기능의 이미지도를 도시한다. 1411a는 트랜스포트 스트림A를 나타내고, 트랜스포트 스트림 A내의 1, 2, 3은 서비스를 모식적으로 화살표로 나타낸다. 1411b도 마찬가지로, 트랜스포트 스트림B 중에는, 4, 5, 6이라는 3개의 서비스가 존재한다. 이들을, 전처리부(1202a, 1202b)에 취입함으로써, CPU(1210)로부터 지정된 서비스만을 남긴 1412a와 1412b에 나타내는 부분TS가 생성된다. 이와 같이, 전처리부에서는 트랜스포트 스트림으로부터 전부 또는 일부의 정보를 선택, 혹은 제거한다.
이것에 의해, 수신 단말과 어댑터 간의 전송 레이트를 저속으로 억제할 수 있게 된다. 또한, 본 실시 형태에서는 이 처리를 전처리부로서 다른 디바이스와는 분리된 형태로 설명하지만, 이 처리가 다른 디바이스에서 행해지더라도 본 발명은 적용 가능하다. 예컨대, 1206의 TS디코더 중에는, PID의 필터링과 섹션이나 PES의 필터링을 행하고 있는 부분이 존재한다. 그러므로, 이 TS디코더(1206)의 일부로서 전처리부를 실현하는 것도 가능하다. 또, 본 실시 형태에서는, 전처리부를 튜너마다 1202a, 1202b로 준비하지만, 반드시 튜너마다 준비할 필요는 없다.
도 16은 전처리부(1202a, 1202b)의 내부 구성을 나타내는 블록도이다. 전처리부(1202a, 1202b)는 수신부(1501)와 필터링부(1502)를 구성 요소로 한다.
도 23, 도 24는 수신부(1501)의 플로우 차트를 도시한다.
수신부(1501)는 CPU(1210) 상에서 동작하는 프로그램에 의해, 지정된 PID를 수신한다(스텝2201). 그리고, 수신한 PID를 필터링부(1502)에 설정한다(스텝2202). 또, 수신부(1501)는 CPU(1210) 상의 프로그램에 의해 지정된 PID를 추가할지, 삭제할지의 선택도, CPU(1210) 상의 프로그램으로부터 수취할 수 있다(스텝2301). 그리고, 필터링부(1502)에 지정된 추가·삭제의 설정을 행할 수 있게 된다(스텝2303, 2304).
또한, 이 추가·삭제의 설정에 관해서는, 사전에 정해진 PID를 설정하는 것도 가능하다. 또, PID가 지정되었을 때에, 수신부에서 자동적으로 관련되는 PID를 추가하는 것도 가능하다. 예컨대, 지정된 PID가 ES의 PID인 경우, 수신부에서 PAT, PMT의 PID도 추가하여, 필터링부(1502)에 설정하는 것도 가능하다. 또한, 동일한 PID를 갖는 PMT는 다수 존재하는 경우가 있지만, 이 때에는, 하나 혹은 다수의 PMT를 선택하여 추가하여도 된다. 당연히 삭제하는 경우도, 지정된 PID만을 삭제하는 것도 가능하지만, 지정된 PID를 근거로 관련되는 PID를 삭제하는 것도 가능 하다. 또, 다수의 PID의 지정을 하는 것도 가능하다. 또, PID를 지정할 때에, MPEG2 프로그램 스트림의 형식으로 AV의 ES를 지정하여도 된다. 또한, 여기서는, CPU(1210) 상에서 동작하는 프로그램이 지정하는 내용으로서 PID를 예로 들었지만, 반드시 PID일 필요는 없다. 여기서는 트랜스포트 스트림 중의 ES를 특정하는 정보라면, PID 이외의 지정을 하는 것도 가능하다. 예컨대, 유럽 방송 규격의 DVB에서는, ES를 식별하기 위한 기술자로서, ComponentTag가 규정되어 있다. 이러한 ComponentTag를 이용하여도 된다.
도 25, 도 26은 필터링부(1502)의 플로우 차트를 도시한다.
필터링부(1502)는 수신부에서 설정된 필터링 조건을 수신한다(스텝2401). 그리고, 설정된 PID만을 필터링 할 수 있다(스텝2402). 필터링 조건에는, 설정된 PID만을 선택(스텝2504)과 제거(스텝2503)를 설정할 수 있다. 그리고, 설정된 필터링 조건에 일치한 패킷을 다중화부(1203)에 통과시킨다(스텝2505). 예컨대, 도 17의 [1]에 나타내는 바와 같은 TS패킷이 전송되어 오고, 수신부(1501)에 의해 A1와 V1의 PID를 추가하도록 지정된 경우, 필터링부에서는 도 17의 [2]에 도시한 바와 같이 A1과 V1의 패킷만을 선택한다.
여기서 설명한 전처리부(1202)의 각 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
도 13을 참조하여, 다중화부(1203)에서는, 전처리부(1202a, 1202b)에 의해서 선택된 다수의 트랜스포트 스트림의 다중을 행한다. 도 18에 다중화부(1203)의 기능의 이미지도를 도시한다. 다중화부(1721)에서는, 전처리부(1202)에서 작성한 1412a와 1412b의 부분TS를 하나의 스트림(1722)으로 맞추는 처리를 한다.
도 19는 다중화부(1203)의 내부 구성을 나타내는 블록도이다. 다중화부(1203)는 개서부(1811), 다중부(1812)를 구성 요소로 한다.
도 27은 개서부(1811)의 플로우 차트를 도시한다.
개서부(1811)는 전처리부(1202)에서 전처리를 실시한 다수의 트랜스포트 스트림을 수신한다(스텝2601). 그리고 다수의 트랜스포트 스트림의 식별을 행하기 위해서, 트랜스포트 스트림 내의 필드의 모두 혹은 일부의 개서를 한다(스텝2602).
예컨대, 트랜스포트 스트림 내의 미사용 영역의 개서를 행하는 것이 가능하다. 이 트랜스포트 스트림이 MPEG2 트랜스포트 스트림의 경우에는, 트랜스포트 스트림 내의 RESERVE 영역을 이용하는 것도 가능하다. 또, MPEG2 프로그램 스트림으로 실현할 때에는, MPEG2 프로그램 스트림 중의 RESERVE 영역을 이용하여도 된다. 또, 동기 바이트의 일부 혹은 모두를 트랜스포트 스트림의 식별에 이용하는 것도 가능하다. MPEG2 트랜스포트 스트림의 경우, 8바이트의 동기 바이트를 준비한다. 이 중, 상위 2바이트는 트랜스포트 스트림의 식별을 하기 위한 ID로 하고, 나머지의 6바이트를 동기 바이트로 하는 것도 가능하다.
또, 동기 바이트 전부를 트랜스포트 스트림의 식별에 이용하여도 된다. 또한, 동기 바이트 전부를 트랜스포트 스트림의 식별에 이용한 경우에는, NULL 패킷을 10회에 1회, 동기 바이트로서 넣어도 된다. 물론, 상위 몇 비트를 식별에 이용하여도 되며, 동기 바이트를 몇 회 넣어도 본 발명은 적용 가능하다. 또, 여기서는 미사용 플래그와 동기 바이트에 관해서만 기술하였지만, 다른 필드에서도 운용 규정을 정하여, 개서를 하는 것이 가능하다. 당연, PID의 개서를 함으로써 트랜스포트 스트림의 식별을 하는 것도 가능하다. 또한, 도 19에서, 개서부(1811)는 두개의 입력과 두개의 출력을 갖고 있지만, 개서부 자체가 트랜스포트 스트림의 수만큼 존재하여도 문제없다. 또한, 이 개서부(1811)는 반드시 여기에서 처리할 필요는 없다. 예컨대, 전처리부(1202)에서 실현되어도 문제없다.
도 28은 다중부(1812)의 플로우 차트를 도시한다.
다중부(1812)는 개서부(1811)로부터 출력된 다수의 트랜스포트 스트림을 수신한다(스텝2701). 수신한 다수의 트랜스포트 스트림을 도 20에 도시한 바와 같이, 다수의 트랜스포트 스트림을 하나의 트랜스포트 스트림에 다중한다. 이 다중 방법으로서, 개서부(1811)로부터 입력된 다수의 트랜스포트 스트림의 입력을 수취한 순서로 일정한 비트 레이트로 송출한다(스텝2702). 단, 각 트랜스포트 스트림에 패킷이 없는 경우는, NULL 패킷을 삽입할 수도 있다. 또한, 이 다중 방법은 가변 비트 레이트로 실현하는 것도 가능하다.
또, 다중부(1812)는 서비스의 기준이 되는 시간을 나타내는 PCR의 보정을 하는 것도 가능하다. 다중부(1812)에서, 다수의 트랜스포트 스트림으로부터의 입력을 일정한 비트 레이트로 출력하는 모양을 도 21에 도시한다. 도 21의 [1]과 [2]는 다중부(1812)로의 입력을 나타내고, 도 21의 [3]은 다중부(1812)로부터 일정한 비트 레이트로 출력된 스트림을 나타내고 있다. 예컨대, 도 21 [2]의 B2가 PCR을 운반하는 패킷이었던 경우에, 도 21 [1]의 A3과 동일한 타이밍으로 들어갔으므로, 도 21 [3]에서는 A3의 뒤에 B2가 들어가, 타이밍이 T만큼 어긋나 있는 것을 알 수 있다.
이와 같이, 기준이 되는 시각을 운반하는 PCR의 송출의 타이밍이 어긋났을 때에는, PCR의 값을 보정하는 기능을 갖을 수 있게 된다. PCR은 도 22에 도시한 패킷의 어댑테이션 필드(2102) 내에 존재한다. 이 어댑테이션 필드 내의 정보 일례를 도 22의 2104로 나타낸다. PCR의 보정은 어댑테이션 필드(2104)의, Program_Clock_Reference_Base나 Program_clock_reference_extension을 변경하여 행할 수 있다.
또한, 도 21와 같은 어긋남에 따라서, 가변으로 보정하는 것도 가능하다. 또, 고정치로 보정하는 것도 가능하다. 또한, 이것을 구하기 위한 상세한 계산식 등은 ISO/IEC 13818-1, “MPEG2 Systems" 사양을 참조하면 된다. 또, PCR 보정 기능으로서, PCR의 변경을 하는 것 외에, 다중 시에 PCR을 우선적으로 처리하는 것도 가능하다. 또한, 도 21 [3] 내에서 아무것도 기술되어 있지 않는 패킷은 NULL 패킷을 나타낸다.
또, 만일, 전처리부(1202)에 의해서 선택된, 하나 혹은 다수의 트랜스포트 스트림의 전송 레이트의 합계가 단말 장치(1200)와 어댑터(1204)간의 전송 레이트보다도 높은 경우에는, 본래의 전송 레이트보다도 지연되어 패킷이 수취되므로, AV디코더 측에서 언더플로우를 일으킬 가능성이 있다. 또, 전송 레이트가 높아진 경우에, 패킷을 파기하는 수법을 취하는 것도 가능하지만, 이 경우에도, 패킷의 결여에 의해 블록 노이즈가 발생한다. 그러므로, 다중부(1812)는 CPU(1210) 상의 프로그램으로 이 취지를 통지하고 CPU(1210) 상의 프로그램은 전처리부(1202)의 수신부 로 우선도의 지정에 따라서 재설정 처리를 하는 것을 요구할 수 있게 된다. 그리고, 수신부(1501)는 다시 필터링부(1502)로 필터링 조건을 설정하고, 설정된 조건에 일치하는 트랜스포트 스트림을 다시 다중화부(1203)에 통과시킨다.
이와 같이, 어떤 트랜스포트 스트림 혹은 어떤 PID를 우선적으로 처리할지에 대한 것을, 재설정함으로써, 블록 노이즈 등의 영향을 최소한으로 억제할 수 있게 된다. 또한, 이와 같은 지연에 대한 대책으로서, AV디코더(1207) 등의 버퍼를 충분히 준비해 둠으로써, 그 지연을 흡수할 수도 있게 된다. 또, 다중부(1812)에 입력되는 전처리부(1202)에 의해서 선택된 하나 혹은 다수의 트랜스포트 스트림의 전송 레이트의 합계가, 단말 장치(1200)와 어댑터(1204)간의 전송 레이트보다도 낮은 경우에는, 정확하게 동작하는 것을 보증할 수 있다.
우선도의 지정은 상기에 기술한 바와 같이 CPU 상의 프로그램으로부터 행하는 경우와 전처리부(1202)의 수신부(1501)에서 자동적으로 행하는 경우를 상정할 수 있다. 우선도의 지정 기준은 현재의 시청 상황(프로그램 내용이나 ES의 종류나 영상 등의 표시 영역 및 녹화 상태 등의 일부 혹은 전부)을 고려하여 우선 순서의 설정을 하는 것이나, 또는, 1차 기억부(1212)나 2차 기억부(1211) 등의 기억부에 보존된 사용자 프레퍼런스 정보에 따라서 우선도 결정을 할 수 있다. 사용자 프레퍼런스에는 사용자가 시청하는 디폴트의 언어 정보 등의 설정이 행해져 있다. 우선도를 부과하는 일례를 이하에 나타낸다.
사용자가 Picture in Picture에서 두개의 프로그램을 시청하고 있는 경우에, 대화면으로 시청하고 있는 서비스를 우선적으로 처리할 수 있다. 이렇게 함으로 써, 언더 플로우의 영향을 소화면만으로 한정하는 것이 가능하게 되어, 대화면으로의 영향을 회피하는 것이 가능하다. 당연히, 반대로도 가능하다. 또한, 이 때에는 넘친 패킷을 지연해서라도 전송할지, 파기할지는 사전에 결정할 수 있다. 또, 이 판단을 CPU 상의 프로그램으로부터 지정하는 것도 가능하다.
또한, 사용자가 이(裏)녹화 등을 하는 경우에는 이녹화는 리얼 타임성이 요구되지 않으므로, 패킷의 지연을 허용하는 것이 가능하다고 생각할 수 있고, 현재 사용자가 시청 중의 서비스를 우선적으로 처리할 수도 있게 된다. 당연히, 반대로도 가능하다. 또한 이 경우에는, 다중부(1812)의 방침으로서, 축적된 것은 지연해서라도 모두 송신한다.
또한, 사용자가 이녹화 등을 하는 경우에는, 이녹화를 우선적으로 처리하여도 된다.
또한, PPV(Pay Per View) 등에 의해서, 사용자가 구입한 프로그램과 무료 프로그램이 선택된 경우는, 사용자가 구입한 프로그램의 우선도를 높게 설정할 수 있다. 이것에 의해, 사용자가 구입한 프로그램에 영향을 주지 않도록 할 수 있다.
또한, 스트림 타입의 SD와 HD에서, 미적인 것을 우선시키기 위해서 HD를 우선시키는 것도 가능하다. 역으로, SD를 우선시키는 것도 가능하다.
또한, 사용자가 시청하는 프로그램의 쟝르를 조사함으로써, 뉴스나 코미디 등의 프로그램보다도, 영화나 드라마의 우선도를 높일 수 있다. 반대도 가능하다. 또, 음악 프로그램의 경우에는 영상보다도 음성을 우선시키는 것도 가능하다.
또한, 음성 데이터와 영상 데이터에서, 정보량이 적은 음성 데이터를 우선적 으로 처리함으로써, 확실하게 음성이 들리도록 하는 것도 가능하다.
또한, 음성에서도, AC3나 MPEG Audio나 돌비와 같이, 그 종류에 의해서 우선도를 결정하는 것도 가능하다.
또한, 사용자가 현재 시청하는 언어에 일치한 음성이나 자막 정보 및 비디오 등을 선택하여 불필요한 언어에 의존하는 ES를 삭제하는 것도 가능하다.
또한, 사용자 프레퍼런스로 설정된 언어 이외의 언어 정보에 의존한 ES를 삭제하는 것도 가능하다.
또한, 멀티 앵글을 서포트하는 경우 등은 시청되지 않는 불필요한 스트림을 삭제하는 것도 가능하다.
또한, 일반적으로 스크램블이 행하여지는 Video 혹은 Audio 혹은 양쪽을 반드시 추가한다는 것도 가능하다. 혹은 Video, Audio 이외의 다른 ES나 패킷이어도 된다.
도 13을 참조하여, 어댑터(1204)는 단말 장치에 탑재되어 있지 않는 디바이스를 추가하기 위해서, 및 단말 장치 상에 탑재되어 있는 디바이스의 기능을 향상시키기 위해서, 추가하고자 하는 디바이스를 탑재한 어댑터를 단말 장치에 부여할 수 있다. 일례로서, 트랜스포트 스트림을 입력하도록 하고, 입력된 트랜스포트 스트림에 포함되는 TS패킷에 관해서, CPU(1210)가 지정한 PID를 갖는 TS패킷에 대하여 한정 수신을 해제하는 한정 수신 해제 장치를 유지할 수 있게 된다. 한정 수신 해제를 하기 위해서는, 다중부(1203)에서 다중화 한 트랜스포트 스트림을 입력해야 할 필요가 있다. 그러므로, 다중부(1203)는 다중화 한 트랜스포트 스트림을 어댑 터(1204)에 입력한다. 어댑터(1204)는 입력된 트랜스포트 스트림 내의 CPU(1210)가 지정한 TS 패킷에 대한 암호 해제를 한다.
또한, 이 때 트랜스포트 스트림을 식별하는 방법을 단말 장치와 어댑터(1204)간에서 교섭함으로써, 어댑터(1204)가 입력된 단말 장치와 어댑터(1204)간의 형식의 트랜스포트 스트림을 식별할 수 있도록 하는 것도 가능하다. 단말 장치와 어댑터(1204)간의 트랜스포트 스트림의 형식으로는 TS패킷의 헤더 필드의 변환을 한 스트림이나, 확장 필드의 추가를 한 스트림 등이 있다. 또한, 그 수법을 단말 장치와 어댑터(1204)간에 결정해 놓는 방법이어도 된다. 또, 단말 장치와 어댑터(1204)간의 교섭 방법은 신호 선의 HIGH나 LOW를 이용하여도 되고, 레지스터의 설정이나, 제어 메시지를 이용하거나 다른 방법이어도 본 발명은 적용 가능하다. 그 후, 트랜스포트 스트림을 다중 분리부(1205)에 송신한다.
또한, 본 발명은 단말 장치(1200)와 어댑터(1204)간의 정보의 형식에 의존하지 않는다. 예컨대, 여기서의 트랜스포트 스트림이 MPEG2 트랜스포트 스트림이어도 적용 가능한 동시에 독자의 어댑터(1204)가 해석 가능한 비트 스트림이어도 된다. 또, 단말 장치(1200)와 어댑터(1204)간의 인터페이스는 PCMCIA가 일반적이지만, 본 발명은 그 인터페이스의 형식과는 관련성이 없으므로, 어떠한 인터페이스라도 적용 가능하다.
다중 분리부(1205)는 CPU(1210)의 지시에 따라, 다중부(1203)에 의해서 다중화된 트랜스포트 스트림을 분리한다. 또한, 이 때의 CPU(1210)의 지시로는, 다중화부(1203)나 전처리부(1202)가 어떻게 처리를 했는지에 대한 것도 전할 수 있다. 이들의 지시에 따라 동작함으로써, 다중화부(1203)나 전처리부(1202)에서 연동하여 동작하는 것도 가능하다. 또, 이들간에 사전에 결정하는 정보에 따라서 동작하는 것도 가능하다.
분리한 각 트랜스포트 스트림은 TS디코더(1206)가 해석할 수 있는 형식일 필요가 있다. 예컨대, 다중화부(1203) 내의 개서부(1811)에 의해서 변경한 동기 바이트를 MPEG2TS의 동기 바이트로 변경하고, 전처리부(1202)에 의해서 선택된 PID의 패킷 간에 적절하게 NULL 패킷을 삽입하면서 TS디코더(1206)가 해석할 수 있는 MPEG2 트랜스포트 스트림의 형식으로 변경한다. 여기서 설명한 다중 분리부(1205)의 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다. 또, TS디코더(1206)가 다중화된 트랜스포트 스트림을 해석할 수 있는 경우에는, 본 다중 분리부(1205)는 존재할 필요가 없다. 또, 본 다중화 분리부(12005)를 TS디코더(1206)의 일부로 실현하여도 된다.
TS디코더(1206)는 CPU(1210)가 지정하는 PID, 섹션 선별 조건 등의 지정에 근거하여 MPEG2 트랜스포트 스트림으로부터 지정 조건에 합치하는 PES 패킷이나 MPEG2 섹션을 선별하는 기능을 갖는 디바이스이다. TS디코더(1206)가 선별한 PES 패킷은 AV디코더(1207)에 전송된다. 또, TS디코더(1206)가 선별한 MPEG2 섹션은 1차 기억부(1212)에 DMA(Direct Memory Access)전송되어, CPU(1210)가 실행하는 프로그램에 의해서 이용된다. 또한, TS디코더(1206)는 상기 PES 패킷 및 MPEG2 섹션의 선별 기능 외에, 한정 수신으로서 암호화된 PES 패킷 및 MPEG2 섹션의 한정 수신의 해제 기능이나, 입력된 MPEG2 트랜스포트 스트림을 TS디코더(1206)에 물리적 으로 접속된 다른 디바이스로 전송하는 기능 등을 갖는다.
AV디코더(1207)는 디지털 인코드된 영상 및 음성을 디코드 하는 기능을 갖는 디바이스이다. AV디코더(1207)가 디코드하여 얻은 AV신호는 스피커(1208), 디스플레이(1209)에 송신된다. 또한, AV디코더(1207)는 반드시 영상 및 음성을 동시에 디코드할 수 없는 경우도 있다. 영상 디코더, 음성 디코더 단체로서 존재하는 경우도 있다. 또한, AV디코더는 경우에 따라서는 서브타이틀 데이터에 대한 디코드 기능을 갖는 경우도 있다.
스피커(1208), 디스플레이(1209)는 각각 AV디코더(1207)로부터 송신된 음성, 영상을 출력하는 기능을 갖는 디바이스이다.
본 실시 형태에서는, 2개의 AV디코더로부터 AV신호가 입력되고 있고, 그 출력 형태는 CPU(1210)의 지시에 의해 결정된다. 예컨대 AV디코더(1207a)가 출력한 AV신호만 출력하거나, AV디코더(1207b)가 출력한 영상을 전화면 표시하여 AV디코더(1207a)가 출력한 영상을 AV디코더(1207b)가 출력한 영상의 바로 앞에 우측 하부분의 4분의 1표시하는, 등의 지정이 가능하다.
CPU(1210)는 방송 수신 장치 상에서 동작하는 프로그램을 실행한다. CPU(1210)가 실행하는 프로그램은 ROM(1213)에 포함되는 경우, 방송 신호나 네트워크로부터 다운로드되어 1차 기억부(1212)에 유지되어 있는 경우, 방송 신호나 네트워크로부터 다운로드되어 2차 기억부(1211)에 보존되어 있는 경우 등이 존재한다. CPU(1210)는 실행하는 프로그램의 지시에 따라, 튜너(1201)(1201a, 1201b), 전처리부(1202)(1202a, 1202b), 다중부(1203), 다중 분리부(1205), TS디코더(1206), AV디 코더(1207)(1207a, 1207b), 스피커(1208), 디스플레이(1209), 2차 기억부(1211), 1차 기억부(1212), ROM(1213), 입력부(1214)를 제어한다. 또한, CPU(1210)는 단말 장치(1200) 내에 존재하는 디바이스뿐만 아니라, 어댑터(1204)와 통신 혹은 제어하는 것이 가능하다.
또, 전처리부(1202)에서 선택된 스트림을 다중 분리부(1205)에서는, TS디코더(1206)가 해석할 수 있는 형식으로 변환하는 것이나, 어댑터(1204)로부터 취득한 정보의 일부 또는 모두를 선택하는 것이 가능하므로, 다중 분리부(1205)에서는 전처리부(1202)에서 선택된 정보를 알 수 있도록 CPU(1210)로부터의 지령을 보낼 수 있게 된다.
또, 전처리부(1202)와 다중화부(1203)간에도, 어떠한 PID나 Program No의 것이 포함되는 것인지를 연동하여 처리하는 것도 가능하다.
또, 다중화부(1203)와 다중 분리부(1205)는 연동하여 처리한다. 그러므로, 이들의 조작이 연동하여 작동할 수 있도록, CPU(1210)로부터의 지령을 보낼 수 있다. 예컨대, 어떤 다중화 방식으로 다중되는 것인지에 대한 것이나, 어떠한 서비스가 포함되어 있는 것인지에 대한 것을 공통의 인식을 갖고 동작할 수 있게 된다. 또한, 이들 간의 동작이 CPU에 의한 지령에 의해서 연동하지 않고, 사전에 결정하는 것으로 실현하여도 된다.
본 실시 형태와 같이, 동일 종류의 디바이스가 다수 존재하는 경우에는, CPU(1210)는 그 각각을 개별로 지정하여 제어하는 것이 가능하다.
2차 기억부(1211)는 FLASH-ROM 등의 불휘발성 메모리, HDD(Hard Disk Drive), CD-R이나 DVD-R 등의 개서 가능한 미디어 등 단말 장치(1200)의 전원이 끊긴 경우에도 정보가 소거되지 않는 기기에 의해서 구성되고, CPU(1210)의 지시에 의해 정보의 보존을 한다. 단말 장치(1200)의 전원이 끊기는 것에 의해서 소거되면 곤란한 데이터의 보존에 이용된다.
1차 기억부(1212)는 RAM 등에 의해서 구성되고, CPU(1210)나 DMA 가능한 디바이스의 지시에 따라 정보를 일시적으로 보존하는 기능을 갖는 디바이스이다. 1차 기억부(1212)에 유지된 정보는 단말 장치(1200)의 전원 끊김에 의해서 소거된다.
ROM(1213)은 개서 불가능한 메모리 디바이스이고, 구체적으로는 ROM이나 CD-ROM, DVD 등으로 구성된다. ROM(1213)에는 CPU(1210)가 실행하는 프로그램이 격납되어 있다.
입력부(1214)는 구체적으로는 프론트 패널이나 리모콘으로 구성되고, 사용자로부터의 입력을 접수한다. 도 29는 프론트 패널에서 입력부(1214)를 구성한 경우의 일례이다. 프론트 패널(2800)은 7개의 버튼, 상 커서 버튼(2801),하 커서 버튼(2802), 좌 커서 버튼(2803), 우 커서 버튼(2804), OK버튼(2805), 취소 버튼(2806), EPG버튼(2807)을 구비하고 있다. 사용자가 버튼을 누르면, 눌린 버튼의 식별자가 CPU(1210)에 통지된다.
또한, 도 13에서는 디스플레이(1209), 스피커(1208)를 방송 수신 장치 내부에 포함하는 형태로 표현하지만, 방송 수신 장치에는 디스플레이(1209), 스피커(1208)를 내포하지 않고, 외부에 AV 신호만 출력하는 타입인 것도 존재한다. 디스 플레이(1209) 및 스피커(1208)의 존재 장소는 본 발명과 관련성이 없고, 어느 타입에 대해서도 본 발명은 적용 가능하다.
본 실시 형태에서 나타낸 구성 요소의 각 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
어댑터(1204)의 예로서, 미국 케이블 시스템에서 이용되는 POD에 관해서 설명한다. POD는 도 14와 같이 단말 장치(1200)로부터 착탈 가능한 형태를 하고 있다. 단말 본체와 POD의 접속 인터페이스는, Open Cable(TM) HOST-POD Interface Specification(OC-SP-HOSTPOD-IF-I12-030210)으로 정의되어 있다. 그러나 이 사양서에서는, 하나의 트랜스포트 스트림을 입력으로서 수취하는 경우를 규정하고 있고, 다수의 트랜스포트 스트림에 관한 규정은 없다. 여기서는, 다수의 트랜스포트 스트림을 입력하는 경우의 예를 나타낸다. 도 31은 POD(3004)가 부여된 단말 장치의 하드웨어 구성을 도시한다. 단말 장치(3000) 내에 존재하는 디바이스로서, 도 13과 동일한 번호로 식별되는 디바이스는 도 13과 동일한 기능을 갖는다. POD(3004)는 디스크램블러를 탑재하고 있고, 도 13에서의 어댑터(1204)와 같이 다중화된 트랜스포트 스트림을 입력으로서 수신하며, 한정 수신의 해제의 처리를 한 트랜스포트 스트림을 다중 분리부에 의해, 다수의 트랜스포트 스트림으로 반신한다.
또, 미국 케이블 시스템에서는, 도 3, 도 4에 도시하는 바와 같이, OOB 라는 주파수 대역을 이용하여 여러가지 정보가 상행 및 하행 방향으로 전송된다. 이 때, 방송국측 시스템(101)이 단말 장치에 대하여 송출하는 정보의 형식과, 단말 장치 (3000)가 해석 가능한 정보의 형식은 상이하므로, 그대로로는 정보의 교환이 불가능하게 된다. POD(3004)는 이들 OOB에서 전송되는 상행, 하행의 정보의 형식 변환을 행하는 디바이스를 구비하고 있다. OOB에서 전송되는 정보는 QPSK 변조 방식으로 변조된다. 본 변조 방식은 공지의 기술이고, 상세한 설명은 생략한다. 단말 장치는 QPSK 복조기(3015)와 QPSK 변조기(3016)를 구비한다. CPU(3010)는 단말 장치(3000) 내의 디바이스뿐만 아니라, POD(3004) 내의 디바이스를 제어 가능하다.
하행 방향의 단말 장치(3000)의 정보 수신에 관하여, 우선 QPSK 복조기(3015)는 OOB에서 방송국측 시스템(101)으로부터 송신되는 하행의 신호를 복조하고, 생성된 비트 스트림을 POD(3004)에 입력한다. POD(3004)는 비트 스트림이 포함하는 여러가지 정보 중에서, CPU(3010)가 지정하는 정보를 추출하여, CPU(3010) 상에서 동작하는 프로그램이 해석 가능한 형식으로 변환하고, CPU(3010)에 제공한다.
상행 방향의 단말 장치(3000)의 정보 송신에 관하여, 우선 CPU(3010)가 방송국측 시스템(101)에 대하여 송신하고 싶은 정보를 POD(3004)에 송신한다. POD(3004)는 CPU(3010)로부터 입력된 정보를 방송국측 시스템(101)이 해석 가능한 형식으로 변환하고, QPSK 변조기(3016)에 송신한다. QPSK 변조기(3016)는 POD(3004)로부터 입력된 정보를 QPSK 변조하여 방송국측 시스템(101)으로 송신한다.
도 32는 POD(3004)의 내부 구성을 나타내는 블록도이다. POD(3004)는 제1 디스크램블러부(3101), 제2 디스크램블러부(3102), 스크램블러부(3103), 제1 기억 부(3104), 제2 기억부(3105), CPU(3106)로 구성된다.
제1 한정 수신 해제부(3101)는 CPU(3106)로부터의 지시에 의해, 단말 장치(3000)의 QAM 복조부(3001a, 3001b)를 다중화부(1203)에서 다중한 트랜스포트 스트림으로부터 암호화된 신호를 수취하여, 복호를 한다. 그리고, 복호된 신호를 단말 장치(3000)의 다중 분리부(1205)에 전송된다. 디코드에 필요한 키 등의 정보는 CPU(3106)로부터 적절하게 주어진다. 구체적으로는 방송국측 시스템(101)은 몇 개의 유료 채널을 방송하고 있다. 사용자가 이 유료 채널을 구매하면, 제1 한정 수신의 해제부(3101)는 CPU(3106)로부터 키 등의 필요한 정보를 수취하여 한정 수신 해제함으로써, 사용자는 유료 채널을 열람할 수 있게 된다. 키 등의 필요한 정보가 주어지지 않는 경우에는, 제1 한정 수신 해제부(3101)는 한정 수신의 해제를 하지 않고, 수취한 신호를 그대로, 다중 분리부(1205)로 전송한다.
제2 한정 수신 해제부(3102)는 CPU(3106)로부터의 지시에 의해, 단말 장치(3000)의 QPSK 복조부(3015)로부터 암호화된 신호를 수취하여, 복호를 한다. 그리고, 복호된 데이터를 CPU(3106)에 인도한다.
스크램블러부(3103)는 CPU(3106)로부터의 지시에 의해, CPU(3106)로부터 수취한 데이터를 암호화하여, 단말 장치(3000)의 QPSK 변조부(3016)에 전송한다.
제1 기억부(3104)는 구체적으로는 RAM 등의 1차 기억 메모리로 구성되고, CPU(3106)가 처리를 할 때 일시적으로 데이터를 저장하기 위해서 사용된다.
제2 기억부(3105)는 구체적으로는 플래쉬 ROM 등의 2차 기억 메모리로 구성되고, CPU(3106)가 실행하는 프로그램을 격납하며, 또, 전원 OFF가 되어도 소거되 면 곤란한 데이터의 보존에 사용된다.
CPU(3106)는 제2 기억부(3105)가 기억하는 프로그램을 실행한다.
도 30은 도 13의 각 구성 요소에서 처리하는 플로우 차트를 나타낸다.
방송국측 시스템(101) 내에서 변조되고, 전송되어 온 트랜스포트 스트림을 튜너(1201)로 복조한다(스텝2901). 전처리부(1202)에서는, 어댑터(1204) 이후의 처리에 필요한 정보만을 선택한다(스텝2902). 또한, 전처리부의 상세한 플로우 차트에 관해서는, 도 23, 도 24, 도 25, 도 26, 도 34, 도 36, 도 38, 도 39, 도 40, 도 42, 도 43, 도 44에 도시한다. 다음에, 전처리부(1202)에 의해서 선택된 스트림을 다중한다(스텝2903). 다중부(1203)의 상세한 플로우 차트는, 도 27, 도 28에 도시한다. 어댑터(1204)는 전처리부(1202), 다중부(1203)에 의해서 처리된 트랜스포트 스트림을 입력으로서 수취하고, 어댑터 내의 처리를 한다. 예로서, 한정 수신 해제 장치가 탑재되어 있는 경우에는, 입력된 다수의 다중화된 트랜스포트 스트림을 식별하면서, CPU에 의해서 지정된 정보에 대하여, 한정 수신 해제의 처리를 한다(스텝2904). 다중 분리부(1205)에서는 어댑터(1204)로부터 출력된 한정 해제의 처리가 실시된 스트림을 수신하고, 다중화부(1203)에 의해서 다중화된 일부 혹은 전부의 정보와, 다중화부(1203)의 다중 방식을 맞춰서 분리한다(스텝2905). 또, 다중 분리부(1203)에서는, TS디코더(1206)가 처리할 수 있는 스트림 형식으로 고쳐, 출력하는 것도 가능하다. TS디코더(1206)는 CPU의 지정에 의해 섹션이나 PES패킷의 선별을 한다(스텝2906). AV디코더(1207)는 TS디코더(1206)에 의해서, 선별된 PES패킷을 수취하고, 영상이나 음성을 디코드한다(스텝2907). 스피커(1208)와 디스플레이(1209)는 AV디코더(1207)로부터 수신한 음성·영상을 출력한다(스텝2908).
또한, 입력부(1214)는 사용자의 요구를 접수하고, CPU(1210)로부터 각 디바이스에 그 요구에 따른 지령을 전할 수 있게 된다. 각 디바이스는 이 CPU(1210)로부터의 지령에 의해서, 처리할 수 있게 된다. 또한, CPU(1210)로부터의 지령이 없어도, 독자적으로 동작하는 것이어도 된다. 또, 2차 기억부(1211), 1차 기억부(1212), ROM(1213)은 CPU(1210)가 동작 할 때 등에 적절하게 참조하는 것이 가능하다. 또한, CPU(1210)는 사용자로부터의 요구 이외에도, CPU 상에서 동작하는 프로그램의 지령을 각 디바이스에 전하고, 동작하는 것도 가능하다.
(실시 형태2)
실시 형태1에서는 전처리부(1202)의 내부 구성을 나타내는 블록도로서 도 16을 상정했지만, 도 33에 도시하는 바와 같이, 수신부(3201), 필터링부(1502), PSI 기억부(3203)로 하는 것도 가능하다. 또한, 본 실시 형태2에서는, 실시 형태1에서 설명한 기능에 추가하는 기능에 관해서만 설명한다.
도 34는 수신부(3201)의 플로우 차트를 도시한다.
수신부(3201)는 CPU(1210) 상에서 동작하는 프로그램에 의해, 지정을 수신한다(스텝3301). 이 지정이 PID에서 지정된 경우에 대해서는, 실시 형태1에서 나타낸 것이다(스텝3304). 또한, 실시 형태1에도 명기하였지만, 수신부(3201)에서 PID의 추가·삭제를 자동적으로 하는 처리를 할 때에, 본 실시 형태에서 적용한 PSI기억부를 이용함으로써, 지정된 PID 이외의 PID를 더욱 추가할 수 있다. 본래, PID 를 지정하는 데이터는 어댑터(1204) 내에서 처리하고 싶은 데이터와 어댑터(1204) 내에서 하는 처리에 필요한 데이터를 포함시킬 필요가 있다. 이것은 예컨대 POD(3004)의 경우에는, 디스크램블 처리를 하므로, 사용자 혹은 CPU(1210) 상에서 동작하는 프로그램에 의해서 지정된 PID에 부가하여, 디스크램블 처리에 필요한 데이터를 수신부(3201)에서 자동적으로 추가할 수 있게 된다.
디스크램블에 필요한 데이터의 일례로는, CAT나 EMM이나 ECM 등의 정보가 있다. CAT는 0x01의 PID에서 전송되고, CAT 중의 CA_descriptor의 CA_PID에 EMM의 PID가 명기되어 있다. 그리고, PMT 내의 CA_descriptor의 CA_PID에 ECM을 운반하는 PID가 지정되어 있다. 이 CA_descriptor는 PMT의 서비스 단위로 지정할 수도 있지만, ES 단위로 지정할 수도 있다. 그러므로, PID지정된 경우, 이 PID를 포함하는 PMT의 서비스 단위 혹은 지정된 ES에 CA_descriptor가 존재하는 경우에는, 이 CA_descriptor 내에 기술된 ECM을 운반하는 PID를 추기하도록 설정하여도 된다. 물론, Program No로 지정된 경우에도, 지정된 Program No를 갖는 PMT에 CA_descriptor가 존재하는 경우에는, ECM을 운반하는 PID는 반드시 설정하도록 하여도 된다.
또한, CA_descriptor의 지정이 다수 존재할 경우에는, 그 일부 혹은 전부에 기술된 ECM 및 EMM을 포함하여도 된다. 또, ECM에 부가하여, 이들 정보를 기술한 PMT나 PAT의 PID도 추가하여도 된다. 또한, 지정된 PID를 포함하는 서비스(PMT)에 CA_descriptor가 존재한 경우에는, 수신부(3201)에서 서비스 단위의 지정으로 전환하고, 이 PMT 내의 모든 ES(EMM을 포함한다)를 포함하도록 설정하여도 된 다. 또, CAT 및 EMM을 항상 설정하도록 하여도 된다. 또, 여기서는 CAT 및 EMM이 트랜스포트 스트림에서 전송되는 것을 상정하고 기술하지만, CAT은 OOB 등의 전송 경로가 있는 경우에는, OOB 등의 전송 경로로 운반되어도 된다. 또한, 여기서는, EMM을 지정하는 것은 CAT로서 설명하였지만, 동등한 기능을 갖는 독자 섹션이어도 된다.
또, CA_descriptor 등에서도 동등한 기능을 갖는 기술자를 이용하여 지정하여도 된다.
또한, 디스크램블에는 직접 필요한 것이 아니어도, 지정된 특정 패킷 혹은 ES 등을 포함시키는 것도 가능하다.
이것에 대하여, Program No를 지정된 경우에는, PSI 기억부에서 지정된 Program No를 근거로, 지정하는 PID를 얻는다(스텝3303). 여기서는, Program No와 같은 서비스 단위로 지정된 경우의 선택 방법을 고려한다. 기본 방침으로는, 지정된 서비스 이외의 서비스를 구성하는 스트림의 일부 혹은 전부를 선택·삭제하는 방침과, 지정된 서비스 내의 각 PID를 선택·삭제하는 방침과, 지정된 서비스에 의존하지 않는 데이터의 선택·삭제를 고려하여 PID를 결정하는 방침이 있다. 일례를 이하에 설명한다.
지정된 Program No를 근거로, 동일한 Program No를 갖는 PMT를 발견하고, 이 PMT 내의 ES 모두의 PID를 얻는 것을 생각할 수 있다.
또한, PAT과 PMT를 추가하는 것도 가능하다. 또한, PMT의 추가는, 지정된 Program No를 갖는 것만을 추가하는 방침이어도 되고, 다른 서비스를 나타내는 PMT 를 포함해도 된다. 또 단지, Audio와 Video의 ES와 PCR만의 PID를 얻을 수도 있다. 또, 암호가 걸려 있는 경우에는, 지정한 PID에 부가하여, 상술한 바와 같은 디스크램블에 필요한 정보(EMM, CAT, ECM의 일부 혹은 전부 등)를 포함하는 것도 가능하다. 그리고, 이렇게 하여 얻은 PID를 필터링부(1502)에 추가로 설정한다(스텝2304). 또한, 이들을 필터링부(1502)에 삭제로 설정하는(스텝2303) 것도 가능하다.
삭제예를 또한 기술하면, 지정된 Program No를 갖는 PMT 이외의 PAT로부터 거쳐갈 수 있는 PMT의 특정한 ES(Video와 Audio의 ES만, 또는 Video만, 또는 Audio만 등) 혹은 지정된 Program No를 갖는 PMT 이외의 PAT로부터 거쳐갈 수 있는 PMT의 모든 ES 및 PMT을 삭제하는 것도 가능하다.
이와 같이 지정된 Program No를 갖는 PMT 이외의 서비스의 ES를 삭제함으로써, PAT, PMT로부터 거쳐갈 수 없는 패킷도 지정하는 것이 가능하게 되고, 또한, 지정되어 있지 않는 Video 등의 ES가 없어짐으로써, 트랜스포트 스트림의 용량을 작게 억제할 수 있다. 또 단지, Program No와 삭제의 지정을 받았을 때에는, 지정된 Program No를 갖는 PMT로부터 거쳐갈 수 있는 것만을 삭제할 수도 있게 된다. 또한, 다수의 서비스를 지정한 경우에는, Program No의 지정을 다수 행하고, 각각의 서비스의 추가·삭제의 지정을 하는 것도 가능하다.
또, PSI 기억부(3203)로부터 필요한 구조 정보를, 바이너리로 취득하여 수신부에서 필요한 PID를 판단하여도 된다. 필요한 구조 정보의 예로서, PAT, PMT 등을 생각할 수 있다. 지금까지, PSI 기억부(3203)를 간단하게 기억부로서 실현한 경우를 상정하여 기술했지만, PSI 기억부(3203)가 라이브러리나 독립한 프로그램으로서 있는 경우에는, 수신부가 Program No를 설정하고, PSI 기억부(3203)에서 필요한 PID의 판단을 하는 것도 가능하다. 또, PSI 기억부(3203)에 Program No를 설정한 경우, 설정한 Program No를 갖는 PMT 내의 ES가 변경하는 경우를 생각할 수 있다. 이 경우에는, 지정된 Program No의 PMT를 PSI 기억부(3203)가 감시하고, 그 Version Up을 검출하며, PSI 기억부로부터 새롭게 추가된 ES의 PID나, PMT 등의 정보를 수신부(3201)에서 수취하여, 필터링부(1502)에 설정할 수 있게 된다.
또한, PSI 기억부(3203)가 직접 필터링부(1502)에 설정하여도 된다. 이와 같이, Program No로 지정함으로써, 방송 중의 트랜스포트 스트림 내에 멀티 앵글의 정보 등이 추가되어도(ES의 정보가 증감하여도), 자동적으로 그 정보를 취득할 수 있도록 할 수 있다. 또한, 여기서는, Program No를 이용하여 트랜스포트 중의 서비스를 특정하였지만, 서비스의 특정 방법이 Program No 이외의 서비스명 등의 정보라도 본 발명은 적용 가능하다.
PSI 기억부(3203)는 구체적으로는, RAM 등의 1차 기억 메모리로 구성되고, 수신부가 처리를 할 때, 일시적으로 데이터를 참조하기 위해서 사용된다. 또한, 수신부에서 Program No 지정을 받을 때마다 스트림으로부터 필요한 패킷을 취득하여도 된다. 일례로서, PAT, PMT 등의 스트림의 구조 정보를 유지, 혹은 취득하는 것을 생각할 수 있다. 그렇게 함으로써, Program No가 지정되면 동일한 Program No를 갖는 PMT를 찾고, 그 PMT 내에 포함되는 PID나, PMT의 PID를 반신할 수 있다. 또, 역으로 PID가 지정되었을 때에, 그 PID를 포함하는 서비스(PMT)를 구하여, 이 Program No를 반신하는 것도 가능하다.
또, PAT나 PMT 자체를 PSI 기억부(3203)에서 캐쉬해 놓고, 수신부에 바이너리로서 반신하는 것도 가능하다. 또한, 여기서는, PSI 기억부(3203)를 기억부로서 실현한 경우의 설명을 하였지만, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다. 또, PSI 기억부(3203)는 반드시 단체로 존재할 필요도 없고, 수신부(3201)나 필터링부(1502)의 일부로서 존재하는 것도 가능하다. 또한, PSI 기억부(3203)에서는, 수신부(3201)에 의해서 지정된 Program No를 갖는 PMT의 Version Up을 자동적으로 검출하는 것도 가능하다. Version Up을 검출하였을 때의 ES의 증감에 대하여, 새롭게 PID의 추가나 삭제를 수신부(3201)에 통지할 수 있게 된다. 또, 이 통지는 직접 필터링부(1502)에 전송하여도 된다.
필터링부(1502)는 실시 형태1에서 설명한 것과 동등한 기능으로 본 실시 형태에서도 실현된다.
본 실시 형태에서 나타낸 구성 요소의 각 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
(실시 형태3)
실시 형태1에서는, 전처리부(1202)의 내부 구성을 나타내는 블록도로서 도 16을 상정했었지만, 도 35에 도시한 바와 같이, 수신부(3401), 필터링부(1502), 디폴트 설정부(3404)로 하는 것도 가능하다. 또한, 실시 형태2에서 설명한 PSI 기억부(3203)도 구성 요소의 일부로서 있어도 된다. 또한, 본 실시 형태3에서는 실시 형태1, 실시 형태2에서 설명한 기능에 추가하는 기능에 관해서만 설명한다.
도 36은 수신부(3401)의 플로우 차트를 도시한다.
수신부(3401)는, CPU(1210) 상에서 동작하는 프로그램으로부터의 설정을 디폴트 설정부(3404)에 설정할 수 있다. 그리고, 디폴트 설정부(3404)로부터 필터링 조건을 취득하여, 필터링부에 설정할 수 있다(스텝3502). 이 기능을 이용하는 타이밍의 일례로서, CPU로부터의 명령이 오지 않는 경우나, 수신부의 초기화 시에 설정을 행하는 것으로 상정된다. 그리고, 디폴트 설정부(3404)의 설정을 필터링부(1502)에 설정한 후에, 새롭게 CPU(1210) 상에서 동작하는 프로그램으로부터의 설정이 있었던 경우, 필터링부로 설정할 수 있다(스텝3504).
디폴트 설정부(3404)는, 구체적으로는 ROM에 있고, 언제나 취득하지 않으면 안되는 것을 설정한다. 이 일례로서, 실시 형태2에서 나타낸 디스크램블에 필요한 정보(CAT나 EMM 등)를 설정해 놓아도 된다. 또 이것 외의 특정한 패킷이어도 되고, ES 등이어도 된다. 이것은 수신부(3401)에 의해서 설정된다. 또, 언제나 취득하지 않으면 안되는 것을 기억하는 것 외에, 전원이 꺼지기 전에 설정한 정보를 유지해 놓고, 단말 장치의 전원을 넣었을 때에 그 설정을 독출하여 CPU에 지정될 때까지의 사이에 이용할 수도 있게 된다. 즉, 수신부의 초기화 시에 호출, 필터링부에 설정하는 예도 가능하다. 또한, 지정 형식은 PID라도 Program No이어도 된다. 또, 추가, 삭제 설정도 기억할 수 있다. 여기서는, 본 기능을 기억부로서 실현한 경우의 설명을 했지만, CPU 상의 프로그램으로부터의 호출로 작동하는 라이브러리이어도 된다. 또한, 디폴트 설정부(3404)는 수신부(3401)나 필터링부(1502)나 그 밖의 기능의 일부로서 존재하는 것도 가능하다.
필터링부(1502)는 실시 형태1에서 설명한 것과 동등한 기능으로 본 실시 형태도 실현할 수 있다.
또한, PSI 기억부(3203)도 내부 구성의 일부로서 존재하는 것도 가능하다. 또한, 본 실시 형태에서 나타낸 구성 요소의 각 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
(실시 형태4)
다수의 트랜스포트 스트림에서 발생하는 경합을 회피하기 위한 변환을 행하는 경우와, 트랜스포트 스트림으로부터 선택한 스트림에 일치하도록, 스트림 중의 패킷의 구조 정보를 개서하는 경우 등이 존재한다. 전자의 일례로서, 다수의 트랜스포트 스트림으로부터 동일한 PID나 Program No가 존재하고, 취득하고 싶은 PID나 Program No에 중복이 생긴 경우, 중복한 패킷의 PID나 서비스의 Program No 등의 변환을 하는 것이나, 변환한 트랜스포트 스트림에서 패킷이나 서비스를 식별하기 위해서, PAT나 PMT의 변환을 하는 것도 가능하다. 또 후자의 경우, 트랜스포트 스트림으로부터, PID나 Program No를 지정하였을 때에, 선택한 스트림과의 부조화가 생기지 않도록, PAT나 PMT를 변환하는 경우도 상정된다.
실시 형태1에서는 전처리부(1202)의 내부 구성을 나타내는 블록도로서 도 16을 상정했었지만, 도 37에 도시한 바와 같이, 수신부(3601), 필터링부(3602), 변환부(3605)로 하는 것도 가능하다. 또한, 실시 형태2에서 설명한 PSI 기억부(3203)나 실시 형태3에서 설명한 디폴트 설정부(3604)중의 어느 하나 혹은 모두가 구성 요소의 일부로 있어도 된다. 또한, 본 실시 형태4에서는 실시 형태1, 실시 형태2, 실시 형태3에서 설명한 기능에 추가하는 기능에 관해서만 설명한다.
도 38은 수신부(3601)의 플로우 차트를 나타낸다.
수신부(3601)는 CPU(1210) 상에서 움직이는 프로그램으로부터 패킷의 변환의 요구를 취득한 경우, 또는, 스스로 변환의 필요성을 발견한 경우에(스텝3701), 변환부(3605)로 변환할 필요가 있는 PID나 Program No를 설정한다.(스텝3702). 그리고, 변환부(3605)에서 변환하는 패킷을 수신하고(스텝3703), 필터링부(3602)에 개서하는 패킷과 PID를 지정한다(스텝 S3704). 또한, CPU(1210) 상에서 동작하는 프로그램으로부터의 설정이 있었는 경우(스텝 S3705), 필터링부로 설정할 수 있다(스텝3706).
도 39는 변환부(3605)의 플로우 차트를 나타낸다.
변환부(3605)는 수신부(3601)로부터의 변환하는 PID나 Program No의 설정을 하게 된다(스텝3801). 이 때, PID 지정을 하게된 경우에는, PSI 기억부(3203)로부터, Program No를 구한다(스텝3802). 그리고 동일한 Program No를 갖는 PMT와 PAT를 취득한다(스텝3803). 설정된 조건에 따르거나 혹은 다른 PID나 Program No와 중복이 되지 않도록, 수신부(3601)로부터 설정된 PID 혹은 Program No로 지정된 실제 데이터와 PAT나 PMT간에서 부조화가 일어나지 않도록 개서한다(스텝3804). 그리고, 개서한 PAT나 PMT를 수신부(3601)에 반신한다.
또한, 변환부(3605)로부터 필터링부(3602)에 직접 설정하여도 된다. 이상과 같이 변환부(3605)에서는, PAT, PMT 등 구조 정보를 나타내는 개서를 하지만, 필요에 따라서, 다른 패킷을 변경하는 것도 가능하다. 또, PAT나 PMT와 실제로 포함되 는 트랜스포트 스트림간에 부조화가 생긴 경우에도, CPU(1210) 상의 프로그램에서 실제로 스트림이 존재하는지의 여부를 판단할 수 있는 경우나, CPU(1210) 상의 프로그램에서 오리지널의 PAT, PMT를 필요로 하는 경우에는, 변환부(3605)의 처리를 할 필요는 없다. 또한, 변환부(3605)는 전처리부(1202) 내에서 행해도 되고, 다중화부(1203) 내에서 행하여도 된다. 또, 양쪽에서 행하여도 된다.
또한, 전처리부(1202) 내의 변환부(3605)에서 최저한 실현할 필요가 있는 PMT의 변환은 전처리부(1202)에서 행하여, 다중화부(1203)에서 PAT의 변환을 행할 수도 있다. 또한, 본 기능은 하드웨어에서 실현하여도, CPU 상의 프로그램으로부터의 호출로 작동하는 라이브러리이어도 된다. 또한, 단말 장치에 전원이 켜졌을 때에나 CPU 상의 프로그램에 의해서 작성된 독립한 프로그램이어도 된다. 또한, 변환부(3605)의 각 처리는 수신부(3601)나 필터링부(3602)의 일부나 그 밖의 기능의 일부로서 존재하는 것도 가능하다. 또, CPU(1210)로부터 변환하는 패킷을 수신부(3601)에서 직접 수신하고, 그것을 수신부(3601)가 필터링부(3602)에 설정하는 것도 가능하다.
도 40은 필터링부(3602)의 플로우 차트를 도시한다.
필터링부(3602)는 수신부(3601)에 의해서 변환 요구를 받은 경우, 변환하는 패킷 자신과 그 PID를 수신한다(스텝3902). 그리고, 수신한 패킷의 변환을 설정한다(스텝3903). 또한, 수신부(3601)로부터 변환 요구가 있는 경우에는, 그들을 처리하고 필터링을 행한다.
디폴트 설정부(3604)는 변환부(3605)에서 변환한 패킷의 정보도 기억하는 것 이 가능하다.
또, PSI 기억부(3203)도 내부 구성의 일부로서 존재하는 것도 가능하다. 본 실시 형태에서 나타낸 구성 요소의 각 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
(실시 형태5)
실시 형태1에서는 전처리부(1202)의 내부 구성을 도시하는 블록도로서 도 16을 상정했지만, 도 41에 도시하는 바와 같이, 수신부(4001), 필터링부(4002), SIT 작성부(4007)로 하는 것도 가능하다. 또한, 실시 형태2에서 설명한 PSI 기억부(3203)나 실시 형태3에서 설명한 디폴트 설정부(3404) 및 실시 형태4에서 설명한 변환부(3605)중의 어느 하나 혹은 모두가 구성 요소의 일부로서 있어도 된다. 또한, 본 실시 형태5에서는 실시 형태1, 실시 형태2, 실시 형태3, 실시 형태4에서 설명한 기능에 추가하는 기능에 관해서만 설명한다.
도 42는 수신부(4001)의 플로우 차트를 도시한다.
수신부(4001)는 CPU(1210) 상에서 작동하는 프로그램에 의해서, PID 지정을 하게 된 경우에는, PSI 기억부(3203)로부터 Program No를 구한다(스텝4102). 이렇게 하여 구한 Program No를 근거로, 지정된 서비스에 관련 없는 TS패킷의 PID를 구한다(스텝4103). 또한, 여기서는 PID를 구하도록 하지만, 관련 없는 Program No를 구하여도 되고, 관련있는 PID나 Program No만을 선택할 수 있도록 지정을 하여도 된다.
특별하게 선택된 하나 혹은 다수의 서비스에 관계 없는 트랜스포트 스트림을 MPEG2 트랜스포트 스트림으로부터 제거함으로써 얻어진 비트 스트림을 파셜 트랜스포트 스트림이라고 한다. 이 파셜 트랜스포트 스트림의 생성 방법은 운용 규정에 의해서 정해지고 있다. 예컨대, 이 PID를 구할 때 방법의 일례로서, 이 파셜 트랜스포트 스트림의 생성 방법을 이용하는 것을 생각할 수 있다.
파셜 트랜스포트 스트림은 BD 등의 축적 미디어에 기록할 때에 생성된다. 또한, IEEE1394에 트랜스포트 스트림을 흐르게 하는 경우에도 생성되는 것이, 일반적으로 알려져 있다. 이러한 표준 규격에 준거함으로써, 축적 미디어에의 보존이나 IEEE에의 출력에서, 기존의 시스템과의 호환성을 유지할 수 있게 된다. 파셜 트랜스포트 스트림의 상세함이 기재되어 있는 규격서의 일례로서, BS 디지털로서는 ARIB STD-B21과 ARIB TR-B15가 있다. 또, 유럽 디지털 방송으로는 EN300 468, 북미 디지털 방송으로는 EIA/CEA-775.2가 존재한다. 이들의 규격으로는, 파셜 트랜스포트 스트림에서 사용하는 프로그램 배열 정보의 기본 구성 및 식별자의 운용 기준, 프로그램 배열 정보의 데이터 구조와 정의, 테이블의 운용 방법이 정해져 있다.
테이블로는, DIT(Discontinuity Information Table)과 SIT(Selection Information Table)가 존재한다. DIT는 파셜 트랜스포트 스트림에서 전송되는 프로그램 배열 정보가 불연속일 수도 있는 변화점을 지시한다. SIT는 파셜 트랜스포트 스트림에서 전송되는 서비스에 관한 정보의 지시를 한다. 예컨대, ARIB에는 이 DIT와 SIT의 송출은 필수적이고, SIT 기술자 등도 상세하게 결정되어 있다. 또한, PSI 데이터는 PAT, PMT로 제한되고, 그 밖의 NIT 등의 정보는 SIT의 기술자로 서 실현된다. SIT는 파셜 트랜스포트 스트림에 관련되는 방송 스트림 모두의 프로그램 배열 정보의 요약을 포함하고 있고, SIT 이외의 프로그램 배열 정보를 전송하지 않는다. 상세한 것은 각 사양서를 참조하면 된다.
파셜 트랜스포트 스트림의 사양을 이용하여, CPU 상의 프로그램에 의해서 지정된 PID 또는, Program No의 서비스를 트랜스포트 스트림으로부터 취득할 경우에는, SIT을 작성해야 하므로 수신부(4001)에서는 Program No와 SIT의 작성하는 기술자 정보 등을 SIT 작성부(4007)로 지정한다(스텝4104). 또한, 본 실시 형태에서 설명하는 SIT에 관해서는, ARIB 등의 운용 규정으로 정해져 있는 SIT에 부가하여, 프로그램 정보나 사용자정보 등 부가 정보의 추가나 데이터의 삭제를 한 경우에도 적용 가능하다. 또, SIT 작성부(4007)로의 지정은 반드시 하지 않으면 안되는 처리가 아니다. 예컨대, 북미 디지털 방송의 운용 규격에서는, SIT의 삽입이 필수가 아니므로, 스텝4104의 SIT 작성부로의 지정을 하지 않는 것도 가능하다.
그리고, 필터링부(4002)에 삭제하는 PID의 지정과 DIT의 작성을 지시한다(스텝4105). 또한, 여기에서도 스텝4103과 마찬가지로 삭제하는 PID의 지정 대신에, 관련 없는 Program No와 삭제 요구를 지시하여도 되고, 관련 있는 PID나 Program No와 선택 요구를 지정하여도 된다. 또한, DIT 작성의 지시는 언제나 하는 것이 아니라 CPU 상의 프로그램으로부터 지정이 있는 경우에만 설정할 수 있게 된다. 왜냐하면, BD 레코더 등에 데이터를 기록하는 경우에는, DIT를 필요로 하지 않는 경우가 있기 때문이다.
다음에, 수신부는 SIT 작성부(4007)로부터 작성한 SIT를 수취하고, 송출 빈 도 등의 조건과 함께 필터링부(4002)로 지정한다(스텝4106). 또한, 스텝4105와 4106의 지정은 어느 쪽을 먼저 행하여도 본 발명에 적용 가능하다. 또, 당연하지만, 스텝4104에서 SIT 작성을 지정하지 않았던 경우에는, 스텝4106도 할 필요가 없다. 또한, SIT 작성부는 단체로 존재하여도 되고, 다른 구성부 내에서 실현되어도 된다. 일례로서, 필터링부 내에서 실현되는 것도 생각할 수 있다. 또한, CPU(1210) 상에서 동작하는 프로그램으로부터의 설정이 있었던 경우, 필터링부로 설정할 수 있게 된다.(스텝4107).
도 43은 SIT 작성부(4007)의 플로우 차트를 도시한다.
SIT 작성부(4007)는 수신부(4001)로부터 Program No와 SIT의 기술자 정보 등을 수취한다(스텝4201). 수신부에서 수취한 정보를 근거로 SIT의 작성을 행한다(스텝4202). SIT의 각 기술자를 작성하기 위해서는, 트랜스포트 스트림 중에서 그 정보를 운반하는 패킷을 취득해야 할 필요가 있다. 그러므로 한번, 메모리에 SIT를 작성하기 위해서 필요한 패킷의 버퍼링을 하면서, 작성할 필요가 있다. 트랜스포트 스트림으로부터 필요한 패킷을 취득하기 위해서는, PSI 기억부에 지정을 하여, 취득할 수 있게 된다. 또, 스트림으로부터 직접 취득하여도 된다. SIT를 작성한 후, 수신부(4001)에 작성한 SIT를 반신한다(스텝4203). 또, 필터링부(4002)로부터 판독 가능한 영역에 SIT를 두고, 직접 필터링부(4002)에 통지할 수 있다. 당연하지만, 직접 필터링부(4002)에 SIT의 데이터를 건네주는 것도 가능하다. 또, SIT에 관해서도, 운용 규정에 의해서 필수적인 경우와 필수적이지 않는 경우가 존재한다. 또, SIT 작성부는 단체로 존재하여도 되고, 다른 구성부의 일부로서 존재 하는 것도 가능하다. 일례로서, 필터링부의 일부로 실현되는 것도 생각할 수 있다.
도 44는 필터링부(4002)의 플로우 차트를 도시한다.
필터링부(4002)는 DIT의 설정이 필요한 경우에는, 필터링을 할 시에, DIT의 삽입을 한다(스텝4302). 또, 수신부(4001)로부터 SIT의 추가 요구가 있는 경우에는, 추가하는 패킷과 송출 빈도 등의 조건을 취득한다(스텝4304). 또한, 수신부(4001) 혹은 SIT 작성부(4007)와 필터링부(4002)가 함께 참조할 수 있는 메모리로부터 SIT를 취득하고, 조건만 수신부(4001)로부터 취득하여도 된다. 그리고, 지정된 조건에 맞춰 적절하게, SIT 추가를 한다(스텝4305). 그리고, 이러한 처리를 하면서, 지정된 PID의 추가나 삭제 필터링을 한다(스텝4307).
본 실시 형태에서 나타낸 구성 요소의 각 기능은 하드웨어로 실현하여도 되고, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
(실시 형태6)
다수의 트랜스포트 스트림을 식별하기 위해서, 헤더 부여를 한다.
실시 형태1에서는, 다중화부(1203)의 내부 구성을 나타내는 블록도로서 도 19를 상정했었지만, 도 45에 도시한 바와 같이, 헤더 부여부(4411)와 다중부(1812)를 구성 요소로 하는 것도 가능하다. 또한, 본 실시 형태에서는, 실시 형태1에서 설명한 기능에 추가하는 기능에 관해서만 설명한다.
도 47은 헤더 부여부(4411)의 플로우 차트를 도시한다.
헤더 부여부(4411)는, 전처리부(1202)에서 전처리를 실시한 다수의 트랜스포 트 스트림을 수신한다(스텝4601). 그리고, 이 다수의 트랜스포트 스트림을 식별하기 위해서, 현재 취득하는 각 패킷에 헤더를 부여하고, 다중부(1812)에 전송한다(스텝4602). MPEG 트랜스포트 스트림에서의 패킷의 예를 도 46에 도시한다. 패킷(4500)은 헤더를 부여하여 작성한 새로운 패킷 전체를 나타낸다. 헤더(4501)는, 헤더 부여부(4411)에서 부여되어 트랜스포트 스트림의 식별에 이용된다. 또한, 여기서는 헤더를 12byte라고 하지만, 몇 byte를 헤더로 하여도 본 실시 형태는 적용 가능하다. 페이로드(4502)는 헤더 부여부(4411) 이전의 패킷 부분이고, MPEG 트랜스포트 스트림의 경우에는, MPEGTS 패킷의 188byte에 상당한다. 또, 이것은 다른 트랜스포트 스트림이어도 되고, MPEG2 프로그램 스트림이어도 된다.
다중부(1812)는, 실시 형태1과 동일한 기능으로 실현할 수 있다.
본 실시 형태에서 나타낸 구성 요소의 각 기능은 하드웨어에서 실현하여도, CPU 상에서 동작하는 소프트웨어로 실현하여도 된다.
(실시 형태7)
지금까지의 실시 형태에서는, 기본적으로 단말 장치(1200) 내에서 다수의 트랜스포트 스트림으로부터 PID나 Program No의 선택을 하는 방침을 고려하여 왔다. 그래서 본 실시 형태에서는, 어댑터(1204)로부터의 요구를 접수하여, 단말 장치(1200) 내에서 검토 혹은 재검토를 하는 방법을 생각한다. 또한, 어댑터(1204)로부터 선택해야 할 PID의 지정 혹은 삭제해야 할 PID의 지정이 수시로 행해지는 경우를 생각한다.
본 실시 형태를 설명하기 위해서, 지금까지 기술한 실시 형태의 수신부를 간 략화하여 정리한 플로우 차트를 도 48과 도 49에 도시한다. 또한, 스텝4702의 수신부의 독자 판단으로 설정 조건을 설정용 리스트에 추가하는 처리는 실시 형태3에서 나타낸 디폴트 설정부를 나타내지만, 필수적인 처리는 아니다. 또 스텝4705에 관해서는, 실시 형태1 및 2에서 나타낸 수신부에서 PID나 Program No의 추가·삭제의 설정을 추가하는 처리를 상정한다. 또한, 이 처리도 필수적인 처리는 아니다.
또, 스텝4801의 버전 업에 관해서는, 실시 형태2에서 기술한 PMT의 Version UP 등의 처리를 명시화한 것이다. 또, 스텝4804의 삭제하는 조건에 대한 검토는, 실시 형태1의 삭제하는 조건을 검토할 때에, 우선도 등을 고려하여 설정하는 기술을 명시화한 것이다. 또, 도 48에서 기술한 설정용 리스트는 지금까지의 실시 형태에서는 수신부가 고려할 때에 암묵적으로 취급하고 있었지만, 본 실시 형태에서는 보다 명확하게 설명을 하기 위해서 명시하였다. 설정용 리스트는 조건의 지정 방법, 조건의 내용, 조건의 설정원 속성, 현재의 필터링부(1502)에서 설정 중인지 아닌지 등에 대한 정보를 관리한다.
설정용 리스트의 일례를 도 50에 도시한다. 도 50에서는, 조건 내용에 PID와 Program No의 양쪽을 설정하고 있지만, 삭제 추가를 검토할 때의 편리성을 고려하여 PSI 기억부(3203) 등을 이용하여 설정 조건으로부터 보간(補間)하는 예를 나타내었지만, 이것은 PID만을 기술하도록 설정하여도 되고, 양쪽의 항목을 준비하여 설정된 쪽 만을 기술하도록 하여도 된다. 또 설정용 리스트에서 열4905의 상태가 삭제인 경우에는 필터링부에 삭제 설정이 행하여진 후에, 설정용 리스트로부터 소 거하도록 하여도 된다. 예컨대, 도 48의 스텝4707에서 필터링부에 설정용 리스트의 변경된 조건을 통지한 후에, 수신부(1501)가 설정용 리스트로부터의 삭제를 하여도 되고, 혹은 필터링부(1502)가 행해도 된다. 구체예로서는, 필터링부에는 변경된 항목만을 통지하고, 정확하게 조건 삭제를 했는지의 여부를 반환값 등으로 수취함으로써, 수신부(1501)가 행하는 방침이나 스텝4707에서 필터링부(1502)로 설정용 리스트 자체를 건네주어 필터링부에서 행하는 방침으로 하여도 된다.
이상, 도 48 및 도 49는 지금까지 기술한 실시 형태의 범위이다.
본 실시 형태에 적용한 처리를 도 51에 도시한다. 도 51에서 도 48과 동일한 번호의 처리는 도 48과 동일한 처리를 하므로 상세한 설명을 생략한다.
여기서는, 스텝5008 및 스텝5009의 처리 및 단말 장치(1200)와 어댑터(1204)간의 비트 레이트가 초과하는 등 스텝4803 및 스텝4804의 처리 능력을 초과했을 때의 조건 삭제에 관해서 이하에 설명한다.
전처리부(1202)의 수신부(1501)는 도 51의 처리를 반복하므로, 어댑터(1204)로부터의 필터링의 조건 설정을 수신한 경우에는, 그 설정 조건을 필터링부(1502)에 설정하는 설정용 리스트에 추가한다. 즉, 도 50의 설정용 리스트의 열4904의 설정원 속성에 어댑터라고 기술하고, 설정 조건을 기술한다. 만약에 행해지지 않는 경우에는, 스텝5008 및 스텝5009의 설정을 하지 않고, 도 48과 동일하게 처리한다.
어댑터(1204)와 단말 장치(1200)간의 통신 이미지를 도 52에 도시한다. 어댑터(1204)와 단말 장치(1200)간의 통신으로는, 도 53에 도시한 바와 같이 어댑터 (1204)에서 단말 장치(1200)로 메시지를 송신하여 단말 장치(1200)에서 어댑터로 메시지에 대한 답신을 하는 경우와, 단말 장치(1200)에서 어댑터(1204)로 메시지를 송신하여 이 메시지에 대한 답신을 어댑터(1204)에서 단말 장치(1200)에 송신하는 경우를 생각할 수 있다.
여기서는, 이들의 메시지 형식과 답변 형식에 관하여 기술한다.
우선, 어댑터(1204)에서 단말 장치(1200)로 메시지를 송신하여 단말 장치(1200)로부터 어댑터로 메시지에 대한 답신을 하는 경우를 생각한다.
도 54는 어댑터(1204)에서 단말 장치에 송신되는, 삭제하면 안되는 리스트 혹은 삭제 가능한 리스트를 도시한다. 이 삭제하면 안되는 리스트 혹은 삭제 가능한 리스트의 일례를 도 54, 도 55, 도 56에 도시한다.
도 54에서는 리스트의 열5301에 리스트 기술하는 ES가 어떤 트랜스포트 스트림에 속하는 ES인지를 특정하는 LTSID를 기술한다. LTSID는 트랜스포트 스트림(5321)또는 트랜스포트 스트림(5322)을 특정하는 지표가 된다. 또한, 트랜스포트 스트림(5321) 중에 서비스(5331)등과 같은 화살표로 도시한 다수의 서비스가 존재하고, 이 서비스로는 ES(5341)로 도시한 바와 같은 영상이나 음성 및 데이터 등을 전송하는 ES가 존재한다. 이 ES의 식별자의 PID를 리스트의 5303으로 지정한다.
다음에 도 55에서는, 도 54의 서비스(5331)의 지정을 리스트에 추가한 예를 도시한다. 여기서는, 도 54의 행5312, 5313, 5314로 도시하는 바와 같이 ES마다 지정하는 것은 아니고, LTSID① 중의 서비스 번호(Program No)2의 ES를 모두 포함하도록 지정하고 있다. 또, 행5415와 같이, 어떤 특정한 ES만을 지정할 수 있도록 설정하는 것도 가능하다. 이 때, 서비스를 어댑터(1204)가 해석할 수 있도록, OOB로부터 PAT나 PMT 혹은 이들의 정보에 상당하는 정보가 흐르는 것도 상정할 수 있다. 혹은 In band에 흐르는 PAT 및 PMT 혹은 이들의 정보에 상당하는 정보를 반드시 어댑터(1204)에 송신하도록 하는 규칙을 설정할 수도 있다. 또한, ES단위의 지정이 아닌, 서비스 단위로 지정할 경우에는, 열5301 및 열5402만을 지정한 리스트이어도 된다.
다음에, 도 56에서는, 도 55의 지정에, 열5504의 필터링의 여부를 설정할 수 있는 리스트를 도시한다. 즉, 도 55나 도 54에서는, 삭제하면 안되는 리스트나 삭제 가능 리스트 중의 어느 하나의 표현밖에 할 수 없었던 것에 대하여, 도 56에서는, 각 PID에 그 조건이 필터링하여도 되는지, 안되는지에 대한 지정을 할 수 있도록 설정할 수 있다. 또, 이 열5504로 나타낸 필터링 여부를 도 54에 추가할 수도 있다.
또한, 도 55, 도 54, 도 56에서는 다수 행의 지정을 하고 있지만, 일행만의 지정밖에 할 수 없는 메시지로 전송하여도 되고, 삭제하면 안되는 리스트 혹은 삭제 가능한 리스트 모두 혹은 일부의 정보를 포함하는 리스트이어도 된다. 또, 이들의 삭제하면 안되는 리스트 혹은 삭제 가능한 리스트의 모두를 송신하여도 된다.
이것에 대하여, 단말 장치(1200)에서 어댑터(1204)로의 답신 메시지는 단지 승인하는 메시지를 송신하는 것으로 상정할 수 있다. 또, 단말 장치(1200)로부터, 삭제하고 싶은 리스트 혹은 어댑터로 송신하는 리스트를 도 54나 도 55의 형식으로 송신하는 것으로 상정할 수 있다. 이 도 54나 도 55의 리스트를 단말 장치(1200) 로부터 어댑터(1204)에 송신할 경우에는, 단말 장치(1200)로부터 어댑터(1204)로의 메시지를 송신하고, 어댑터(1204)로부터 단말 장치(1200)로 답신하는 것과 같은 처리가 된다.
메시지의 발신자와 그 질문 형식과 답변 형식의 관계의 예를 도 57에 도시한다.
지금까지, 도 57의 행5611의 어댑터(1204)로부터 단말 장치(1200)로의 메시지 송신을 고려해 왔다. 이번에는 역으로 행5622의 단말 장치(1200)로부터 어댑터(1204)로의 메시지 송신과 어댑터(1204)로부터 단말 장치(1200)로의 답신에 관해서 고려한다.
단말 장치(1200)로부터 어댑터(1204)로는, 단말 장치 내에서 삭제하고자 하는 후보의 리스트를 전송하는 것이나, 단말 장치로부터 어댑터로 송신하는 리스트를 전송하는 것을 상정할 수 있다. 이들의 송신 형식은 상술한 도 54와 같은 PID 지정이어도 되고, 도 55와 같은 PID와 Program No의 혼합 지정이어도 되며, 단지 Program No만의 지정이어도 된다. 또, 도 56의 형식으로, 필터링하는 것과 하지 않는 것을 지정하는 형식의 리스트이어도 된다.
이것에 대한 답신 형식은 단지 승인했는지의 여부를 반신하는 메시지이어도 된다. 또, 이 승인 여부를 나타내는 형식에, 도 56의 리스트 형식으로 답신하여도 된다. 또, 승인할 수 없는 경우에는, 어댑터(1204)로부터 단말 장치(1200)로 삭제하면 안되는 리스트 혹은 삭제 가능 리스트를 송신하는 것을 상정할 수 있다. 또, 도 56에서 승인 여부를 나타내는 동시에, 도 54 혹은 도 55에서 삭제하면 안되는 리스트 혹은 삭제 가능 리스트를 송신하도록, 다수의 리스트를 송신하여도 된다.
또한, 도 55, 도 54, 도 56에서는 다수 행에 대한 지정을 하고 있지만, 한 행만 지정할 수 밖에 없는 메시지로 전송하여도 되고, 단말 장치 내에서 삭제하고자 하는 후보의 리스트를 전송하는 것이나, 단말 장치로부터 어댑터로 송신하는 리스트의 모두 혹은 일부의 정보를 포함하는 리스트이어도 된다. 또, 단말 장치 내에서 삭제하려고 하는 후보의 리스트와, 단말 장치로부터 어댑터로 송신하는 리스트와 같이 다수의 리스트를 송신하는 형식이어도 된다.
다음에, 도 49의 스텝4803 및 스텝4804 처리를 하는 방법에 관해서 이하에 기술한다.
수신부(1501)는, 스텝4803에서 처리 능력을 초과하는 통지를 다중화부 등으로부터 수신한 경우에, 스텝4804에서 설정용 리스트를 이용하여 삭제하는 조건(PID 혹은 Program No) 검토를 한다. 또한, 스텝4803에서는 처리 능력을 초과하고 있는 여부에 대한 판단을 하지만, 삭제할 수 있는 항목이 있는 한, 최대한 많이 삭제하여도 된다.
스텝4804의 검토 방법은 상술한 실시 형태에 나타낸 처리와 공통한다 (특히, 실시 형태1에 나타낸 우선적으로 추가·삭제하는 처리나, 실시 형태2에 나타낸 서비스 단위에서의 추가·삭제의 처리, 서비스 내의 일부의 추가·삭제의 처리와 공통한다). 여기서는, 어댑터(1204)의 조건 설정을 행한 것으로서 발생하는 새로운 조건만을 명기한다. 또한, 어댑터(1204)를 고려한 경우, 지금까지의 실시 형태와 동일한 수신부(1501)가 설정용 리스트를 참조하여 독자적으로 검토하는 방법과, 어 댑터(1204)와 상담하여 삭제하는 조건의 검토를 행하는 방법을 상정할 수 있다. 이 어댑터와의 상담 방법은 상술한 도 54나 도 55나 도 56을 이용한, 도 57의 표로 도시하는 포맷으로 통신하는 것을 생각할 수 있다.
또한, 스텝4804의 검토 방법은 상술한 실시 형태도 포함하여 이들의 검토 방법의 일부 혹은 전부, 혹은 이들의 조합이어도 된다. 또, 이들의 검토 방법의 일부 혹은 전부, 혹은 이들의 조합을 일회로 처리하는 것이 아니고, 이들의 검토 방법에 우선도를 부여하여, 검토 방법의 우선도에 따라서, 스텝4803의 조건이 해제될 때까지 반복하여도 된다.
예컨대, 조합 방법으로서, 처음에 수신부(1501)가 설정용 리스트를 참조함으로써 검토하고, 그래도 스텝4803의 판단이 Yes가 되지 않는 경우에는, 어댑터(1204)와 상담하여 삭제하는 조건에 대한 검토를 하여도 된다. 또한, 수신부(1501)가 설정용 리스트를 참조하여 독자적으로 검토하는 경우와, 어댑터(1204)와 상담하여 삭제하는 조건을 검토하는 경우 등의 구체예는, 이하의 기술이나 지금까지의 실시 형태에 나타낸 처리의 일부, 혹은 전부, 혹은 몇 개의 방법에 대한 조합이어도 된다.
여기서, 수신부(1501)가 단독으로 삭제하는 조건의 검토 방법에 관해서의 예를 열거한다.
예컨대, 수신부(1501)가 유지하는 설정용 리스트의 설정원 속성의 열4904에서 독자의 조건을 우선적으로 삭제하여도 된다.
또, 수신부(1501)가 유지하는 설정용 리스트의 설정원 속성의 열 4904에서 독자의 조건을 우선적으로 삭제하고, 그래도 도 49의 스텝4803의 판단이 Yes가 되지 않는 경우에는, 설정용 리스트의 설정원 속성의 열 4904에서 어플리케이션을 선택하는 방법으로 하여도 된다. 또한, 이 때, 수신부(1501)는 그 조건을 설정한 어플리케이션 혹은 그 어플리케이션을 조작하는 사용자에게, 스텝4803의 판단이 Yes가 되지 않는 것을 통지하여도 된다. 이 때의 통지 방법으로는, 어플리케이션에 대해서는 Event를 제공하는 방법이나, 사용자에 대해서는 HTML 파일을 CPU 상에서 동작하는 프로그램으로 설정함으로써, 사용자에게 통지하여도 된다.
또, 다중부에 의해서 삭제된 경우에는, 설정용 리스트에서 소거하는 방법의 경우, 수신부(1501)가 유지하는 설정용 리스트 내의 상태에 삭제중이 존재하면, 그 삭제중으로 명기된 조건의 소거에 의해 스텝4803의 판단이 Yes가 될 가능성이 있으므로, 스텝4804에서는 설정하지 않는다는 방침이어도 된다.
또, 설정용 리스트의 설정원 속성의 열4904가 독자 조건이고, 또, 다른 설정원 속성(CPU(1210) 상에서 동작하는 어플리케이션 혹은 어댑터(1204))에 의해서 지정되어 있지 않는 조건(PID 혹은 Program No)을 우선적으로 삭제하여도 된다.
또, 다른 방법에 따라서, 삭제 후보가 된 조건이 다른 설정원 속성에 의해서 지정되어 있지 않는 조건을 우선적으로 삭제하여도 된다.
또, 설정 조건에 지정된 조건으로 운반되는 패킷을 PSI 기억부(3203)에서 모니터링하고, 설정된 패킷이 일정 시간 흐르지 않는 경우에는 그 조건을 삭제하는 방침으로 하여도 된다.
또, 오래된 요구부터 삭제하는 방침으로 하여도 된다.
여기서, 어댑터(1204)와 상담하여 삭제하는 조건의 검토 방법에 관해서의 예를 열거한다.
수신부(1501)가 단독으로 삭제하는 조건의 검토 방법(상기 및 지금까지의 실시 형태)에서, 삭제 후보로서 선택된 조건의 모든 리스트를, 혹은 일부를 어댑터(1204)로 도 54, 도 55, 도 56 등의 포맷으로 송신하고, 어댑터(1204)로부터 수신한 승인 메시지 혹은 삭제하면 안되는 리스트 혹은 삭제 가능한 리스트를 참조하여 삭제하는 조건을 재검토한다.
또한, 이 때 설정용 리스트의 설정원 속성의 열4904가 어댑터(1204)에 대한 것에 관해서만 어댑터(1204)로 송신하는 리스트에 포함하는 방법이어도 된다. 또, 설정용 리스트의 설정원 속성의 열4904가 독자 혹은 어댑터, 혹은 설정용 리스트의 설정원 속성의 열4904에 관계 없이, 어댑터(1204)로 송신하는 리스트에 포함하는 방법이어도 된다.
도 57에 도시한 질문 이외에, 수신부(1501)는 어댑터(1204)에 어댑터(1204)가 설정한 조건의 모두를 삭제하는 요구를 하고, 그 답신이 승인되면, 설정원 속성의 열4904에서 어댑터(1204)의 것을 모두 삭제한다. 승인되지 않는 경우에는, 상기의 도 54나 도 55 및 도 56 포맷을 이용하여, 어댑터(1204)에 질문하여도 된다.
또, 어댑터(1204)로부터의 삭제하면 안되는 리스트 혹은 삭제 가능 리스트의 송신 요구를 단말 장치(1200)로부터 어댑터(1204)로 송신하고, 수신한 리스트를 고려하여 삭제하는 ES나 서비스를 검토하여도 된다.
여기서, 상기 3개의 어댑터(1204)와 상담하여 삭제하는 조건의 검토 방법에 서는, 어댑터(1204)에 의해서 승인될 때까지, 어댑터(1204)와의 통신을 반복하는 것이나 답신이 올 때까지 계속 기다리는 방법이어도 된다. 또 승인 여부에 관계없이, 강행으로 행하는 것이나, 타임아웃까지 기다려 답신이 올 때에는 강행으로 행하는 등 어느 경우로도 상정할 수 있다.
또, 상기의 방법 외에도 어댑터(1204)로부터 단말 장치(1200)로 삭제 후보 리스트 등의 발송 요구를 내는 것도 생각할 수 있다.
또, 어댑터(1204)로는 단지, 단말 장치(1200)와 어댑터(1204)간의 비트 레이트가 초과했다고 하는, 비트 레이트를 감하지 않으면 안되는 원인을 어댑터(1204)로 통지하고, 어댑터(1204)가 삭제하여도 되는 조건을 전송해 올 때까지 기다리는 방법이어도 된다.
또한, 도 51에서는, 어댑터(1204)로부터의 요구(스텝5008)가 없었던 경우에는, 수신부의 4701∼4707의 처리를 반복하는 방법으로 하고 있지만, 어댑터(1204)로부터의 요구를 수신하여, 어댑터(1204)로부터의 요구를 트리거로서 동작하여도 된다. 요컨대, 스텝5008의 판단이 적어도 한 번은 Yes의 상태로 천이하여 스텝5009의 설정을 한 후에, 도 48 혹은 도 51의 처리를 반복하는 설정으로 해도 된다.
또한, 스텝4803의 처리 능력을 초과하지 않았는지에 대한 판단은 지금까지의 실시 형태에서는, 단말 장치(1200)와 어댑터(1204)간의 비트 레이트가 초과하는 경우를 명기하였지만, 이 밖에도 단말 장치(1200) 혹은 어댑터(1204)의 처리 능력을 초과할 경우, 혹은 수신 단말 내에서 유지한 규칙 정보나 어댑터로부터 수신한 추출 조건의 요구를 만족할 수 없는 경우 등도 상정된다.
또한, 여기서는 실시 형태1에서 설명한, 도 13 및 도 16의 전처리부나 다중화부로 설명하지만, 실시 형태2∼6에서 설명한 일부, 혹은 모든 기능을 갖는 전처리부나 다중화부이어도 된다.
또한, 지금까지의 실시 형태에서는, 수신부(1501)만으로 삭제·추가하는 조건을 고려하는 경우, 혹은 어댑터(1204)와 수신부(1501)로 교섭함으로써, 조건 결정을 하는 것을 고려해 왔다. 그러나, 단말 장치(1200) 내에서는 고려하지 않고, 어댑터(1204)로부터 설정된 요구만을 다중하도록 설정하여도 된다. 구체예로서는, 어댑터(1204)로부터의 요구(스텝5008, 5009)와 CPU 상에서 동작하는 어플리케이션으로부터의 요구(스텝4703, 4704)만을 처리하여, 스텝4702나 스텝4705 등의 독자 판단에서의 신규 추가 등은 하지 않고, 스텝4803의 조건이 일치하였을 때에만, 스텝4804의 처리에서, 수신부(1501)에서 고려하는 방침이어도 된다. 또한, 이 때의 수신부(1501)에서 고려할 때에는, 어댑터(1204)와 교섭을 하여도, 하지 않아도 된다.
또한, 본 실시 형태는 다중할 때의 방법에 의존하지 않으므로, 실시 형태1에서 기술한 바와 같이, 패킷의 일부를 트랜스포트 스트림의 식별을 위해 사용하는 방법이어도 되고, 실시 형태6에서 기술한 바와 같이, 헤더를 부여하는 방법이어도 실시 가능하다. 또 다른 다중화 방법이어도 된다.
(실시 형태8)
본 실시 형태에서는, 수신부(1501)로부터 필터링부로 설정할 때의 판단 기준이 되는 규칙 및 다중화부(1203)에서 다중할 때의 판단 기준이 되는 규칙의 설정을 고려한다. 이 때문에, 지금까지의 실시 형태에서 나타낸 도 48 및 도 51 등의 처리를 하기 전 혹은 도중에, 어댑터(1204)와 교섭함으로써, 어댑터(1204) 및 단말 장치(1200) 및 단말 장치(1200)와 어댑터(1204)간의 인터페이스 등을 고려하여, 수신부(1501) 및 다중화부(1203)의 판단 기준으로서 이용하는 규칙 파일을 생성하는 것을 생각할 수 있다. 또한, 이 규칙 파일의 생성은 도 48 및 도 51의 처리 전에만 할 수 있어도 되고, 언제나 동적으로 규칙 파일의 조건 추가 등을 할 수 있어도 된다.
도 58에 어댑터(1204)로부터 처리 능력의 설정을 수신한 경우의 처리를 예시하였다. 어댑터(1204)로부터의 처리 능력으로는, 어댑터(1204)가 취급할 수 있는 트랜스포트 스트림의 최대수나 서비스의 최대수, ES의 최대수 등이 있다. 또, 어댑터(1204)가 POD(3004)와 같이 디스크램블 기능을 갖는 경우에는, 한정 해제를 하는 CA의 수 등을 어댑터(1204)로부터 수신부(1501)로 메시지를 송신하여 행한다. 또한, 이 설정 방법에 관해서는, Open Cable Multi-StreamCableCARD Interface Specification (OC-SP-MC-IF-I01-030905)에 기술되어 있다. 또, 이 밖의 메시지 포맷이어도 되고, 단말 장치와 어댑터 간을 접속한 PIN의 전압 등으로 관리하여도 된다. 이렇게 하여 수신한 어댑터로부터의 설정을 수신부(1501)는 수신부가 유지하는 규칙 파일에 기술하여 저장한다.
또, 단말 장치(1200) 및 어댑터(1204)간의 인터페이스에 관해서는, 어댑터(1204)가 단말 장치(1200)에 삽입되었을 때에 알 수 있게 하기 위해서, 단말 장치(1200) 및 어댑터(1204)간의 인터페이스는, 도 48 및 도 51 등을 개시하기 전의 전 처리로서, 수신부(1501) 혹은 다중화부(1203)의 판단 기준으로 이용하는 규칙 파일로 설정할 수 있다. 또, 일반적으로는 이 물리 인터페이스에는, PCMCIA 규격이 이용되고 있지만, 이 규격이 아니어도 문제는 없다. PCMCIA 규격에 따라서 물리 인터페이스에서 접속되는 어댑터(1204)의 일례로서, Open Cable Multi-StreamCableCARD Interface Specification(OC-SP-MC-IF-I01-030905)과 같이 다수의 트랜스포트 스트림을 취급할 수 있는 어댑터(1204)와의 인터페이스는, 약 200Mbps이고, 하나의 트랜스포트 스트림을 취급할 수 있는 비트 레이트는 트랜스포트 스트림 하나 분이 전송될 수 있으면 되므로, 28Mbps 혹은 38Mbps 이상의 비트 레이트가 있으면 된다.
다음에 수신부는 단말 장치의 처리 능력으로서, 다중화부(1203)의 다중 가능한 최대 비트 레이트를 생각할 수 있다. 이 비트 레이트는 다중화부의 성능으로서 사전에 단말 내에서 값을 유지해 놓을 수 있다.
어댑터(1204), 단말 장치(1200)와 어댑터(1204)간의 인터페이스 및 단말 장치(1200)의 처리 능력으로부터 설정한 규칙 파일에 따라서, 수신부(1501)에서는 스텝4803의 조건을 설정할 수 있다.
스텝4803의 설정은 다중화부(1203)로부터의 처리 능력을 초과했다는(요 재검토) 메시지를 수신한 경우뿐만 아니라, 설정용 리스트와 규칙 파일을 비교함으로써, 어댑터(1204)가 취급할 수 있는 이상의 서비스 및 ES를 지정하는 경우 등을 사전에 검출하여, 다중화부(1203)로부터 요 재검토의 통지를 수신하기 전에 수신부(1501) 내에서, 처리 능력을 초과하지 않았는지에 대한 판단할 수 있다. 또, 수신 부(1501) 내에서 이들의 사전 판단을 하는 경우에는 스텝4803이나 스텝4804의 타이밍뿐만 아니라, 스텝4702나 스텝4705 등 설정용 리스트를 이용하여 판단할 때에 추가 조건의 추가 가능의 여부에 대한 판단에 이용할 수 있다. 또한, 이 규칙 파일을 바탕으로 한 판단에 관해서는, 모두 다중화부(1203)에 맡겨, 수신부(1501)는 처리 능력을 초과했는지의 여부에 관한 정보와, 어떠한 조건의 처리 능력을 초과했는지에 대한 정보를, 다중화부(1203)로부터 수신하여 판단하는 방법으로 하여도 된다.
한편, 다중화부(1203)는 수신부(1501)에 의해서 지정된 조건과 어댑터(1204)로부터의 지정 및 단말 장치(1200)와 어댑터(1204)간의 인터페이스에 의해 생성한 규칙 파일을 고려함으로써, 단말 장치(1200)와 어댑터(1204)간의 비트 레이트를 초과하지 않고, 어댑터로부터의 지정된 트랜스포트 스트림이나 서비스 및 ES의 최대 수를 초과하지 않도록 다중해야 한다. 여기서, 이들의 조건을 만족한 수 없는 경우에는, 수신부(1501)로 통지한다.
이렇게 함으로써, 수신부(1501) 내에서 필터링하는 조건을 재검토하고, 다시 필터링부(1502)로 조건 설정을 함으로써, 다중화부(1203)에서는 단말 장치(1200) 및 어댑터(1204)간의 비트 레이트나 어댑터(1204)의 처리 능력에 따른 트랜스포트 스트림의 다중을 할 수 있게 된다.
또 이 때, 이들의 규칙 파일에 일치하도록, 실시 형태4에서 설명한, ES의 PID의 치환이나 그 PID의 치환에 따라서 PMT의 개서를 행하는 것이나, 하나 혹은 다수의 트랜스포트 스트림 중, 선택된 서비스만을 명기한 PAT나, 그 서비스 중의 선택된 ES만을 지정한 PMT를 생성하는 PAT나 PMT 등을 다시 만들어도 된다. 이것은 다중화부(1203)로부터 수신부(1501)로 통지하여 수신부(1501)에서 고려한 개서 규칙을 필터링부(1502)로 설정하여 다중화부에 개서된 패킷을 수취하도록 설정하는 것으로서 실현한다.
또한, 본 실시 형태에서는, 실시 형태1에서 설명한 도 13 및 도 16의 전처리부나 다중화부를 이용하여 설명하였지만, 실시 형태2∼6에서 설명한 일부 혹은 모든 기능을 갖는 전처리부나 다중화부이어도 된다.
(실시 형태9)
본 실시 형태에서는, 다중화 방법을 결정하기 위해서, 단말 장치(1200)와 어댑터(1204)간의 메시지 포맷을 어떠한 형식으로 하는지에 대하여 결정하는 방법을 검토한다. 다중화 방법에 관해서는, 실시 형태1에서 나타낸 TS패킷의 일부를 트랜스포트 스트림의 식별 ID로 사용하는 것과, 실시 형태6에서 나타낸 트랜스포트 스트림을 식별하는 ID를 헤더로서 TS패킷의 앞에 부여하는 방침을 설명하였다.
이들의 어느 방법을 이용할지에 대한 것은 어댑터(1204)를 단말 장치(1200)에 접속하였을 때, 접속부의 전압의 흐름을 이용하여 통지하는 방법이나, 사전에 결정된 특정한 포맷으로 정해진 메시지로 통지를 하는 방법을 생각할 수 있다.
이하에 상정되는 어댑터의 동작의 예를 나타낸다. 이들은 일부 혹은 조합으로 이용할 수 있도록 한다.
다중화 방법으로서, 실시 형태1에서 나타낸 TS패킷의 일부를, 트랜스포트 스트림을 식별하기 위한 ID로 이용하는 방법을 이용하는 어댑터인 것을 통지한다.
다중화 방법으로서, 실시 형태6에서 나타낸 TS패킷에 새로운 헤더를 추가함으로써, 트랜스포트 스트림을 식별하는 방법을 이용하는 어댑터를 통지한다.
상기한 바와 같이, 다중화 방법을 나타내는 정보를 수신하는 것으로서, 수신부(1501)는 다중화부의 규칙 파일에 그 다중화 방법을 설정한다.
또, 여기서는 수신부(1501)가 다중화부에 다중화 방법을 통지한다고 하였지만, 다중화부는 수신부(1501)를 통하지 않고 독자로 설정을 하여도 된다.
또, 본 실시 형태에서는, 실시 형태1에서 설명한 도 13 및 도 16의 전처리부나 다중화부를 이용하여 설명하였지만, 실시 형태2∼6에서 설명한 일부 혹은 모든 기능을 갖는 전처리부나 다중화부이어도 된다.