JP4401446B2 - Digital camera and control method thereof - Google Patents
Digital camera and control method thereof Download PDFInfo
- Publication number
- JP4401446B2 JP4401446B2 JP08843097A JP8843097A JP4401446B2 JP 4401446 B2 JP4401446 B2 JP 4401446B2 JP 08843097 A JP08843097 A JP 08843097A JP 8843097 A JP8843097 A JP 8843097A JP 4401446 B2 JP4401446 B2 JP 4401446B2
- Authority
- JP
- Japan
- Prior art keywords
- printer
- data
- instruction
- node
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 118
- 230000005540 biological transmission Effects 0.000 claims description 176
- 230000008569 process Effects 0.000 claims description 71
- 238000012545 processing Methods 0.000 claims description 65
- 238000007639 printing Methods 0.000 claims description 44
- 230000004044 response Effects 0.000 claims description 6
- 238000003384 imaging method Methods 0.000 claims description 5
- 229960001716 benzalkonium Drugs 0.000 claims 1
- CYDRXTMLKJDRQH-UHFFFAOYSA-N benzododecinium Chemical compound CCCCCCCCCCCC[N+](C)(C)CC1=CC=CC=C1 CYDRXTMLKJDRQH-UHFFFAOYSA-N 0.000 claims 1
- 238000010017 direct printing Methods 0.000 description 43
- 238000010586 diagram Methods 0.000 description 30
- 230000008859 change Effects 0.000 description 22
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 9
- 230000002123 temporal effect Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 230000007257 malfunction Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
- Television Signal Processing For Recording (AREA)
- Facsimiles In General (AREA)
- Bus Control (AREA)
- Facsimile Transmission Control (AREA)
- Communication Control (AREA)
Description
【0001】
本発明は、撮影した画像をプリントするために、直接プリンタと通信可能なデジタルカメラ及びその制御方法に関するものである。
【0002】
【従来の技術】
パーソナルコンピュータ(PC:パソコン)の周辺機器の中で、最も利用頻度が高いのはハードディスクやプリンタであり、これらの周辺装置は、小型コンピュータ用の汎用型インターフェースであり、代表的なデジタルインターフェース(以下、デジタルI/F)であるSCSI等によりPC本体に接続され、このインターフェースを介してデータのやり取りが行われている。
【0003】
また、デジタルカメラやデジタル・ビデオカメラもPCへのデータ入力手段として機能する周辺装置の1つであり、近年、これらデジタルカメラやビデオカメラで撮影した静止画や動画などの映像信号をPCへ取り込み、ハードディスクに記憶したり、またはPCで編集した後、カラープリンタでプリントすることなどが行なわれている。このPCに取り込んだ映像信号(画像データ)をPCからプリンタやハードディスクへ出力する際には、上記のSCSI等を経由してデータがやり取りされている。そのため、この画像データ等のようにデータ量の多い情報を伝送するためにも、このデジタルI/Fにはデータ伝送レートの高い、かつ汎用性のあるものが要求とされる。
【0004】
図3は、PCにおける一般的なインターフェースの一例を示すブロック図で、ここではデジタルI/Fを介してPCにデジタルカメラが、またSCSIを介してプリンタが接続されている。
【0005】
図3において、31はデジタルカメラ、32はパソコン(PC)、33はプリンタを示している。34はデジタルカメラ31の記憶部であるメモリ、35は画像データの復号化回路、36は画像処理部、37はD/Aコンバータ、38は表示部であるEVF、39はデジタルカメラのデジタルI/O部である。
【0006】
またPC32において、40はPC32とデジタルカメラ31とのインターフェースを行うデジタルI/O部、41はキーボードやマウスなどの操作部、42は画像データの復号化回路、43はディスプレイ、44はハードディスク、45はRAM等のメモリ、46は演算処理部のMPU、47はPCIバス、48はデジタルI/FのSCSIインタフェース(ボード)で、このSCSII/F48を介してプリンタ33が接続されている。
【0007】
またプリンタ33において、49はPC32とSCSIケーブルで繋がったプリンタ33のSCSIインターフェース(I/F)部、50はメモリ、51はプリントヘッド、52はプリンタ制御部であるプリンタコントローラ、53はドライバである。
【0008】
以上の構成において、デジタルカメラ31で撮像した映像信号(画像データ)をPC32に取り込み、その画像データを編集してPC32からプリンタ33に出力される。デジタルカメラ31のメモリ34に記憶されている画像データがメモリ34から読み出されると、この読み出された画像データは復号化回路35で復号化され、画像処理回路36でEVF38に表示するための画像処理がなされ、D/Aコンバータ37を経て、EVF38において表示される。また、このメモリ34からの画像データは、デジタルI/O部39からケーブルを介してPC32のデジタルI/O部40に入力される。
【0009】
PC32では、デジタルI/O部40から入力した画像データを、相互伝送のバスであるPCIバス47を介してハードディスク44に記憶したり、或は復号化回路42で復号化した後、メモリ45に記憶してディスプレイ43に表示する。また、この画像データをプリントする際は、PC32のSCSIインターフェースボード48を介してSCSIケーブルにのせてプリンタ33に伝送する。プリンタ33は、SCSIインターフェース49で、この送られてくる画像データを受信し、メモリ50にプリント画像データとして格納する。その後、プリンタコントローラ52の制御の下に、このメモリ50から読み出されたプリント画像データがドライバ53に出力され、プリンタヘッド51により、そのプリント画像データに基づく画像がプリントされる。
【0010】
このように、従来はホストであるPC32にそれぞれの周辺機器が接続され、PC32を介して、周辺機器間でのデータのやり取りが行なわれている。
【0011】
【発明が解決しようとする課題】
上記従来例で挙げたSCSIには、データの伝送レートの低いものや、パラレル通信のためケーブルが太いもの、また接続される周辺機器の種類や数、接続方式などにも制限があるため、多くの面での不便利性も指摘されている。
また、一般的なPCの多くは、その背面にSCSIやその他のケーブルを接続するためのコネクタを設けているものが多く、またコネクタの形状も大きく、抜き差しに煩わしさがある。従って、デジタルカメラやビデオカメラ等のように、移動したり携帯するものは、その都度、PCの背面コネクタに接続したり、着脱しなければなければならず、その手間が非常に煩わしい。
【0012】
また、通常PCには多くの周辺機器が接続されており、今後は更に、これら周辺装置の種類も増えることが考えられる。さらに、I/Fの改良などによって、PCの周辺装置に限らず多くのデジタル機器をネットワーク接続した通信が可能になると非常に便利になる反面、機器の種類によっては非常にデータ量の多い通信も頻繁に行われるようになる可能性がある。このような場合は、そのネットワークをより混雑させてしまい、ネットワーク内での他の機器間における通信に影響をもたらすことも考えられる。例えばユーザが、連続して画像のプリントを行いたい場合や、また迅速にプリントを行いたい場合などには、そのPCとプリンタ間でのネットワークを介したデータ通信に、ユーザが意識していない他の機器間同士の通信が影響を及ぼし、画像のプリント処理が正常に実行されなかったり、プリント出力までの時間が遅れたりすることも考えられる。
【0013】
本発明は上記従来例に鑑みてなされたもので、プリンタとの間で直接データのやり取りを行うことができるデジタルカメラ及びその制御方法を提供することを目的とする。
【0014】
また本発明の目的は、プリンタがプリント中、デジタルカメラにおける操作指示の内容に応じて、指示に基づく処理を実行せずに指示の入力を禁止することにより、プリンタがプリント中における不具合の発生を防止したデジタルカメラ及びその制御方法を提供することにある。
【0015】
また本発明の目的は、デジタルカメラからプリンタに画像データを伝送中、そのデジタルカメラにおける操作指示に基づく処理実行するか否かを決定できることにより、画像データの転送中であっても必要な指示に基づく処理を実行でき、また不要な指示に基づく処理を実行させないことにより、データ伝送中における不具合の発生を防止したデジタルカメラ及びその制御方法を提供することにある。
【0016】
【課題を解決するための手段】
上記目的を達成するために本発明のデジタルカメラは以下のような構成を備える。即ち、
撮影した画像をプリントするためにプリンタと通信し、プリンタとの接続中にプリンタに送信する画像を選択可能なデジタルカメラであって、
撮像手段と、
前記撮像手段で撮像した画像データをメモリに記録する記録手段と、
画像データが記憶されているメモリからプリントする画像データを読み出す再生手段と、
前記再生手段により読み出された画像データを前記プリンタに送信する送信手段と、
前記プリンタから制御データを受信する受信手段と、
前記受信手段で受信した制御データに応じて前記プリンタがプリント動作中であるかを判断する判断手段と、
使用者による指示を入力するための操作手段と、
前記判断手段によりプリント動作中であると判断された場合は、前記操作手段による指示の内容に応じて、前記指示に基づく処理を実行せずに指示の入力を禁止する制御手段とを有し、
前記制御手段は、前記受信手段によりプリント終了を通知するための制御データを受信したことに応じて、前記指示の入力の禁止を解除することを特徴とする。
【0017】
また上記目的を達成するために本発明のデジタルカメラの制御方法は以下のような工程を備える。即ち、
撮影した画像をプリントするためにプリンタと通信し、プリンタとの接続中に前記プリンタに送信する画像を選択可能なデジタルカメラの制御方法であって、
撮像された画像データが記憶されているメモリからプリントする画像データを読み出す再生工程と、
前記再生工程で読み出された画像データを前記プリンタに送信する送信工程と、
前記プリンタから制御データを受信する受信工程と、
前記受信工程で受信した制御データに応じて前記プリンタがプリント動作中であるか判断する判断工程と、
使用者による操作に応じて、指示を入力する指示入力工程と、
前記判断工程でプリント動作中であると判断された場合は、前記指示入力工程での指示の内容に応じて、前記指示に基づく処理を実行せずに前記指示の入力を無効にする第1の制御工程と、
前記プリンタからプリント終了を通知するための制御データを受信したときに、前記指示の入力の無効を解除する第2の制御工程と、
を有することを特徴とする。
【0019】
【発明の実施の形態】
以下、添付図面を参照して本発明の好適な実施の形態を詳細に説明する。
【0020】
<実施の形態1>
図2は、本実施の形態のネットワーク構成の一例を示す図である。なお、本実施の形態では、各機器を接続するデジタルI/FをIEEE1394シリアルバスを用いたものとする。そこで、まずIEEE1394シリアルバスについて説明する。
【0021】
<IEEE1394の技術の概要>
家庭用デジタルVTRやDVDの登場に伴なって、ビデオデータやオーディオデータなどの、リアルタイムに要求され、かつ情報量の多いデータ伝送のサポートが必要になってきている。こういったビデオデータやオーディオデータをリアルタイムで伝送し、パソコン(PC)に取り込んだり、またはその他のデジタル機器に伝送するには高速データ伝送が可能なインタフェースが必要となる。そういった観点から開発されたインタフェースがIEEE1394−1995 (High Performance Serial Bus)(以下、1394シリアルバス)である。
【0022】
図7は、この1394シリアルバスを用いて構成されるネットワーク・システムの一例を示す図である。
【0023】
このシステムは機器A〜Hを備えており、機器A−B間、機器A−C間、機器B−D間、機器D−E間、機器C−F間、機器C−G間、及び機器C−H間は、それぞれ1394シリアルバスのツイスト・ペア・ケーブルで接続されている。これら機器A〜Hは、例えばPC,デジタルVTR,DVD、デジタルカメラ、ハードディスク、ディスプレイモニタ等である。これら各機器間の接続方式は、ディジーチェーン方式とノード分岐方式とを混在可能としたものであり、自由度の高い接続が可能である。
【0024】
また、各機器は各自固有のIDを有し、それぞれが互いのIDを認識し合うことにより、1394シリアルバスで接続された範囲において、1つのネットワークを構成している。 このように、各デジタル機器間をそれぞれ1本の1394シリアルバスケーブルで順次接続するだけで、それぞれの機器が中継の役割を行い、全体として1つのネットワークを構成することができる。また、1394シリアルバスの特徴でもあるプラグ&プレイ(Plug & Play)機能により、1394シリアルバスケーブルが機器に接続された時点で、自動的にその機器の認識や接続状況などを把握することができる。
【0025】
また、図7に示したようなネットワーク・システムにおいて、ネットワークからある機器が外されたり、または新たに機器が追加されたときなどは、自動的にバスリセットを行い、それまでのネットワーク構成をリセットしてから、新たなネットワークの再構築を行なう。この機能によって、その時々のネットワークの構成を常時設定、認識することができる。
【0026】
また、この1394シリアルバスにおけるデータ伝送速度は、100/200/400Mbps(メガビット/秒)であり、上位の伝送速度を持つ機器が下位の伝送速度をサポートし、互換をとるようになっている。データ伝送モードとしては、コントロール信号などの非同期データ(Asynchronousデータ:以下Asyncデータ)を伝送する非同期(Asynchronous)伝送モード、リアルタイムなビデオデータやオーディオデータ等の同期データ(Isochronousデータ:以下Isoデータ)を伝送するアイソクロナス(Isochronous)伝送モードがある。このAsyncデータとIsoデータは、各サイクル(通常1サイクル125μs)において、そのサイクル開始を示すサイクル・スタート・パケット(CSP)の伝送に続いて、Isoデータの伝送を優先しながら混在して伝送される。
【0027】
図8は、1394シリアルバスの構成要素を示す図である。
【0028】
1394シリアルバスは全体としてレイヤ(階層)構造で構成されている。図8に示したように、最もハードウェアに関連しているのが1394シリアルバスのケーブル813であり、そのケーブル813のコネクタが接続されるコネクタポート810、その上にハードウェアとして、フィジカル・レイヤ811とリンク・レイヤ812とがある。
【0029】
ハードウェア部800は、実質的なインターフェース・チップの部分であり、そのうちフィジカル・レイヤ811は符号化やコネクタ関連の制御等を行い、リンク・レイヤ812はパケット伝送やサイクルタイムの制御等を行なう。
【0030】
ファームウェア部801のトランザクション・レイヤ814は、伝送(トランザクション)すべきデータの管理を行ない、読出し(Read)や書込み(Write)といった命令を出力する。シリアルバスマネージメント815は、接続されている各機器の接続状況やIDの管理を行ない、ネットワークの構成を管理する部分である。図8におけるハードウェア部800とファームウェア部801が、実質上の1394シリアルバスの構成である。
【0031】
また、ソフトウェア部802のアプリケーション・レイヤ816は、使用するソフトウェアによって異なっており、インタフェース上にどのようにデータをのせるかを規定する部分である。このアプリケーション・レイヤ816は、例えばAVプロトコルなどのプロトコルによって規定されている。以上が1394シリアルバスの主な構成である。
【0032】
図9は、この1394シリアルバスにおけるアドレス空間を示す図である。
【0033】
1394シリアルバスに接続された各機器(ノード)には、必ず各ノードに固有の64ビットアドレスを持たせておく。そしてこのアドレスを、各機器のROMに格納しておくことで、自分や相手のノードアドレスを常時認識でき、相手を指定した通信も行なえる。1394シリアルバスのアドレッシングは、IEEE1212規格に準じた方式であり、アドレス設定は、64ビットアドレスの内、最初の10ビットがバスの番号の指定用に、次の6ビットがノードID番号の指定用に使われる。そして残りの48ビットが機器に与えられたアドレス幅になり、それぞれ固有のアドレス空間として使用できる。なお、この48ビットの内の最後の28ビットは、固有データの領域として、各機器の識別や使用条件を指定するための情報などを格納するのに使用される。以上が1394シリアルバスの技術の概要である。
【0034】
次に、1394シリアルバスの特徴といえる技術の部分を、より詳細に説明する。
【0035】
<1394シリアルバスの電気的仕様>
図10は、1394シリアルバス・ケーブルの構造を示す断面図である。
【0036】
1394シリアルバス・ケーブルでは、接続ケーブル内に2組のツイストペア信号線の他に2本の電源ラインを設けている。これによって、電源を持たない機器や、故障により電源電圧が低下した機器等にも、このケーブルを介して電力を供給することができる。この電源線を流れる電源電圧は8〜40V、電流(直流)は最大1.5A(アンペア)と規定されている。
【0037】
<DS−Link符号化>
図11は、1394シリアルバスで採用されている、データ伝送フォーマットのDS−Link符号化方式を説明するための図である。
【0038】
1394シリアルバスでは、DS−Link(Data/Strobe Link)符号化方式が採用されている。このDS−Link符号化方式は、シリアルデータの高速通信に適しており、その構成は2本の信号線を必要とする。撚り対線のうち1本に主となるデータ(Data)を送り、他方の撚り対線にはストローブ(Strobe)信号を送る構成になっている。そして受信側では、この通信されるデータとストローブ信号との排他的論理和をとることによってクロック(Clock)を再現できる。
【0039】
このDS−Link符号化方式を用いるメリットとして、他のシリアルデータ伝送方式に比べて伝送効率が高いこと、PLL回路が不要となるのでコントローラLSIの回路規模を小さくできること、更には、伝送すべきデータが無いときにアイドル状態であることを示す情報を送る必要が無いので、各機器のトランシーバ回路をスリープ状態にすることができ、これにより消費電力の低減が図れる、などが挙げられる。
【0040】
<バスリセットのシーケンス>
1394シリアルバスでは、接続されている各機器(ノード)にはノードIDが与えられ、ネットワーク構成として認識されている。そして、このネットワーク構成に変化があったとき、例えばノードの挿抜(ケーブルの着脱)や、各機器の電源のオン/オフなどによるノード数の増減などによって変化が生じて、新たなネットワーク構成を認識する必要があるときは、その変化を検知した各ノードはバス上にバスリセット信号を送信して、新たなネットワーク構成を認識するモードに入る。このときのネットワーク構成の変化の検知方法は、1394ポート基板上でのバイアス電圧の変化を検知することによって行われる。
【0041】
あるノードからバスリセット信号がネットワークに伝達されて、各ノードのフィジカルレイヤ811が、このバスリセット信号を受ける。これと同時にリンクレイヤ812にバスリセットの発生を伝達し、かつ他のノードにバスリセット信号を伝達する。こうして最終的に全てのノードがバスリセット信号を検知した後バスリセットが起動される。
【0042】
このバスリセットは、先に述べたようなケーブルの抜挿や、ネットワーク異常等をハードウェアにより検出することにより起動される場合と、ホストからプロトコルによる制御などによってフィジカルレイヤ811に直接命令を出すことによっても起動される。また、このバスリセットが起動されると、ネットワークでのデータ伝送は一時中断され、この間のデータ伝送が待たされる。そして、このバスリセットの終了後、新しいネットワーク構成の下でのデータ伝送が再開される。以上がバスリセットのシーケンスである。
【0043】
<ノードID決定のシーケンス>
前述したバスリセットの後、各ノードは新しいネットワーク構成を構築するために、各ノードにIDを与える動作に入る。このときの、バスリセットからノードIDの決定までの一般的なシーケンスを図12〜図14のフローチャートを参照して説明する。
【0044】
図14のフローチャートは、バスリセットの発生からノードIDが決定し、データ伝送が行えるようになるまでの一連のバスの作業を示している。
【0045】
まずステップS101では、ネットワークにおいてバスリセットが発生したかどうかを常時監視しており、ここで、あるノードの電源ON/OFFなどによりバスリセットが発生するとステップS102に進む。ステップS102では、ネットワークがリセットされた状態から、新たなネットワークの接続状況を知るために、互いに直接接続されている各ノード間において親子関係の宣言がなされる。次にステップS103に進み、全てのノード間で親子関係が決定するまでステップS102の親子関係の宣言を行い、またルートも決定されない。そしてステップS103で全てのノード間で親子関係が決定するとステップS104に進み1つのルートが決定する。
【0046】
こうしてステップS104で1つのルートが決定されるとステップS105に進み、各ノードにIDを与えるノードIDの設定作業を行う。こうして所定のノードの順序で各ノードへのID設定が行われ、全てのノードにIDが与えられるとステップS106からステップS107に進み、新しいネットワーク構成が全てのノードにおいて認識されたので、ノード間のデータ伝送が行える状態となりデータ伝送が開始される。このステップS107の状態になると、再びバスリセットが発生するかどうかを監視するモード(S101)に入り、バスリセットが発生したらステップS101からステップS106までの設定作業が繰り返し行われる。
【0047】
以上が図12のフローチャートの説明であるが、この図12のフローチャートのバスリセットからルート決定(S104)までの部分と、ルート決定後からID設定終了までの手順を、図13及び図14を参照してより詳しく説明する。
【0048】
図13はバスリセットからルート決定までの手順を示すフローチャートである。
【0049】
ステップS201でバスリセットが発生するとステップS202に進み、ネットワーク構成は、一旦リセットされる。なお、ステップS201では、バスリセットが発生するのを常に監視している。ステップS202では、リセットされたネットワークの接続状況を再認識する作業の第一歩として、各機器にリーフ(ノード)であることを示すフラグを立てておく。次にステップS203に進み、各機器が、自分の持つポートの内のいくつが他ノードと接続されているのかを調べる。こうして他の機器と接続されているポート数を確認するとステップS204に進み、このポートの数に応じて、これから親子関係の宣言を始めていくために未定義(親子関係が決定されてない)ポートの数を調べる。バスリセットの直後はポート数=未定義ポート数であるが、親子関係が決定されていくに従って、ステップS204で検知される未定義ポートの数が減少する。
【0050】
まず、バスリセットの直後において、はじめに親子関係の宣言を行えるのはリーフに限られている。リーフであるかどうかはステップS203のポート数を確認することで知ることができる。リーフは、ステップS205において、自機に接続されているノードに対して、「自分は子、相手は親」と宣言して動作を終了する。
【0051】
ステップS203でポート数が複数確認されてブランチと認識したノードでは、バスリセットの直後はステップS204で未定義ポート数>1であるためステップS206へ進み、まずブランチというフラグを立て、次にステップS207でリーフからの親子関係宣言で「親」の宣言を受け付けるために待つ。リーフが親子関係の宣言を行うことにより、ステップS207でその宣言を受けたブランチは、再度ステップS204に戻って未定義ポート数を確認し、その未定義ポート数が“1”になっていればステップS205に進み、残っているポートに接続されているノードに対して「自分が子」である宣言をすることが可能になる。なお、ステップS206,S207の実行後、2度目以降でもステップS204で未定義ポート数が2以上あるブランチでは、再度ステップS206,ステップS207に進み、リーフ又は他のブランチからの「親」の宣言を受け付けるために待つ。
【0052】
こうして最終的にステップS204で、いずれか1つのブランチ、又は例外的にリーフ(「子」宣言を行えるのにすばやく動作しなかったため)が未定義ポートの数が“0”になると、これによりネットワーク全体の親子関係の宣言が終了したことになる。こうして未定義ポートの数が“0”(すべて「親」のポートとして決定)になった唯一のノードは、ステップS208でルートのフラグが立てられ、ステップS209でルートとして認識される。このようにして、図13に示したバスリセットからネットワークの全てのノード間における親子関係の宣言が終了したことになる。
【0053】
つぎに、図14のフローチャートを参照して、ルート決定後からID設定終了までの手順を詳しく説明する。
【0054】
まず、前述したシーケンスで、リーフ、ブランチ、ルートという各ノードのフラグの情報が設定されているので、これを基にして、ステップS301で、そのフラグ(FL)の状態を調べ、そのフラグに応じてそれぞれ分類する。各ノードにIDを与える作業として、最初にIDの設定を行うことができるのはリーフからである。ここでは、(リーフ)→(ブランチ)→(ルート)の順で、若い番号(ノード番号=0〜)からIDが設定されていく。ステップS302では、ネットワーク内に存在するリーフの数をN(Nは自然数)を設定する。この後ステップS303に進み、各リーフがルートに対してIDを与えるように要求する。この要求が複数ある場合には、そのルートはステップS304としてアービトレーション(1つに調停する作業)を行う。この後ステップS305に進み、その調停により勝った方の1つのノードにID番号を与え、負けたノードには失敗の結果通知を行う。この結果通知により、ステップS306でIDの取得が失敗したリーフはステップS303に戻り、再度ID要求を出し、前述と同様の作業を繰り返す。
【0055】
こうしてIDが取得できたリーフではステップS306からステップS307に進み、そのノードのID情報をブロードキャストで、そのネットワークの全ノードに伝送する。こうして1つのノードIDのブロードキャストが終了するとステップS308に進み、リーフ数を計数しているカウント値(N)が1つ減らされる。そしてステップS309で、カウント値(N)が1以上である時はステップS303に進み、再度、ID要求の作業から繰り返し行う。こうして最終的に全てのリーフがID情報をブロードキャストするとステップS309においてN=0となり、次にステップS310以降のブランチのID設定に移る。
【0056】
このブランチのID設定も、前述のリーフのID設定時と同様に行われる。
【0057】
まずステップS310で、ネットワークに存在するブランチの数M(Mは自然数)を設定する。この後、ステップS311で、各ブランチがルートに対して、IDを与えるように要求する。これに対してルートはステップS312でアービトレーションを行い、勝ったブランチから順にリーフに与え終った次の若い番号から与えていく。ステップS313では、ルートはその要求を出したブランチにID情報又は失敗結果を通知し(S313)、ステップS314で、そのID取得が失敗に終わったブランチはステップS311で再度ID要求を出力し、前述と同様の作業を繰り返す。
【0058】
こうしてIDを取得できたブランチからステップS315で、そのノードのID情報をブロードキャストで全ノードに伝送する。1つのノードID情報のブロードキャストが終わるとステップS316に進み、ブランチの数を計数しているカウンタ(M)が1つ減らされる。ステップS317で、この残りのブランチの数が1以上である時(M>1)はステップS311に進み、ID要求の作業からを繰り返し、これらの処理が最終的に全てのブランチがID情報をブロードキャストするまで行われる。こうして全てのブランチがノードIDを取得するとステップS317でM=0となり、ブランチのID取得モードを終了する。これにより、最終的にID情報を取得していないノードはルートのみとなり、ステップS318で、IDとして与えていない番号の内で、最も若い番号を自分のID番号として設定する。そしてステップS319に進み、そのルートのID情報をブロードキャストする。以上説明したように、各ノード間での親子関係が決定した後、全てのノードのIDが設定されるまでの手順が終了する。
【0059】
次に、図15を参照して、実際のネットワークにおける動作を説明する。
【0060】
図15において、(ルート)ノードBの下位にはノードAとノードCが直接接続されており、更にノードCの下位にはノードDが直接接続されており、更にノードDの下位にノードEとノードFが直接接続された階層構造になっている。この階層構造やルートノード、ノードIDを決定する手順を以下で説明する。
【0061】
バスリセットがされた後、まず各ノードの接続状況を認識するために、各ノード同士が直接接続されているポート間において、親子関係の宣言がなされる。この親子とは、「親」が階層構造で上位となり、「子」が下位となると言うことができる。
【0062】
図15の例では、バスリセットの後、最初に親子関係の宣言を行なったのはノードAである。基本的に、そのノードの1つのポートにだけ他のノードが接続されているノード(リーフと呼ぶ)から親子関係の宣言を行なうことができる。これは、そのノードが自機には1つのポートでのみ接続されていることを知ることができるため、まず自機がネットワークの端であることを認識し、その中で早く動作を行なったノードから親子関係が決定されていくようにするためである。こうして親子関係の宣言を行なった側(A−B間ではノードA)のポートが「子」として設定され、相手側(ノードB)のポートが「親」として設定される。こうして、ノードA−B間では「子」−「親」、ノードE−D間で「子」−「親」、ノードF−D間で「子」−「親」と決定される。
【0063】
更に1階層上がって、今度は複数個接続ポートを持つノード(ブランチと呼ぶ、ここではノードB,C,D)のうち、他ノードからの親子関係の宣言を受けたものから順次、更に上位(「親」として)に親子関係の宣言を行なっていく。図15では、まずノードDにおいてD−E間、D−F間で親子関係が決定した後、ノードCに対して親子関係の宣言を行っている。その結果、ノードD−C間で「子」−「親」として決定されている。ここでノードDからの親子関係の宣言を受けたノードCは、もう1つのポートに接続されているノードBに対して親子関係の宣言を行なう。これによってノードC−B間で「子」−「親」というように決定される。このようにして、図15に示すような階層構造が構成され、最終的に接続されている全てのポートにおいて、親となったノードBがルートノードとして決定される。尚、このようなルートは、1つのネットワーク構成中に一つしか存在しないものである。
【0064】
また図15において、ノードBがルートノードと決定されたが、これはノードAから親子関係宣言を受けたノードBが、他のノードに対して親子関係宣言を早いタイミングで行なっていれば、このルートにおけるルートノードはノードB以外の他のノードに移っていたこともあり得る。即ち、ノード間で伝達される信号のタイミングによっては、どのノードもルートノードとなる可能性があり、また同じネットワーク構成でも、ルートノードは一定とは限らないことになる。
【0065】
このようにしてルートノードが決定されると、次は各ノードIDを決定するモードに入る。ここでは全てのノードが、決定した自分のノードIDを他のすべてのノードに通知する(ブロードキャスト機能)ものとする。
【0066】
各ノードのIDは、自機のノード番号、接続されている位置の情報、有しているポート数、接続されているポートの数、各ポートの親子関係の情報等を含んでいる。ノードIDの割り振りの手順としては、まず1つのポートにのみ接続があるノード(リーフ)から起動することができ、この中から順にノードID=0,1,2,…というように割り当てられる。こうしてノードIDを獲得したノードは、ノードIDを含む情報をブロードキャストで各ノードに送信する。これによって、各ノードはそのIDが既に『割り当て済み』であることが認識される。
【0067】
全てのリーフがノードIDを取得し終ると、次にブランチにおけるノードID設定処理に移り、リーフに割当てられて番号に続くノードIDが各ノードに割り当てられる。ここではリーフの場合と同様に、ノードIDが割り当てられたブランチから順次、そのノードIDをブロードキャストし、最後にルートノードが、自機のノードIDをブロードキャストする。即ち、常に1つのルートは、そのルートに含まれる最大ノード数に相当するノードIDを所有することになる。以上のようにして、階層構造のノード全体のノードIDの割り当てが終わり、ネットワーク構成が再構築され、バスの初期化作業が完了する。
【0068】
<アービトレーション>
1394シリアルバスでは、データ伝送に先立って必ずバス使用権のアービトレーション(調停)を行なう。この1394シリアルバスは、個別に接続された各機器が、伝送された信号をそれぞれ中継することによって、ネットワークの全ての機器にその伝送された信号を伝えるように構成された論理的なバス型ネットワークである。このため、パケットの衝突を防ぐ意味でアービトレーションが必要となる。これによってある時間には、たった1つのノードのみが伝送を行なうことができる。
【0069】
このアービトレーションを説明するための図として図16(a)にバス使用権の獲得を要求する例を示し、図16(b)にバス使用が許可される例を示す。
【0070】
アービトレーションが開始されると、1つもしくは複数のノードが親ノード(図ではノードB)に向かってそれぞれバス使用権の獲得要求を発する。図16(a)のノードCとノードFが、このバス使用権の獲得要求を発しているノードである。この要求を受けた親ノード(図16ではノードA)は、更に親ノード(ノードB)に向かって、バス使用権の獲得要求を発する(中継する)。この使用権の獲得要求は最終的に調停を行なうルートノードに届けられる。
【0071】
このバス使用権の獲得要求を受けたルートノード(ノードB)は、どのノードにバスを使用させるかを決める。この調停作業はルートノードのみが行なえるものであり、調停によって勝ったノードにバスの使用許可を与える。図16(b)の例では、ノードCに使用許可が与えられ、ノードFのバス使用が拒否されている。このアービトレーションに負けたノード(ノードF)に対しては、DP(data prefix)パケットを送り、そのバス使用要求が拒否されたことを知らせる。こうしてバスの使用が拒否されたノード(ノードF)のバス使用要求は、次回のアービトレーションまで待たされる。以上のようにして、アービトレーションに勝ってバスの使用権を得たノードは、以降、データの伝送を開始できる。
【0072】
図17は、アービトレーション処理の流れを示すフローチャートである。
【0073】
ノードがデータ伝送を開始できるためには、バスがアイドル状態であることが必要である。先に行われていたデータ伝送が終了して、現在バスが空き状態であることを認識するために、各伝送モードで個別に設定されている所定のアイドル時間ギャップ長(例えばサブアクション・ギャップ)の経過を判別することによって、各ノードは自機よりのデータ伝送が開始できると判断する。
【0074】
まずステップS401で、非同期(Async)データ、Isoデータ等のそれぞれの伝送するデータ量に応じた所定のギャップ長が得られたかを判断する。所定のギャップ長が得られない限り、伝送を開始するために必要なバス使用権の獲得要求を発行できないので、所定のギャップ長が得られるまで待つ。このステップS401で所定のギャップ長が得られたらステップS402に進み、伝送すべきデータがあるか否かを判断し、伝送データがある場合はステップS403に進み、そのデータを伝送するためにバスを確保するようにバス使用権の獲得要求をルートに対して発行する。このバス使用権の獲得要求を表す信号の伝達は、図16(a)に示したように、ネットワークの各機器(ノード)を中継しながら、最終的にルートノードに届けられる。尚、ステップS402で伝送するデータがない場合は、再度ステップS401に戻る。
【0075】
次にステップS404に進み、ステップS403で発行されたバス使用要求を1つ以上受信すると、そのルートノードはステップS405で、その使用要求を発行したノードの数を調べる。ステップS405で、使用権の獲得要求を発行したノードの数が1つであればステップS408に進み、そのノードにバス使用許可が与えられることとなる。一方、ステップS405の判定で、獲得要求を発行したノード数が1以上(使用要求を出したノード数が複数)であればステップS406に進み、ルートノードは、そのバスの使用許可を与えるノードを1つに決定する調停作業を行う。この調停作業は公平なものであり、毎回同じノードばかりが許可を得るようなことはなく、平等に獲得権を与えていくような構成となっている。
【0076】
次にステップS407に進み、ステップS406で使用要求を発行した複数ノードの中から、ルートノードが調停して使用許可を得た1つのノードと、敗れたノード(使用権が獲得されなかったノード)とに分ける選択を行う。ここで、調停されて使用許可を得た1つのノード、またはステップS405において、使用要求ノード数が“1”で調停無しに使用許可を得たノードには、ステップS408で許可信号を送る。この許可信号を得たノードは、それを受け取った直後に伝送すべきデータ(パケット)の伝送を開始する。また、ステップS406の調停で敗れてバス使用権が認められなかったノードには、ステップS409で、ルートノードからアービトレーションの失敗を示すDP(data prefix)パケットが送られる。このDPを受け取ったノードは、再度データ伝送を行うためのバス使用要求を出すためステップS401の処理に戻り、所定ギャップ長が得られるまで待機する。以上が、アービトレーションの流れの説明である。
【0077】
<Asynchronous(非同期)伝送>
このアシンクロナス伝送は非同期伝送である。図18は、このアシンクロナス伝送における時間的な遷移状態を示す図である。図18における最初のサブアクション・ギャップ(subaction gap)は、バスのアイドル状態を示すものである。このアイドル時間が所定値になった時点で、データの伝送を希望するノードはそのバスが使用できると判断して、バス獲得のためのバス使用権の獲得要求を発行する。
【0078】
これにより複数の要求が発行された場合にアービトレーションが実行され、このアービトレーションによりバスの使用許可を得ると、次にデータの伝送がパケット形式で実行される(パケット伝送)。このデータ伝送後、そのパケットを受信したノードは、その伝送されたデータに対して受信結果のack(受信確認用返送コード)をアック・ギャップ(ack gap)という短い時間の後、返送して応答するか、或は応答パケットを送ることによってデータ伝送が完了する。尚、このackは4ビットの情報と4ビットのチェックサムとからなり、データ伝送成功か、受信側がビジー状態か、ペンディング状態であるかといった情報を含み、すぐに送信元ノードに返送される。
【0079】
図19は、アシンクロナス伝送におけるパケットデータのフォーマットの一例を示す図である。
【0080】
パケットデータには、データフィールド1900及び誤り訂正用のデータCRC1901の他にヘッダ部1902があり、そのヘッダ部1902には図19に示したような、目的ノードID、ソースノードID、伝送データ長さや各種コード(extended tcode)などが書き込まれてデータ伝送が行なわれる。また、アシンクロナス伝送は、自己ノードから相手ノードへの1対1の通信である。このため、伝送元ノードから伝送されたパケットは、ネットワーク中の各ノードに送られるが、各ノードでは自分宛てのアドレス以外のパケットを無視するので、宛先の1つのノードだけが、そのパケットを受取って読込むことになる。以上がアシンクロナス伝送の説明である。
【0081】
<Isochronous(同期)伝送>
このアイソクロナス伝送は同期伝送である。1394シリアルバスの最大の特徴であるともいえるこのアイソクロナス伝送は、特にビデオ映像データや音声データといったマルチメディアデータなど、リアルタイムでの伝送を必要とするデータの伝送に適した伝送モードである。また前述したアシンクロナス伝送(非同期)が1対1のノード間でのデータ伝送であったのに対し、このアイソクロナス伝送はブロードキャスト機能によって、1つの伝送元のノードから、そのネットワークの他の全てのノードへ一斉に伝送する。
【0082】
図20は、このアイソクロナス伝送における時間的な遷移を示す図である。
【0083】
このアイソクロナス伝送は、バス上で一定時間毎に実行される。この時間間隔をアイソクロナス・サイクルと呼ぶ。このアイソクロナス・サイクルの周期は125μsである。この各アイソクロナス・サイクルの開始時間を示し、各ノードの時間調整を行なう役割を担っているのがサイクル・スタート・パケット2000である。このサイクル・スタート・パケット2000を送信するのは、サイクル・マスタと呼ばれるノードであり、1つ前のサイクルにおけるデータ伝送終了後、所定のアイドル期間(サブアクションギャップ)2001を経た後、次のサイクルの開始を告げるサイクル・スタート・パケット2000を送信する。従って、このサイクル・スタート・パケット2000が送信される時間間隔が125μsとなる。
【0084】
また図20において、チャネルA、チャネルB、チャネルCで示したように、それぞれのチャネルIDが与えられることによって、1サイクルで複数種のパケットを区別して伝送できる。これによって同時に複数ノード間でのリアルタイムな伝送が可能となり、またこれらパケットを受信するノードでは、自ノードが欲しいチャネルIDのデータのみを取り込む。尚、このチャネルIDは送信先のアドレスを表すものではなく、送信データに対する論理的な番号を与えているに過ぎない。よって、1つのノードから送信されたパケットは、そのネットワークの他の全てのノードに送られ、これによりブロードキャストで伝送されることになる。
【0085】
尚、このアイソクロナス伝送でのパケットの送信に先立って、アシンクロナス伝送の場合と同様に、複数のバス使用要求が発行されるとアービトレーションが行われる。しかし、アシンクロナス伝送のように1対1の通信ではないので、アイソクロナス伝送においては、ack(受信確認用返信コード)は存在しない。
【0086】
また、図20に示した iso gap(アイソクロナスギャップ)とは、アイソクロナス伝送を行なう前にバスが空き状態であると認識するために必要なアイドル期間を表している。この所定のアイドル期間を経過すると、アイソクロナス伝送を行ないたいノードはバスが空いていると判断し、伝送前のアービトレーションを行なうことができる。
【0087】
図21は、アイソクロナス伝送におけるパケットフォーマットの一例を示す図である。
【0088】
図20のチャネルA〜チャネルCで示されるように各チャネルに分かれた各種のパケットにはそれぞれデータフィールド2100及び誤り訂正用のデータCRC2101の他にヘッダ部2102があり、そのヘッダ部2102には図21に示したような、伝送データ長やチャネルNo、その他各種コード(tCode, sy)及び誤り訂正用のヘッダCRCなどが書き込まれており、これらが伝送される。このようにしてアイソクロナス伝送が行われる。
【0089】
<バス・サイクル>
実際の1394シリアルバス上のデータ伝送では、アイソクロナス伝送とアシンクロナス伝送とが混在できる。その時のアイソクロナス伝送とアシンクロナス伝送とが混在した、バス上の伝送状態の時間的な遷移の様子を図22に示す。
【0090】
図22に示すように、アイソクロナス伝送はアシンクロナス伝送より優先して実行される。その理由は、サイクル・スタート・パケット(CSP)の伝送後、アシンクロナス伝送を起動するために必要なアイドル期間のギャップ長(サブアクションギャップ)よりも短いギャップ長(アイソクロナス・ギャップ:isochronous gap)で、アイソクロナス伝送を起動できるからである。従って、アシンクロナス伝送よりもアイソクロナス伝送が優先して実行されることとなる。
【0091】
図22に示した、一般的なバスサイクルにおいて、サイクル#mのスタート時にサイクル・スタート・パケット(CSP)がサイクル・マスタから各ノードに伝送される。これによって、各ノードで時刻調整を行ない、所定のアイドル期間(アイソクロナス・ギャップ)の経過を待ってからアイソクロナス伝送を行うノードはアービトレーション(複数の要求ノード有り)を行い、パケット伝送に入る。図22の例では、チャネルe(ch e)とチャネルs(ch s)とチャネルk(ch k)が順にアイソクロナス伝送されている。このアービトレーションからパケット伝送までの動作を、与えられているチャネル分繰り返し行なった後、サイクル#mにおけるアイソクロナス伝送が全て終了したら、次にアシンクロナス伝送が開始される。
【0092】
アイソクロナス伝送における最後のパケットの送信後のアイドル時間が、アシンクロナス伝送が可能なサブアクション・ギャップに達することによって、アシンクロナス伝送を行いたいノードは、アシンクロナス伝送のためのアービトレーションの実行に移れると判断する。但し、このアシンクロナス伝送が行えるのは、アイソクロナス伝送終了後から、次のサイクル・スタート・パケットを伝送すべき時間(cycle synch)までの間に、アシンクロナス伝送を起動するためのサブアクション・ギャップが得られた場合に限られる。
【0093】
図22のサイクル#mでは、3つのチャネル分のアイソクロナス伝送と、その後のアシンクロナス伝送(含むack)が2パケット(パケット1、パケット2)伝送されている。このアシンクロナスパケット2の後、次のサイクル(#m+1)を開始すべき時間(cycle synch)に到るので、サイクル#mでのアシンクロナス伝送はここで終了する。但し、非同期(アシンクロナス)または同期(アイソクロナス)伝送動作中に次のサイクル・スタート・パケット(CSP)を送信すべき時間(cycle synch)に至ると、強制的にそのデータ伝送を中断することなく、そのデータ伝送が終了した後のアイドル期間を待ってから次のサイクルのサイクル・スタート・パケット(CSP)を送信する。即ち、1つのサイクルが125μs以上続いたときは、その分 次のサイクルは基準の125μsより短縮されたとする。このようにアイソクロナス・サイクルは125μsを基準に超過したり、或は短縮し得るものである。しかし、アイソクロナス伝送はリアルタイム伝送を維持するために、各サイクル毎に実行される必要があれば必ず実行されるようにし、アシンクロナス伝送は、そのサイクル時間の残り時間が短縮されたことによって次以降のサイクルにまわされることもある。こういった遅延情報も含めて、サイクル・マスタによって、各サイクルでのデータ伝送が管理される。以上が、IEEE1394シリアルバスに関する説明である。
【0094】
次に、本発明の実施の形態1について説明する。この実施の形態1では、図2に示すように、1394シリアルバスケーブルで各機器が接続されている場合で説明する。図2のバス構成では、実線で描いた1394シリアルバスでプリンタ装置101とVTR(カメラ一体型デジタルビデオ)102とが1対1に接続されており、VTR102よりの映像データを直接プリンタ装置101によりプリント可能である。
【0095】
また、その他の接続例として、破線で示した1394シリアルバスで接続されたように、プリンタ装置101を経てPC103と、PC103に接続されたスキャナ104等を含んだバス構成であっても良い。また、このPC103を介して映像データ等を各機器にも伝送可能である。なお、この図2のネットワーク構成はあくまでも一例を示す機器群であって、これ以外に更に、PC103やスキャナ104よりも先に機器が接続された構成であっても構わない。また、接続されている機器も、ハードディスクなどの外部記憶装置や、CDドライブ、DVDドライブ装置等のように、1394シリアルバスで接続されてネットワークが構成できる機器なら何であってもよい。
【0096】
図2に示すバス構成を背景とした本発明の実施の形態1の動作に関する説明を図1を参照して行なう。図1は、VTR(デジタルビデオ)102とプリンタ装置101との概要を示すブロック図である。
【0097】
図1において、VTR102はその再生系を中心に示しており、3は磁気テープ、4は記録/再生ヘッド、5は再生処理回路である、この再生処理回路5で再生された映像信号は映像復号化回路6で復号されて、デジタル画像データに変換される。この画像データはD/Aコンバータ7でアナログ信号に変換され、EVF8に表示されたり、或は外部出力端子9を介してモニタなどの他の機器に出力される。また、復号化回路6で復号された画像データは、フレームメモリ12に送られて記憶される。10は操作部で、各種キースイッチやズームなどの操作スイッチを設け、オペレータによる操作に応じて、その指示を入力している。11はVTR102のシステムコントローラで、VTR102全体の動作を制御している。13はVTR102の1394インターフェース(I/F)部で、1394ケーブルを介してデータの入出力を制御している。14はデータセレクタで、システムコントローラ11の制御の下にデータの流れを切り換え、フレームメモリ12に記憶された画像データをプリンタ装置101に出力したり、1394インターフェース部13より入力されるデータを表示画像生成部15に出力したりしている。この表示画像生成部15は、EVF8にメッセージを表示するための画像情報を生成している。16は映像合成器である。
【0098】
次にプリンタ装置101の構成を説明する。17はプリンタ装置101の1394インターフェース(I/F)部、18はプリントする画像を形成処理する画像処理回路である。19は画像データをプリント画像に形成して記憶するためのメモリである。20はプリントヘッド、21はプリントヘッド20の駆動や、プリントヘッドの走査及び紙送り等を行なうモータを駆動するためのドライバである。22はプリンタ装置101の操作部で、オペレータにより操作される各種キースイッチ等を備えている。23はプリンタ装置101の動作を制御するプリンタ・コントローラである。24はプリンタ装置101の動作状況をプリンタ情報として生成するプリンタ情報生成回路で、ここで生成されたプリンタ情報はデータセレクタ25、1394インターフェース部を介してVTR102に送られる。このデータセレクタ25は、プリンタコントローラ23の指示に基づいてVTR102よりの画像データの入力と、VTR102へのプリンタ情報の出力を制御している。そして26はプリンタ装置101の表示部(液晶インジケータ等)である 。
【0099】
次に、以上の構成に基づく動作を順を追って説明する。
【0100】
まず、磁気テープ3に記録されている映像信号を記録再生ヘッド4で読み出し、その読み出した映像信号に対して再生処理回路5で再生処理を行なう。この映像信号は、家庭用デジタルビデオ等で用いられている帯域圧縮方法であるDCT(離散コサイン変換)及びVLC(可変長符号化)に基づいた所定の圧縮方式で符号化されて記録されているので、復号化回路6で所定の復号化処理を行ってデジタル画像データに変換する。更にこのデジタル画像データは、D/Aコンバータ7によりアナログ信号に変換された後、EVF8に表示され、または外部出力端子9から外部装置(ディスプレイ等)に出力される。
【0101】
また、1394シリアルバスを用いて、所望の画像データを他のノードに伝送するときは、この復号化回路6で復号化された後の画像データをフレームメモリ12に一時蓄えた後、データセレクタ14を介して1394I/F部13に出力され、1394ケーブルを介してプリンタ装置101に伝送される。この伝送された画像データがダイレクトプリント用であるときは、プリンタ装置101はこの画像データをプリンタ装置101に取り込む。
【0102】
VTR102での映像信号の記録、再生等の各種動作の指示入力は、操作部10から行なわれる。また操作部10からの指示入力に従って、システムコントローラ11は、各部の動作制御を行なう。また指示入力によっては、表示画像生成回路15に対して特定の警告用のメッセージを出力するよう制御したり、またダイレクトプリント時に画像データのサブデータやコマンドデータ等を発生して、それら制御データとしてデータセレクタ14を経て1394I/F部13からプリンタ装置101に伝送することができる。
【0103】
また、1394シリアルバスを介してプリンタ装置101より送られてくる、プリンタの動作状況等のプリンタ情報データは、1394I/F部13からデータセレクタ14を経て表示画像生成回路15に送られ、システムコントローラ11の制御の下に画像情報に変換されてEVF8に表示される。即ち、表示画像生成回路15の出力は、現在、EVF8に表示中の映像と合成されて表示するように映像合成器16で映像信号に合成され、EVF8にメッセージとして表示される。または、映像合成器16でなく、スイッチ回路を設けることによって、映像とプリンタ情報の表示を選択式に切り換えて表示するような構成をとってもよい。
【0104】
また、プリンタ装置101の操作部22から入力されたVTR102の動作に対する要求は、プリンタコントローラ23により制御コマンドに変換され、1394シリアルバスを通してVTR102の1394I/F部13に伝送される。そして、VTR102においてデータセレクタ14を経てシステムコントローラ11でVTR102の各部の動作制御に用いられる。VTR102におけるデータセレクタ14及びプリンタ装置101のデータセレクタ25は、入力又は出力するデータを選択するものであり、順次、各データがデータ種毎に切り分けられて所定のブロック単位で入出力される。
【0105】
次に、プリンタ装置101の動作について説明する。
【0106】
1394I/F部17に入力されたデータの内、データセレクタ25で各データの種類毎に分類されたプリントすべきデータは画像処理回路18に入力され、この画像処理回路18でプリントに適した画像処理が施される。こうして画像処理が施されたプリント画像データは、プリンタコントローラ23の制御の下にメモリ19に記憶され、或はメモリ19から読み出される。このプリント画像データはプリントヘッド20に出力され、所望の画像がプリントされる。このプリントヘッド駆動や紙送り等の駆動は、プリンタコントローラ23の制御の下にドライバ21を介して行なわれる。
【0107】
プリンタ操作部22は、紙送りや、リセット、インクチェック、プリンタ動作のスタンバイ/開始/停止等の動作指示を入力するためのものであり、その指示入力に応じてプリンタコントローラ23による制御が行なわれ、プリンタ装置101の各部が制御される。また、この操作部22は、VTR102に対するデータ伝送開始指令や、プリント画像の指定に基づいた磁気テープ3のサーチ指令などのような、VTR102に対する各種の制御データの入力手段としても用いられる。
【0108】
次に、1394・I/F部17に入力されたデータが、VTR102等から発せられたサブデータやプリンタ装置101に対するコマンドを示す制御データであったときは、データセレクタ25からプリンタコントローラ23に制御コマンドとして、その旨が伝達される。これにより、プリンタコントローラ23によって情報に対応したプリンタ装置101の各部の制御がなされる。
【0109】
また、プリンタ情報生成部24では、プリンタ装置101の動作状況をプリンタ情報としてデータセレクタ25に入力した後、1394・I/F部17から外部の接続機器に出力することができる。この出力されたプリンタ情報を基にして、先に説明したように、VTR102において、プリンタ情報をEVF8に表示できる画像情報に変換して表示することができる。
【0110】
またプリンタ装置101の表示部26では、プリンタコントローラ23の制御の下に、プリンタ装置101の動作状況を表示したり、あるいはVTR102での動作も含んだダイレクト・プリント実行時の動作状況の表示等を行い、プリンタ装置101の操作部22と合わせたユーザインターフェースを実現できる。
【0111】
図5(a)は、プリンタ装置101の表示部26において、ダイレクトプリント動作時に主として表示されるメッセージ例を示す図で、ここでは5つのパターン、即ち、「プリント画の確認」、「プリント処理中」、「プリント終了」、「(VTR)サーチ中」または「画像検索中」、「画面選択(決定)」を示している。尚、この表示部26に表示されるメッセージとしてはこれ以外にあってもよい。また、これらメッセージは、プリンタ装置101の動作状況や、ダイレクトプリント時におけるプリンタ装置101とVTR1022の動作進行状況や確認すべき情報を表示するものである。これら表示部26へのメッセージ表示と、プリンタ装置101の操作部22とを組み合わせることによって、ユーザによるプリンタ装置101への動作指示、またダイレクトプリント時のVTR102に対する各種の動作指示の入力を操作部22から円滑に行うことができる。
【0112】
一例として、図5(b)に、プリンタ装置101の操作部22のキー構成例を示す。
【0113】
ここでは、表示されたメッセージに対して、ユーザが入力すべき操作部22の各キーを図5(a)のように表示することで、より指示入力が容易になる。また、操作部22と表示部26とを組み合わせた構成として、表示部26を、所謂タッチパネルの構成とし、表示部26より指示入力を行なえるように構成してもよい。
【0114】
このように、プリンタ装置101に表示部26と操作部22を設け、これらによりVTR102に対する指示入力を可能とした構成を備えることにより、ダイレクトプリント動作時等にVTR102に対して、画像データのサブデータ、磁気テープ3に記録されているサブコードやITIのトラック情報等を用いた所定映像の検索指示、テープ送り(サーチ)指示、プリントする映像の選択指示、データ伝送指示等をプリンタ装置101より送信することができる。このように、プリンタ装置101での操作及び制御指示の入力により、VTR102の動作制御をも可能にすることができる。これは、VTR102が液晶表示部等を持ち合わせていない機器であった場合などに、表示部26を備えているプリンタ装置101からの制御により円滑にプリント処理を実行できるという利点がある。
【0115】
尚、前述したように、ダイレクトプリント時においても、VTR102とプリンタ装置101間を接続した1394シリアルバスには画像データや各種のコマンドデータなどが適宜伝送されている。
【0116】
1394シリアルバスによりVTR102から伝送する各データの伝送形式は、前述した1394シリアルバスの仕様に基づいて行われる。即ち、画像データ(及び音声データ)はIsoデータとしてアイソクロナス伝送方式で1394シリアルバス上を伝送され、その他の制御コマンドデータなどはAsyncデータとしてアシンクロナス伝送方式で伝送されるものとする。しかし、ある種のデータによっては、場合によってアイソクロナス伝送するよりアシンクロナス伝送方式で送った方が都合が良いこともあるので、そのようなときはアシンクロナス伝送方式を用いる。
【0117】
また、プリンタ装置101から伝送されるプリンタ情報データ、及びVTR102に対する制御コマンドデータは、主としてAsyncデータとしてアシンクロナス伝送方式で伝送される。
【0118】
前述した図1のような構成をとることにより、VTR102からプリンタ装置101への画像データを送信してダイレクトプリントを実現する際、本実施の形態1では、VTR102の操作部10から入力される、ダイレクトプリント動作を妨げる所定の指示入力をソフト的に禁止するか、或は、そのような指示入力を無効又は無視することにより、ダイレクトプリント時における種々の誤動作及び誤操作を減らすことができる。ここで、VTR102の操作部10から入力されるダイレクトプリントを妨げる指示入力とは、例えばデータ伝送処理中に出力源であるメモリ12の画像データの書き換えを実行するコマンドや、ダイレクトプリントのモードを変更するコマンド等が考えられる。
【0119】
このようなダイレクトプリント時、プリンタ装置101にプリント画像データの1画像分以上のデータを記憶できるバッファメモリを設けていない場合は、プリンタ装置101におけるプリント処理の進行状況に応じてVTR102のフレームメモリ12からプリンタ装置101に適宜画像データを伝送しなければならない。従って、このプリント動作中にVTR102でメモリ12の内容が書き換えられるような処理がなされると、プリンタ装置101へのプリント映像のデータ伝送が正常に行なわれなくなってしまう。また同様に、VTR102よりプリンタ装置101への画像データの伝送中に、ダイレクトプリントモードから他のモード、例えば記録モードや再生モード、またはプリンタ装置101以外の他のノードに伝送するモード等に切り換えるといった動作も、プリント処理の誤動作を招く。こういった誤動作、誤操作を未然に防ぐべく、本実施の形態1では、ダイレクトプリント時には、VTR102の操作部22からの所定の指示入力を無効とするものである。
【0120】
VTR102におけるダイレクトプリント動作中かどうかの判断は、メモリ12からの画像データの伝送の進捗状況、またプリンタ装置101からVTR102に伝送されるプリンタ情報データによるプリンタの動作状況、及びプリンタコントローラ23から送られる制御データ等により、システムコントローラ11が判断することにより行われる。そして、ダイレクトプリント動作中と判断すると操作部10からのモード変更等の所定の指示入力を無効にし、或はその入力を無視するなどして、操作部10からの入力を受け付けなくするように制御する。
【0121】
またこの時、システムコントローラ11は、操作部10からの指示入力が禁止されている間、及び操作部10からの指示入力が禁止されている間に、ユーザによって誤って操作部10に指示入力がなされた場合には、表示画像生成回路15からそれぞれ所定の警告メッセージを出力するように制御する。
【0122】
なお、ダイレクトプリント動作開始時におけるVTR102とプリンタ装置101間の相互認識は、プリンタ装置101の操作部22からユーザによって入力されたデータ伝送(プリント)開始指示や、プリント画像指定等のコマンドに応じて制御データを伝送することにより行われる。他にはVTR102の操作部10に対する指示入力に基づく制御データ、または直接、VTR102からプリンタ装置101に画像データを伝送してダイレクトプリントを開始するように設定してもよい。
【0123】
ダイレクトプリントモードは、上記した動作開始を告げるコマンドデータの送受信に始まり、VTR102から映像データが伝送し終って1画像がプリント終了したのを認識するか、または画像データ伝送およびプリント処理終了後、終了を告げる制御データを相手側装置に伝送するか、またはVTR102とプリンタ装置101間を結ぶ1394シリアルバスの接続が解除されたとき、またはどちらからのノードから強制中断を示すコマンドが入力されたときに、VTR102のシステムコントローラ11及びプリンタ装置101のプリンタコントローラ23でダイレクトプリントモードを終了するように制御する。なお、1394シリアルバスの接続が解除されたことは、1394シリアルバスのバスリセットの発生及び新しいバス構成の構築によってプリンタ装置101が自動判別することが出来る。
【0124】
次に、ダイレクトプリント動作時はVTR102の操作部10から所定の指示入力を無効にして、かつ所定の警告メッセージ表示するというシーケンスを、VTR102とプリンタ装置101のダイレクトプリント時の動作の流れも含めて図6のフローチャートを参照して説明する。
【0125】
図6は本実施の形態1のVTR102とプリンタ装置101におけるダイレクトプリント処理を示すフローチャートである。
【0126】
まずステップS1で、ユーザはプリンタ装置101の操作部22からVTR102における所望の映像を指定し、VTR102にその映像データを検索するように指示を出す。これによりステップS2で、VTR102は磁気テープ3に記録された映像をサーチし、その指示された映像を選択し、その映像信号を磁気テープ3から再生しフレームメモリ12に画像データとして記憶する(ステップS3)。またプリンタ装置101で、ステップS1で指定した映像を変更したいときは、ステップS4で映像の変更指示を入力することによりステップS1でその変更された映像がVTR102に対して指示される。こうしてプリント対象の映像を変更することが可能である。
【0127】
こうして所望の映像が選択されるとステップS5に進み、プリンタ装置101の表示部26の表示に基づいてスタンバイ完了を確認し、VTR102からの画像データの伝送およびプリント開始指令を操作部22から入力する。これにより、ダイレクトプリントの開始指示が入力されたことになる。
【0128】
VTR102では、ステップS6で、この伝送/プリント指示を入力するとステップS7に進み、メモリ12から対応する画像データを断続的に読み出し、1394シリアルバスを介してプリンタ装置101に、アイソクロナス(又はアシンクロナス)によりパケットを伝送を開始する。またステップS7で、この伝送の開始と同時に、VTR102の操作部10からの、ダイレクトプリントのモード変更を含むデータ伝送の妨げとなる所定の指示入力を禁止、無効にするためソフト的な設定変更禁止制御が開始される。但しこの時、ダイレクトプリント処理の強制中断等の必要なコマンドは入力可能としておく。
【0129】
次にステップS8に進み、VTR102の操作部10からの指示入力の禁止の旨を伝える表示▲1▼(例えば「プリント中...」等)をEVF8に表示してユーザへの注意を与えるとともに、動作状況を伝える。この設定変更禁止と、表示▲1▼の表示は一連の動作が終了するまで継続して行われる。
【0130】
このステップS8に引き続いてステップS9で、VTR102のメモリ12からプリント対象の画像データを1度に、または断続的に読み出して、1394シリアルバスを介して、プリンタ装置101へのアイソクロナス(またはアシンクロナス)パケットによるデータ伝送を開始する。
【0131】
こうしてプリンタ装置101が、1394シリアルバスをパケット伝送された画像データを受信したならばステップS10に進み、所定の手順で、順次プリント処理を開始する。この際、プリンタ装置101は、画像データが断続的に伝送されてくる場合は、その伝送された所定画像データ単位毎にプリントを実行し、ステップS11で、プリント処理の中断指令が入力されるか、或はステップS12で1画像分のプリント処理が終了するまで、VTR102からの画像データの伝送と、プリンタ装置101におけるプリント処理とが繰り返し実行される。
【0132】
一方、VTR102ではステップS13で、操作部10からの指示入力があるかどうかを調べ、このダイレクトプリント時、即ち、画像データの伝送開始からプリント終了までの間で禁止されている無効な指示入力やモード変更の指示入力がなされたかどうかをみる。その様な無効入力があったときはステップS14に進み、EVF8に警告のための警告表示▲2▼(例えば「コマンド入力不可!」等)を表示する。これにより、ユーザに対して現在の動作状況を認知する上でより有効となり、誤操作を防止できるような表示を行うことができる。尚、このステップS14で表示された警告表示▲2▼は、ステップS15で訂正入力がなされ、その訂正が有効である場合にステップS16に進み、その警告表示▲2▼を消去する。
【0133】
尚、ステップS13における操作部10からの無効な指示入力の検知は、ダイレクトプリントの一連の動作終了まで、即ち、ステップS17で、プリンタ装置101からVTR102に送信されるプリント終了情報を、ステップS18で受信するまで続けるものとする。ステップS18で、プリンタ装置101からのプリンタ処理の終了が未受信のときはステップS19に進み、画像データが送信済みかどうかを調べ、そうでない時はステップS9に、そうであればステップS13に進む。こうして、VTR102からプリンタ装置101への画像データの伝送が続行中のときは伝送動作を行いつつ操作部102からの無効な指示入力を検知し、画像データが伝送済みであって、プリンタ装置101でプリント中であるときはステップS13で無効な指示入力を検知することが繰り返し行われる。
【0134】
またプリンタ装置101では、ステップS11でプリンタ処理の中断が指示されるか、或はステップS12で、VTR102からの画像データの受信が終了し、1画像分のプリント処理が終了したと判断するとステップS17に進み、プリント終了情報をVTR102に伝送する。これによりVTR102の処理はステップS18からステップS19に進み、操作部10からの変更指示入力の禁止を解除し(ステップS16)、次にステップS20で、前述のEVF8の表示▲1▼を消去してダイレクトプリント処理を終了する。
【0135】
また、プリンタ装置101では、ステップS17でプリントの終了情報を伝送した後ステップS21に進み、他の映像をプリントしたいときはステップS1まで戻り、再びプリントする映像の指定処理から前述の処理を繰り返す。以上が、図6のフローチャートの説明である。
【0136】
また、ダイレクトプリントモード中に何らかの理由でVTR102とプリンタ装置101とを接続している1394シリアルバスのケーブルが切り離されたときは、先に述べたようにバスリセットの発生及び新規のネットワーク構成により、プリンタ装置101が自動的にVTR102が接続されていないことを判断できる。従って、そのような場合は、プリンタ装置101は、現在行なっているプリント動作の終了後に、そのダイレクトプリント動作を終了する。但し、1394シリアルバスの切断確認後、その直後に再度、そのケーブルが接続された場合には、そのデータ伝送が中断した時点からのデータ伝送を再開して、引き続きプリント処理を行うように設定してもよい。
【0137】
本発明の実施の形態は、VTR102だけでなく、例えばデジタルカメラを用いた場合でも実施できるので、ここでデジタルカメラとプリンタ装置101とを1394シリアルバスを用いて1対1で接続して、ダイレクトプリントを実施する場合で説明する。
【0138】
図4は、本実施の形態1のプリンタ装置101とデジタルカメラ105とを接続した構成を示すブロック図である。尚、プリンタ装置101の構成は前述の実施の形態1の構成とほぼ同様であるが、プリンタ装置101内のデータセレクタ25と画像処理回路18間に、デジタルカメラ61の画像符号化/復号化回路65で符号化された画像データを復号するための復号化回路27を設けた構成となっている。
【0139】
105はデジタルカメラ本体を示し、62は画像撮像部、63はA/Dコンバータで、撮像したアナログ映像信号をデジタル信号に変換している。64は画像処理部で、デジタル画像データに対して画像処理を施している。65は画像符号化/復号化回路、66は画像を記録再生するメモリ記録再生部である。67はD/Aコンバータで、画像処理部64で処理されたデジタル画像データ、或は表示画像生成部73で生成された画像データを入力してアナログ信号に変換し、表示部であるEVF68に出力して表示している。69はデジタルカメラの操作部、70はデジタルカメラのシステムコントローラで、本実施の形態1のデジタルカメラ105全体の動作を制御している。71はデータセレクタ、72はデジタルカメラの1394I/F部、73は表示画像生成回路、74は映像合成器である。なお、このデジタルカメラ105の画像符号化/復号化回路65は、静止画像を符号化する際に、例えば周知のJPEG方式で符号化するものとする。また、このデジタルカメラ105のデータセレクタ71、1394I/F部72、表示画像生成回路73、映像合成器74のそれぞれは、前述のVTR102のデータセレクタ14、1394I/F部13、表示画像生成回路15、映像合成器16のそれぞれに対応している。
【0140】
以上の構成に基づく動作を以下に説明する。
【0141】
まず、デジタルカメラ105による記録時、撮像部62で撮像された映像信号はA/Dコンバータ63でデジタル信号に変換され、表示に適した画像データとなるよう画像処理部64でデータ処理がなされる。この画像処理部64の出力の一方は、撮像中の映像としてD/Aコンバータ67に送られてアナログ信号に戻され、EVF68に表示される。もう一方の画像データ出力は、符号化回路65でJPEG方式で符号化され、メモリ記録再生部66でメモリに記録される。
【0142】
この画像データの再生時は、メモリ記録再生部66でメモリから所望の画像データが読み出される。この時、所望の画像データの選択は、操作部69から入力されたコマンドまたは、プリンタ装置101の操作部22から入力されたコマンドを基にしてなされ、システムコントローラ70の制御の下にメモリから読み出される。こうしてメモリから読み出された所望の画像データは、復号化回路65でJPEG圧縮から復号化され、画像処理部64、D/Aコンバータ67での処理を経てEVF68に表示することが可能である。
【0143】
また、メモリから所望の画像データが読み出され、それをプリンタ装置101によりダイレクトプリントするときは、その読み出された符号化された画像データはデータセレクタ71を経て、1394I/F部72、1394シリアルバスを介して伝送される。この場合、メモリ記録再生部66から読み出された画像データは、JPEG方式で符号化されたデータのままプリンタ装置101に出力され、ダイレクトプリントのときにはプリンタ装置101の復号化回路27で復号されて、プリント画像データに変換される。
【0144】
この実施の形態1のプリンタ装置101における基本的な動作は、前述の実施の形態1と同様であるので省略するが、ここでは復号化回路27について説明する。
【0145】
前述したように、デジタルカメラ105より伝送されてきた画像データは符号化データであるため、プリンタ装置101では、復号化回路27で、そのJPEG圧縮データを復号化する。この復号化回路27は、ROMにJPEG復号化プログラムファイルを保持していて、ソフトウェア的に処理するもの、或はデジタルカメラ106から圧縮画像データと共に伝送されてくる復号用データを用いるなどして、プリンタ装置101の回路で、あるいはCPUによるソフトウェア処理を行って復号化処理する。このように、デジタルカメラ105からJPEG方式で圧縮された画像データをプリンタ装置101に伝送し、プリンタ装置101で復号化するようにしたことにより、デジタルカメラ105にいて非圧縮データに変換してから伝送するよりも伝送効率が良くなる。また、JPEG復号化はソフトウェアでのデコードが可能であるので、プリンタ装置101に復号化回路27を設けても、コストの上昇を抑えることができ都合が良い。また復号化回路27をハード的な復号化回路として、JPEGデコード回路(ボード)を設ける構成でも可能である。
【0146】
また、デジタルカメラ105の各部への指示入力は操作部69から行なわれる。この操作部69からの指示入力に基づき、システムコントローラ70は、デジタルカメラの記録再生部66の制御を始めとする各動作部の制御を行なう。また所定の指示入力によっては、表示画像生成回路73に対して特定の警告用のメッセージを出力するよう制御したり、またはダイレクトプリント時に映像データと、サブデータやコマンドデータ等を発生し制御データとしてデータセレクタ71を経て1394I/F部72からプリンタ装置101に伝送する。
【0147】
プリンタ装置101の操作部22より入力され、デジタルカメラ105に伝送されたデジタルカメラ61に対する動作制御データ(コマンド)は、システムコントローラ11に入力され、デジタルカメラ61の各部の制御に用いられる。
【0148】
また、1394シリアルバスを介してプリンタ装置101より送られてくる、プリンタの動作状況等のプリンタ情報データは、1394I/F部72からデータセレクタ71を経て表示画像生成回路73に入力され、システムコントローラ70の制御の下に、EVF68に表示可能な画像情報に変換処理される。この表示画像生成回路73の出力は、EVF68に現在表示中の映像と合成して表示するよう映像合成器74で合成され、EVF68にメッセージとして表示される。また映像合成器74でなくスイッチ回路を設けることによって、映像表示とコマンド表示とを選択式に切り換えて表示するような構成をとってもよい。この場合、データセレクタ71は順次各データがデータ種毎に区別されて所定のブロックに入出力するようにセレクトする。
【0149】
デジタルカメラ105からプリンタ装置101に伝送される各データの伝送形式は、先に述べた1394シリアルバスの仕様に基づいて行われる。即ち、主として画像データはIsoデータとしてアイソクロナス伝送方式で1394シリアルバスを伝送され、コマンドデータはAsyncデータとしてアシンクロナス伝送方式で伝送されるものとする。しかし、場合によってはアイソクロナス伝送するよりアシンクロナス伝送方式で送った方が都合が良いこともあるので、そのようなときはアシンクロナス伝送方式を用いる。以上が図4のブロックの説明である。
【0150】
このような構成を採用することによって、 デジタルカメラ105からプリンタ装置101への画像データのダイレクトプリントを行う際、前述の実施の形態1の場合と同様に、画像データの伝送開始からプリント終了までのダイレクトプリント動作中において、デジタルカメラ105の操作部69から入力されるダイレクトプリントモードの変更等データ伝送の妨げとなる所定の指示入力をソフト的に禁止、又は無効、或は無視する。これにより、ダイレクトプリント時の画像データの伝送エラー等の種々の誤動作を減らすことができる。このためには、ダイレクトプリント動作時、デジタルカメラ105からプリンタ装置101に伝送される画像データやサブデータ、コマンドデータ等の伝送状態、またプリンタ装置101からデジタルカメラ105に伝送されるプリンタ情報データおよび制御データの伝送などにより、デジタルカメラ105のシステムコントローラ70が状況を判断し、ダイレクトプリントモードでの動作中であると判断すると、デジタルカメラ105の操作部69からのモード変更等の所定の指示入力を受け付けないように制御する。
【0151】
この時、デジタルカメラ105の操作部69における指示入力が禁止されている間、及び操作部69が指示入力禁止の間に、ユーザによって誤って操作部69から、その禁止されている指示入力がなされた場合には、表示画像生成回路73が、それぞれ所定の警告メッセージを出力するための表示データを発生し、それに基づいてシステムコントローラ70がそのメッセージをEVF68に表示するように制御する。
【0152】
プリンタ装置101のシステム的な動作、及び本実施の形態のダイレクトプリント時のデジタルカメラ105とプリンタ装置101とのシステム動作は、前記したVTR102に関して説明したものと同様であり、前述の図6のフローチャートで示したものと同様であるため、ここでの説明は省略する。ここまでが実施の形態1の説明である。
【0153】
<実施の形態2>
本発明の実施の形態2では、図23に示したように、プリンタ装置101とカメラ一体型デジタルVTR(以下VTR)101とを1394シリアルバスケーブルで1対1で接続し、VTR107から伝送される映像データをプリンタ装置101でダイレクトプリントできるものとする。この際、VTR102の表示部8及び操作部10がユーザ・インターフェースを受け持ち、プリンタ装置101も含めたダイレクトプリント動作の制御をVTR102で行なうときに、本発明の実施の形態を用いてダイレクトプリント動作時に、VTR102の操作部10からの所定の指示入力を禁止、無効にする場合で説明する。この実施の形態2で用いるプリンタ装置101とVTR102との構成は、前述の図1のプリンタ装置101とVTR102と同様であるので、その説明を省略する。但し、本実施の形態2で補足する事項として、VTR102の操作部10は、VTR102の各部の動作に対する指示入力を行なう他、システムコントローラ11からプリンタ装置101に対する制御データを発生させ、更にはプリンタ装置101に対しての指示入力も行なえるものである。また、EVF8は再生された映像及びダイレクトプリント時に表示される各メッセージ等が分かり易いように、大型の液晶等で構成されたものであれば、ユーザに理解されやすいのでより有効である。
【0154】
このような構成によって、VTR102からプリンタ装置101への映像(画像)データのダイレクトプリントを実現したとき、そのダイレクトプリントでの動作時、VTR102の操作部10からのダイレクトプリント動作を妨げることになる所定の指示入力をソフト的に禁止する、あるいは無効、無視することにより、ダイレクトプリント時における種々の誤動作及び誤操作を減らすことができる。ここで、操作部10からのダイレクトプリントを妨げる所定の指示入力としては、例えば、画像データの伝送処理中に、その出力源であるVTR102のフレームメモリ12の画像データを書き換えるコマンドや、ダイレクトプリントのモードを変更するコマンド等の入力がある。
【0155】
ここで、VTR102の操作部10での入力が禁止される指示入力の具体例として、図24にVTR102の操作部10の1つであるモード選択用スイッチの一例を示して説明する。
【0156】
図24に示すスイッチにより、“ダイレクトプリント”、“再生”、“撮影”および“電源OFF”の各モードが設定でき、“PUSH”ボタンを押すことにより、画像データの伝送開始等の指示入力ができる。スイッチのマーク2400を“ダイレクトプリント”モード位置に合わせて“PUSH”ボタンを押すことにより、再生した画像データをプリンタ装置101に伝送することができる。ダイレクトプリントを行なっている間は、マーク2400は“ダイレクトプリント”の位置にセットされたままで各動作が行なわれるものとし、ダイレクトプリント動作時には、この位置から他のモード位置へのマーク2400の移動(スイッチの回転)を禁止、または無効にする。またこの他にも、他のスイッチキーを用いて、メモリ12の内容を書き換えてしまうような新規、再生等のコマンド指示入力を禁止または無効にするように設定する。
【0157】
また、操作部10による指示入力が禁止されている間、及び操作部10における指示入力が禁止されている間に、ユーザによって誤って操作部10からそのような指示入力がなされた場合には、表示画像生成回路15は、それぞれ所定の警告メッセージを表す表示データを出力し、これに従ってシステムコントローラ11がEVF8に、そのメッセージを表示するように制御する。
【0158】
また、このダイレクトプリントの開始は、VTR102では操作部10によるプリント用の画像データの伝送指令の入力、プリンタ装置101では画像データ(ダイレクトプリント開始を意味するコマンドデータも含む)の受信により起動される。そして、このダイレクトプリントの終了は、プリンタ装置101がVTR102から画像データの伝送が終了し、1画像のプリントが終了したのを認識してプリント終了を告げる制御データをVTR102に伝送するか、またはVTR102とプリンタ装置101間を結ぶ1394シリアルバスの接続が解除されたとき、またはプリンタ装置101或はVTR102から強制的な中断コマンドが発生したときに、システムコントローラ11、及びプリンタコントローラ23でダイレクトプリントモードを終了するように制御することにより行われる。なお、1394シリアルバスの接続が解除されたことは、1394シリアルバスのバスリセットの発生及び新しいバス構成の構築によってプリンタ機器が自動判別することが出来る。
【0159】
次に、本発明の実施の形態2の動作について、ダイレクトプリントの流れも含めて、図25のフローチャートを参照して説明する。
【0160】
まずステップS30で、ユーザは磁気テープ3から映像を再生及びサーチしてプリントしたい映像を選択して、その所望の映像に対応する画像データをフレームメモリ12に記憶し、かつEVF8に表示する。ここで、選択された各映像について、ステップS31で、画像データの伝送及びプリント処理を開始するためのダイレクトプリント開始指令を受け付ける。ステップS31で画像データの伝送指令が入力されなかったときはステップS35に進み、他の映像を選択するかどうかを問合せ、そうであればステップS30に戻り、前述の映像の選択処理を繰り返す。ステップS35で他の映像を選択する必要が無いときには、ここでこの処理を終了する。
【0161】
ステップS31で、所望の映像の画像データの伝送指令が入力されるとステップS32に進み、メモリ12から対応する画像データを断続的或は一度に読み出し、1394シリアルバスを介してプリンタ装置101にアイソクロナス(又はアシンクロナス)によるパケット伝送を開始する。また、このステップS32におけるデータの伝送開始と同時に、VTR102は操作部10からの、このダイレクトプリントのモード変更を含む、プリンタ装置101へのデータ伝送の妨げとなる所定の指示の入力を禁止或は無効するためソフト的な設定変更禁止制御を開始する。この時も、強制中断等の必要なコマンドは入力可能としておく。このステップS32が実行されると、ステップS33で、指示入力禁止の旨を伝える表示▲1▼(例として「プリント中...」等)をEVF8に表示してユーザへの注意を与えるとともに動作状況を伝える。この設定変更禁止と表示▲1▼の表示は一連の動作が終了するまで継続して行われる。そしてステップS34に進み、メモリ12に記憶されている画像データをプリンタ装置101に伝送する。
【0162】
ここでプリンタ装置101は、ステップS37で、システムが起動したデータ受信スタンバイ状態となっている。ここで、1394シリアルバス上をパケット伝送された画像データを受信するとステップS38に進み、所定の手順で順次プリント処理を行う。ここでステップS34で、VTR102から画像データが断続的に伝送されてくるものならば、伝送された所定単位毎に1画像分のプリントが終了するまで(ステップS40)、或はステップS39で中断指示が入力されるまで、VTR102からの画像データの伝送とプリント処理とが繰り返し行われる。
【0163】
VTR102において、ステップS41で、ダイレクトプリント時、すなわちデータ伝送開始からプリント終了までの間で、禁止されている無効な指示入力やモード変更の指示入力が操作部10から入力されたときはステップS42に進み、EVF8に警告のための警告表示▲2▼(例として「コマンド入力不可!」等)を表示する。これによって、よりユーザに対して現在の動作状況を認知する上で有効となり、誤操作を防止できる警告表示が行える。このステップS42で表示された表示▲2▼は、ステップS43で、ユーザが誤操作である無効な指示入力を訂正するまで表示されるものとし、ステップS43で無効な指示入力の訂正がなされたらステップS44に進み、その警告表示▲2▼を消去する。
【0164】
またステップS41で無効な指示入力でない時はステップS45に進み、VTR102からの画像データの伝送処理の中断指示かどうかを調べ、そうであればステップS46に進み、VTR102の再生動作を停止してステップS49に進む。またステップS45でVTR102の動作の中断指示でない時はステップS48に進み、プリンタ装置101よりのプリント終了情報を受信しているかを調べ、そうでない時はステップS36に進み、残りの画像データがあればそれを送信し、残りの画像データがないときはステップS41に進む。
【0165】
プリンタ装置101において、ステップS39でプリントの中断が指示されるか、或はステップS40で、VTR102よりの画像データ伝送が終了し、プリンタ装置101における1プリント画像分のプリント処理が終了したことを判断するとステップS45に進み、プリンタ装置101からVTR102にプリント終了情報が伝送される。プリンタ装置101は、この後ステップS52に進んでスタンバイ状態になる。
【0166】
一方、VTR102は、ステップS48で、このプリント終了を告げるプリント終了情報を受信するとステップS49に進み、それまで設定していた所定指示入力の変更禁止を解除し、次にステップS50で、前述の表示▲1▼をEVF8から消去する。
【0167】
また、VTR102において、他の映像をプリントしたいときはステップS51からステップS30に戻り、再びプリントしたい映像の選択から繰り返す。
【0168】
このように、ステップS41で、ダイレクトプリント処理中、VTR102の操作部10から無効な指示入力がなされるとステップS42に進み、ダイレクトプリントの一連の動作終了まで、すなわちステップS48で、プリンタ装置101からプリント終了情報を受信するまで、その無効入力の検知を行う。以上が図25のフローチャートの説明である。
【0169】
また、ダイレクトプリント動作中に何らかの理由でVTR102とプリンタ装置101とをつなぐ1394シリアルバスのケーブルが外されたときは、先に述べたようにバスリセットの発生及び新規のネットワーク構成により、プリンタ装置101は自動的にVTR102が接続されていないことを判断できる。従ってこのような場合は、現在行なっているプリント動作の終了後、そのダイレクトプリント動作を終了する。ただし、1394シリアルバスの切断確認後、直後に、その接続が成された場合には、伝送が中断した所からデータ伝送を再開し、引き続きダイレクトプリント動作を行うようにしてもよい。
【0170】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0171】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。
【0172】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0173】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0174】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0175】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0176】
以上説明したように本実施の形態によれば、VTR或はデジタルカメラなどのデータ源よりプリンタ装置に画像データを直接出力して印刷するダイレクトプリント動作中、印刷動作の不良を招きかねない、データ源でのコマンド入力を禁止することでダイレクトプリントが支障なく行なえる。
【0177】
また、プリンタ装置からVTRなどのデータ源の制御をも含めたダイレクトプリントの制御を行なえることにより、そのデータ源に適当な表示装置が設けられていない場合にも、操作が容易なユーザ・インターフェースを提供してダイレクトプリント制御が行なえる。また、VTRなどのデータ源の表示装置にダイレクトプリントの動作状況と、さらには、その操作部から無効な指示入力があった場合に、その指示と対応づけて警告表示することにより、ユーザが現在のプリント動作の状態をより的確に把握できる。
【0178】
また、1394シリアルバスを用いたダイレクトプリントを行うことにより、PCを経由せずに、直接データ源とプリンタ装置とを接続して画像データのプリント出力のためのデータ伝送が行えるので、PCの動作状況に影響されずに迅速な処理ができ、またプリントデータの処理のために生ずるPCの負荷をもなくすことができる。
【0179】
【発明の効果】
以上説明したように本発明によれば、プリンタとの間で直接データのやり取りを行うことができるデジタルカメラ及びその制御方法を提供できる。
【0180】
また本発明によれば、プリンタがプリント中、デジタルカメラにおける操作指示の内容に応じて、指示に基づく処理を実行せずに指示の入力を禁止することにより、プリント中における不具合の発生を防止できるという効果がある。
【0182】
【図面の簡単な説明】
【図1】本発明の実施の形態1のVTRとプリンタ装置との接続及びそれらの構成を示すブロック図である。
【図2】本発明の実施の形態1のネットワーク一例を示した図である。
【図3】パーソナルコンピュータにデジタルカメラとプリンタを接続した従来のネットワーク構成を示すブロック図である。
【図4】本発明の実施の形態1のプリンタ装置とデジタルカメラとの接続及びそれらの構成を示すブロック図である。
【図5】本実施の形態のプリンタ装置の表示部における表示例(a)と操作部のキー配置例を示す図である。
【図6】本実施の形態のダイレクトプリント動作時におけるVTRとプリンタ装置の動作の流れを示すフローチャートである。
【図7】1394シリアルバスを用いて接続されたネットワーク構成の一例を示す図である。
【図8】本実施の形態の1394シリアルバスの構成要素を表す図である。
【図9】本実施の形態の1394シリアルバスのアドレスマップを示す図である。
【図10】1394シリアルバスケーブルの断面図である。
【図11】DS−Link符号化方式を説明するための図である。
【図12】1394シリアルバスケーブルを介したネットワークにおけるバスリセットからノードIDの決定までの処理の流れを示すフローチャートである。
【図13】1394シリアルバスケーブルを介したネットワークにおけるバスリセットにおける親子関係決定の処理の流れを示すフローチャートである。
【図14】1394シリアルバスケーブルを介したネットワークにおけるバスリセットにおける親子関係の決定後からノードIDの決定までの処理の流れを示すフローチャートである。
【図15】1394シリアルバスで各ノードのIDを決定するためのトポロジ設定を説明するための図である。
【図16】1394シリアルバスでのアービトレーションを説明するための図である。
【図17】1394シリアルバスでのアービトレーションを説明するためのフローチャートである。
【図18】1394シリアルバスでバス上を伝送されるパケットの様子を示したバスサイクルの一例の図である。
【図19】アシンクロナス伝送におけるパケットデータのフォーマットの一例を示す図である。
【図20】アイソクロナス伝送における時間的な遷移を示す図である。
【図21】アイソクロナス伝送におけるパケットデータのフォーマットの一例を示す図である。
【図22】アシンクロナス伝送の時間的な状態遷移を説明するための図である。
【図23】本発明の実施の形態2のネットワーク一例の図である。
【図24】本実施の形態2のVTRに搭載したスイッチの一例を示す図である。
【図25】実施の形態2のダイレクトプリント処理を示すフローチャートである。[0001]
The present invention relates to a digital camera capable of directly communicating with a printer for printing a photographed image and a control method thereof.To the lawIt is related.
[0002]
[Prior art]
Among the peripheral devices of personal computers (PCs), hard disks and printers are the most frequently used. These peripheral devices are general-purpose interfaces for small computers, and are representative digital interfaces (hereinafter referred to as “digital interfaces”). , Digital I / F) is connected to the PC main body via SCSI or the like, and data is exchanged through this interface.
[0003]
Digital cameras and digital video cameras are also one of the peripheral devices that function as data input means for PCs. Recently, video signals such as still images and videos shot by these digital cameras and video cameras have been imported to PCs. The data is stored in a hard disk or edited with a PC and then printed with a color printer. When the video signal (image data) taken in the PC is output from the PC to a printer or hard disk, the data is exchanged via the SCSI or the like. Therefore, in order to transmit information with a large amount of data such as image data, the digital I / F is required to have a high data transmission rate and versatility.
[0004]
FIG. 3 is a block diagram showing an example of a general interface in a PC. Here, a digital camera is connected to the PC via a digital I / F, and a printer is connected via a SCSI.
[0005]
In FIG. 3, 31 is a digital camera, 32 is a personal computer (PC), and 33 is a printer. 34 is a memory that is a storage unit of the
[0006]
In the
[0007]
In the
[0008]
In the above configuration, the video signal (image data) captured by the
[0009]
In the PC 32, image data input from the digital I /
[0010]
As described above, each peripheral device is conventionally connected to the
[0011]
[Problems to be solved by the invention]
Many of the SCSIs mentioned in the above conventional example have a low data transmission rate, a thick cable for parallel communication, and the types and number of connected peripheral devices and the connection method. It is pointed out that this is inconvenient.
In addition, many general PCs are provided with connectors for connecting SCSI and other cables on the back of the PC, and the shape of the connector is large so that it is troublesome to insert and remove. Therefore, things that are moved or carried, such as digital cameras and video cameras, must be connected to and detached from the back connector of the PC each time, which is very troublesome.
[0012]
Further, many peripheral devices are usually connected to the PC, and it is conceivable that the types of these peripheral devices will further increase in the future. Furthermore, it will be very convenient if I / F can be used to connect many digital devices, not just PC peripheral devices, over the network. However, depending on the type of device, communication with a very large amount of data is also possible. It may become frequent. In such a case, it is conceivable that the network is more congested and communication between other devices in the network is affected. For example, when the user wants to print images continuously or when he wants to print quickly, the user is not aware of the data communication via the network between the PC and the printer. It is also conceivable that the communication between the devices affects the image, and the image printing process is not normally executed, or the time until the print output is delayed.
[0013]
The present invention has been made in view of the above conventional example, and a digital camera capable of directly exchanging data with a printer and a control method thereofThe lawThe purpose is to provide.
[0014]
Another object of the present invention is to provide operation instructions on the digital camera while the printer is printing.Depending on the content,Processing based onProhibit input without executingAccordingly, it is an object of the present invention to provide a digital camera and a control method therefor that prevent a printer from generating troubles during printing.
[0015]
Another object of the present invention is to transmit image data from a digital camera to a printer.Decide whether to execute processing based on operation instructionsByEven if image data is being transferred, processing based on necessary instructions can be executed, and processing based on unnecessary instructions can be prevented,It is an object of the present invention to provide a digital camera and a control method therefor that prevent occurrence of problems during data transmission.
[0016]
[Means for Solving the Problems]
In order to achieve the above object, the digital camera of the present invention has the following configuration. That is,
A digital camera that communicates with a printer to print a photographed image and can select an image to be transmitted to the printer while connected to the printer,
Imaging means;
Recording means for recording image data captured by the imaging means in a memory;
Reproduction means for reading out image data to be printed from a memory in which the image data is stored;
Transmitting means for transmitting image data read by the reproducing means to the printer;
Receiving means for receiving control data from the printer;
Determining means for determining whether the printer is performing a printing operation according to control data received by the receiving means;
By userFingerOperation means for inputting the indication;
If the determination means determines that a printing operation is being performed, the operation meansbyPerforms processing based on the instructions according to the contents of the instructionsControl means for prohibiting the input of instructions without
The control unit cancels the prohibition of the input of the instruction in response to receiving the control data for notifying the end of printing by the receiving unit.It is characterized by that.
[0017]
In order to achieve the above object, the digital camera control method of the present invention includes the following steps. That is,
A method of controlling a digital camera that communicates with a printer to print a captured image and that can select an image to be transmitted to the printer while connected to the printer,
A reproduction step of reading out image data to be printed from a memory in which the imaged image data is stored;
A transmission step of transmitting the image data read in the reproduction step to the printer;
Receiving process for receiving control data from the printer;
A determination step of determining whether the printer is performing a printing operation according to the control data received in the reception step;
An instruction input process for inputting an instruction in response to an operation by the user;
When it is determined that the printing operation is being performed in the determination step, processing based on the instruction is executed according to the content of the instruction in the instruction input step.First control to invalidate the input of the instruction withoutProcess,
A second control step for canceling the invalidation of the input of the instruction when control data for notifying the end of printing is received from the printer;
It is characterized by having.
[0019]
DETAILED DESCRIPTION OF THE INVENTION
Preferred embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
[0020]
<
FIG. 2 is a diagram illustrating an example of a network configuration according to the present embodiment. In this embodiment, it is assumed that an
[0021]
<Overview of
With the advent of home digital VTRs and DVDs, it has become necessary to support data transmission such as video data and audio data that are required in real time and have a large amount of information. An interface capable of high-speed data transmission is required to transmit such video data and audio data in real time and take them into a personal computer (PC) or transmit them to other digital devices. An interface developed from such a viewpoint is IEEE 1394-1995 (High Performance Serial Bus) (hereinafter, 1394 serial bus).
[0022]
FIG. 7 is a diagram showing an example of a network system configured using the 1394 serial bus.
[0023]
This system includes devices A to H, between devices AB, between devices AC, between devices BD, between devices DE, between devices CF, between devices CG, and devices. The C and H are connected by a twisted pair cable of a 1394 serial bus. These devices A to H are, for example, a PC, a digital VTR, a DVD, a digital camera, a hard disk, a display monitor, and the like. The connection method between these devices allows the daisy chain method and the node branching method to be mixed, and a connection with a high degree of freedom is possible.
[0024]
In addition, each device has its own unique ID, and each recognizes each other's ID, thereby constituting one network within the range connected by the 1394 serial bus. In this way, by simply connecting each digital device with one 1394 serial bus cable in sequence, each device can act as a relay and constitute a single network as a whole. In addition, the Plug & Play function, which is also a feature of the 1394 serial bus, can automatically recognize the recognition and connection status of the device when the 1394 serial bus cable is connected to the device. .
[0025]
In the network system shown in Fig. 7, when a device is removed from the network or a new device is added, the bus is automatically reset to reset the network configuration up to that point. Then, rebuild the new network. This function makes it possible to always set and recognize the network configuration at that time.
[0026]
The data transmission speed in the 1394 serial bus is 100/200/400 Mbps (megabits / second), and devices having higher transmission speeds support lower transmission speeds and are compatible. The data transmission mode includes asynchronous transmission mode for transmitting asynchronous data (Asynchronous data: Async data) such as control signals, and synchronous data (Isochronous data: hereinafter Iso data) such as real-time video data and audio data. There is an isochronous transmission mode for transmission. The Async data and Iso data are mixed and transmitted in each cycle (usually 125 μs per cycle), following the transmission of the cycle start packet (CSP) indicating the start of the cycle, giving priority to the transmission of Iso data. The
[0027]
FIG. 8 shows the components of the 1394 serial bus.
[0028]
The 1394 serial bus has a layer structure as a whole. As shown in FIG. 8, the most related to the hardware is the cable 813 of the 1394 serial bus, the connector port 810 to which the connector of the cable 813 is connected, and the physical layer as the hardware on it. 811 and
[0029]
The
[0030]
The
[0031]
The
[0032]
FIG. 9 is a diagram showing an address space in the 1394 serial bus.
[0033]
Each device (node) connected to the 1394 serial bus always has a unique 64-bit address. By storing this address in the ROM of each device, the node address of itself or the other party can be recognized at all times, and communication specifying the other party can also be performed. The addressing of the 1394 serial bus is based on the IEEE1212 standard, and the address setting is for specifying the bus number for the first 10 bits of the 64-bit address and for specifying the node ID number for the next 6 bits. Used for. The remaining 48 bits become the address width given to the device and can be used as a unique address space. The last 28 bits of the 48 bits are used for storing information for identifying each device and designating use conditions as a unique data area. The above is the outline of the technology of the 1394 serial bus.
[0034]
Next, a technical part that can be said to be a feature of the 1394 serial bus will be described in more detail.
[0035]
<Electric specifications of 1394 serial bus>
FIG. 10 is a sectional view showing the structure of a 1394 serial bus cable.
[0036]
In the 1394 serial bus cable, two power lines are provided in the connection cable in addition to the two pairs of twisted pair signal lines. As a result, power can be supplied to a device that does not have a power supply or a device whose power supply voltage has dropped due to a failure via the cable. The power supply voltage flowing through the power supply line is defined as 8 to 40 V, and the current (direct current) is defined as 1.5 A (ampere) at the maximum.
[0037]
<DS-Link encoding>
FIG. 11 is a diagram for explaining the DS-Link encoding method of the data transmission format adopted in the 1394 serial bus.
[0038]
In the 1394 serial bus, a DS-Link (Data / Strobe Link) encoding method is adopted. This DS-Link encoding method is suitable for high-speed communication of serial data, and its configuration requires two signal lines. Main data (Data) is sent to one of the twisted pair wires, and a strobe signal is sent to the other twisted pair wire. The receiving side can reproduce the clock (Clock) by taking the exclusive OR of the communicated data and the strobe signal.
[0039]
Advantages of using this DS-Link coding method are that the transmission efficiency is higher than other serial data transmission methods, the PLL circuit is unnecessary, the circuit scale of the controller LSI can be reduced, and the data to be transmitted Since there is no need to send information indicating that the device is in an idle state when there is no device, the transceiver circuit of each device can be put into a sleep state, which can reduce power consumption.
[0040]
<Bus reset sequence>
In the 1394 serial bus, each connected device (node) is given a node ID and recognized as a network configuration. When there is a change in this network configuration, the change occurs due to, for example, node insertion / removal (cable connection / disconnection), or the increase / decrease of the number of nodes due to power on / off of each device, etc., and the new network configuration is recognized. When necessary, each node that detects the change transmits a bus reset signal on the bus and enters a mode for recognizing a new network configuration. The network configuration change detection method at this time is performed by detecting a change in bias voltage on the 1394 port substrate.
[0041]
A bus reset signal is transmitted from a certain node to the network, and the
[0042]
This bus reset is triggered by detecting the cable insertion / removal or network abnormality as described above by hardware, and issuing a command directly to the
[0043]
<Node ID determination sequence>
After the bus reset described above, each node enters an operation of giving an ID to each node in order to construct a new network configuration. A general sequence from bus reset to node ID determination at this time will be described with reference to the flowcharts of FIGS.
[0044]
The flowchart of FIG. 14 shows a series of bus operations from when a bus reset occurs until a node ID is determined and data transmission can be performed.
[0045]
First, in step S101, it is constantly monitored whether or not a bus reset has occurred in the network. If a bus reset occurs due to power ON / OFF of a certain node, the process proceeds to step S102. In step S102, in order to know the connection status of the new network from the state where the network is reset, a parent-child relationship is declared between the nodes directly connected to each other. In step S103, the parent-child relationship is declared in step S102 until the parent-child relationship is determined among all nodes, and the route is not determined. When the parent-child relationship is determined among all the nodes in step S103, the process proceeds to step S104, and one route is determined.
[0046]
When one route is determined in step S104 in this way, the process proceeds to step S105, and node ID setting work for giving an ID to each node is performed. In this way, ID setting for each node is performed in the order of a predetermined node. When IDs are given to all nodes, the process proceeds from step S106 to step S107, and a new network configuration is recognized in all nodes. Data transmission is ready and data transmission is started. When the state of step S107 is entered, a mode for monitoring whether or not a bus reset occurs again (S101) is entered. When a bus reset occurs, the setting operation from step S101 to step S106 is repeated.
[0047]
The above is the description of the flowchart of FIG. 12, but refer to FIG. 13 and FIG. 14 for the part from the bus reset to the route determination (S104) of the flowchart of FIG. Will be described in more detail.
[0048]
FIG. 13 is a flowchart showing a procedure from bus reset to route determination.
[0049]
When a bus reset occurs in step S201, the process proceeds to step S202, and the network configuration is once reset. In step S201, the occurrence of a bus reset is constantly monitored. In step S202, as a first step of re-recognizing the connection status of the reset network, a flag indicating a leaf (node) is set for each device. In step S203, each device checks how many of its own ports are connected to other nodes. When the number of ports connected to other devices is confirmed in this way, the process proceeds to step S204, and in accordance with the number of ports, in order to start the declaration of the parent-child relationship from now on, the port of the undefined (parent-child relationship has not been determined) Check the number. Immediately after the bus reset, the number of ports = the number of undefined ports, but as the parent-child relationship is determined, the number of undefined ports detected in step S204 decreases.
[0050]
First, immediately after a bus reset, only a leaf can declare a parent-child relationship. Whether or not it is a leaf can be known by checking the number of ports in step S203. In step S205, the leaf declares “the child is the child and the partner is the parent” to the node connected to the own device, and the operation ends.
[0051]
In a node where a plurality of ports have been confirmed in step S203 and recognized as a branch, immediately after the bus reset, since the number of undefined ports> 1 in step S204, the process proceeds to step S206, where a branch flag is set, and then step S207 is performed. And wait to accept the declaration of “parent” in the parent-child relationship declaration from the leaf. If the leaf declares the parent-child relationship, the branch that received the declaration in step S207 returns to step S204 again to check the number of undefined ports, and if the number of undefined ports is “1”. Proceeding to step S205, it becomes possible to declare "I am a child" to a node connected to the remaining port. In addition, after the execution of steps S206 and S207, even in the second and subsequent branches, in the branch where the number of undefined ports is 2 or more, the process proceeds again to step S206 and step S207, and the declaration of “parent” from the leaf or other branch is made. Wait to accept.
[0052]
Thus, finally, in step S204, when the number of undefined ports of any one branch, or exceptionally a leaf (because it was able to declare a “child” but did not operate quickly) becomes “0”, this causes the network The declaration of the whole parent-child relationship is complete. The only node in which the number of undefined ports has become “0” (all determined as “parent” ports) is flagged as a root in step S208 and recognized as a root in step S209. In this manner, the declaration of the parent-child relationship between all the nodes of the network is completed after the bus reset shown in FIG.
[0053]
Next, with reference to the flowchart of FIG. 14, the procedure from the route determination to the end of ID setting will be described in detail.
[0054]
First, since the flag information of each node such as leaf, branch, and root is set in the above-described sequence, based on this, the state of the flag (FL) is checked in step S301, and the flag is matched. Classify each. As an operation for assigning an ID to each node, the ID can first be set from the leaf. Here, IDs are set in ascending order of (leaf) → (branch) → (root), starting from a smaller number (node number = 0). In step S302, the number of leaves existing in the network is set to N (N is a natural number). After this, the process proceeds to step S303, and each leaf requests to give an ID to the root. If there are a plurality of such requests, the route performs arbitration (operation for arbitrating to one) in step S304. Thereafter, the process proceeds to step S305, where an ID number is given to one of the nodes that has won the arbitration, and the failure result is notified to the losing node. As a result of this notification, the leaf whose ID acquisition failed in step S306 returns to step S303, issues an ID request again, and repeats the same operation as described above.
[0055]
In the leaf from which the ID has been acquired in this way, the process proceeds from step S306 to step S307, and the ID information of the node is broadcast and transmitted to all the nodes of the network. When the broadcast of one node ID is thus completed, the process proceeds to step S308, and the count value (N) for counting the number of leaves is decreased by one. In step S309, when the count value (N) is 1 or more, the process proceeds to step S303, and the process of ID request is repeated again. When all the leaves finally broadcast the ID information in this way, N = 0 in step S309, and then the operation proceeds to branch ID setting after step S310.
[0056]
This branch ID setting is performed in the same manner as the above-described leaf ID setting.
[0057]
First, in step S310, the number M of branches (M is a natural number) existing in the network is set. Thereafter, in step S311, each branch requests the root to give an ID. On the other hand, the route is arbitrated in step S312, and is given from the next young number that has been given to the leaf in order from the winning branch. In step S313, the route notifies the branch that issued the request of the ID information or the failure result (S313). In step S314, the branch whose ID acquisition has failed fails to output the ID request again in step S311. Repeat the same process.
[0058]
In step S315, the ID information of the node is broadcast to all the nodes from the branch in which the ID has been acquired in this way. When the broadcast of one node ID information ends, the process proceeds to step S316, and the counter (M) counting the number of branches is decremented by one. In step S317, when the number of remaining branches is 1 or more (M> 1), the process proceeds to step S311 to repeat the process of ID request, and these processes finally broadcast ID information to all branches. It is done until. When all branches acquire node IDs in this way, M = 0 in step S317, and the branch ID acquisition mode is terminated. As a result, the node that has not finally acquired the ID information is only the root, and the smallest number among the numbers not given as the ID is set as its own ID number in step S318. In step S319, the route ID information is broadcast. As described above, after the parent-child relationship between the nodes is determined, the procedure until the IDs of all the nodes are set ends.
[0059]
Next, an operation in an actual network will be described with reference to FIG.
[0060]
In FIG. 15, the nodes A and C are directly connected to the lower level of the (root) node B, the node D is directly connected to the lower level of the node C, and the nodes E and E are further connected to the lower level of the node D. It has a hierarchical structure in which the nodes F are directly connected. The procedure for determining this hierarchical structure, root node, and node ID will be described below.
[0061]
After the bus is reset, first, in order to recognize the connection status of each node, a parent-child relationship is declared between the ports directly connected to each other. With this parent and child, it can be said that “parent” is higher in the hierarchical structure and “child” is lower.
[0062]
In the example of FIG. 15, it is the node A that first declared the parent-child relationship after the bus reset. Basically, a parent-child relationship can be declared from a node (referred to as a leaf) to which another node is connected to only one port of that node. This is because the node can know that the node is connected to only one port, so it first recognizes that the node is at the end of the network, and the node that operated quickly This is because the parent-child relationship is determined from the above. In this way, the port on the side (Node A between A and B) on which the parent-child relationship is declared is set as “child”, and the port on the other side (node B) is set as “parent”. Thus, “child”-“parent” is determined between the nodes A and B, “child”-“parent” is determined between the nodes ED, and “child”-“parent” is determined between the nodes FD.
[0063]
Going up one level, this time, the nodes having a plurality of connection ports (referred to as branches, nodes B, C, and D in this case), which have received the declaration of the parent-child relationship from other nodes, are sequentially higher ( Declare the parent-child relationship to “parent”. In FIG. 15, first, after determining the parent-child relationship between DE and DF at the node D, the parent-child relationship is declared for the node C. As a result, the node D-C is determined as “child”-“parent”. Here, the node C receiving the declaration of the parent-child relationship from the node D declares the parent-child relationship to the node B connected to the other port. As a result, “child”-“parent” is determined between the nodes CB. In this way, the hierarchical structure as shown in FIG. 15 is configured, and the node B that becomes the parent is determined as the root node in all the finally connected ports. Note that only one such route exists in one network configuration.
[0064]
In FIG. 15, the node B is determined as the root node. This is because if the node B receiving the parent-child relationship declaration from the node A makes a parent-child relationship declaration to other nodes at an early timing, The root node in the route may have moved to a node other than Node B. That is, depending on the timing of signals transmitted between the nodes, any node may be a root node, and even in the same network configuration, the root node is not always constant.
[0065]
When the root node is determined in this way, the next mode is to determine each node ID. Here, it is assumed that all nodes notify all other nodes of their determined node IDs (broadcast function).
[0066]
The ID of each node includes the node number of the own device, the information on the connected position, the number of ports possessed, the number of connected ports, the parent-child relationship information of each port, and the like. As a procedure for allocating node IDs, it is possible to start from a node (leaf) connected to only one port, and node IDs = 0, 1, 2,. Thus, the node that has acquired the node ID broadcasts information including the node ID to each node. As a result, each node recognizes that its ID is already “allocated”.
[0067]
When all the leaves have obtained the node IDs, the process proceeds to the node ID setting process in the branch, and the node IDs assigned to the leaves and following the numbers are assigned to the respective nodes. Here, as in the case of the leaf, the node ID is broadcast sequentially from the branch to which the node ID is assigned, and finally the root node broadcasts its own node ID. That is, one route always has a node ID corresponding to the maximum number of nodes included in the route. As described above, assignment of node IDs for all nodes in the hierarchical structure is completed, the network configuration is reconstructed, and bus initialization is completed.
[0068]
<Arbitration>
In the 1394 serial bus, the bus use right is always arbitrated prior to data transmission. The 1394 serial bus is a logical bus network configured such that each individually connected device relays the transmitted signal to transmit the transmitted signal to all devices in the network. It is. For this reason, arbitration is necessary to prevent packet collision. This allows only one node to transmit at any given time.
[0069]
As an illustration for explaining this arbitration, FIG. 16A shows an example of requesting acquisition of a bus use right, and FIG. 16B shows an example of permitting use of the bus.
[0070]
When arbitration is started, one or a plurality of nodes issue a bus use right acquisition request to the parent node (node B in the figure). Node C and node F in FIG. 16A are the nodes that have issued this bus use right acquisition request. Upon receiving this request, the parent node (node A in FIG. 16) issues (relays) a bus use right acquisition request to the parent node (node B). This usage right acquisition request is finally delivered to the root node that performs arbitration.
[0071]
The root node (node B) that has received the bus use right acquisition request determines which node is to use the bus. This arbitration work can be performed only by the root node, and the bus use permission is given to the node that has won the arbitration. In the example of FIG. 16B, the use permission is given to the node C, and the bus use of the node F is denied. A node (node F) losing this arbitration sends a DP (data prefix) packet to inform that the bus use request has been rejected. The bus use request of the node (node F) whose use of the bus is thus rejected is waited until the next arbitration. As described above, the node that has won the right to use the bus by winning the arbitration can subsequently start data transmission.
[0072]
FIG. 17 is a flowchart showing the flow of the arbitration process.
[0073]
In order for a node to begin data transmission, the bus must be idle. A predetermined idle time gap length (for example, a subaction gap) set individually in each transmission mode in order to recognize that the previous data transmission is completed and the bus is currently empty. Each node determines that data transmission from its own device can be started.
[0074]
First, in step S401, it is determined whether a predetermined gap length corresponding to the amount of data to be transmitted, such as asynchronous (Async) data or Iso data, has been obtained. Unless a predetermined gap length is obtained, a request for acquiring the right to use the bus necessary for starting transmission cannot be issued. Therefore, the process waits until the predetermined gap length is obtained. If a predetermined gap length is obtained in step S401, the process proceeds to step S402, where it is determined whether or not there is data to be transmitted. If there is transmission data, the process proceeds to step S403, and a bus is used to transmit the data. A request for acquiring the bus use right is issued to the route so as to secure it. As shown in FIG. 16A, the transmission of the signal indicating the bus use right acquisition request is finally delivered to the root node while relaying each device (node) of the network. If there is no data to be transmitted in step S402, the process returns to step S401 again.
[0075]
In step S404, when one or more bus use requests issued in step S403 are received, the root node checks the number of nodes that issued the use request in step S405. If the number of nodes that issued the usage right acquisition request is one in step S405, the process proceeds to step S408, and the bus use permission is given to that node. On the other hand, if it is determined in step S405 that the number of nodes that issued acquisition requests is 1 or more (the number of nodes that issued use requests is more than one), the process proceeds to step S406, and the root node selects a node that grants permission to use the bus. Arbitration work to determine one. This arbitration work is fair, and only the same node does not get permission every time, and the acquisition right is given equally.
[0076]
Next, proceeding to step S407, one of the nodes that issued the use request at step S406, the root node arbitrating to obtain use permission, and the lost node (the node for which the use right was not acquired) Select to divide. Here, a permission signal is sent in step S408 to one node that has been arbitrated and obtained use permission, or a node that has obtained use permission without arbitration in step S405 because the number of use request nodes is “1”. The node having obtained this permission signal starts transmission of data (packet) to be transmitted immediately after receiving the permission signal. Further, in step S409, a DP (data prefix) packet indicating failure of arbitration is sent from the root node to a node that has lost the arbitration in step S406 and has not been granted the right to use the bus. The node that has received this DP returns to the process of step S401 to issue a bus use request for performing data transmission again, and waits until a predetermined gap length is obtained. The above is the description of the arbitration flow.
[0077]
<Asynchronous transmission>
This asynchronous transmission is asynchronous transmission. FIG. 18 is a diagram showing a temporal transition state in this asynchronous transmission. The first subaction gap in FIG. 18 indicates the idle state of the bus. When this idle time reaches a predetermined value, a node desiring to transmit data determines that the bus can be used, and issues a bus use right acquisition request for acquiring the bus.
[0078]
As a result, arbitration is executed when a plurality of requests are issued, and when the bus use permission is obtained by this arbitration, data transmission is then executed in a packet format (packet transmission). After this data transmission, the node that received the packet responds by returning an ack (acknowledgment return code) of the reception result to the transmitted data after a short time called an ack gap. The data transmission is completed by sending a response packet. This ack consists of 4-bit information and a 4-bit checksum, and includes information such as whether the data transmission was successful, whether the receiving side is busy or pending, and is immediately returned to the source node.
[0079]
FIG. 19 is a diagram illustrating an example of a format of packet data in asynchronous transmission.
[0080]
The packet data includes a
[0081]
<Isochronous transmission>
This isochronous transmission is synchronous transmission. This isochronous transmission, which can be said to be the greatest feature of the 1394 serial bus, is a transmission mode suitable for transmission of data requiring real-time transmission, such as multimedia data such as video image data and audio data. The asynchronous transmission (asynchronous) described above is data transmission between one-to-one nodes, whereas this isochronous transmission is performed by a broadcast function from one transmission source node to all other nodes in the network. All at once.
[0082]
FIG. 20 is a diagram showing temporal transition in this isochronous transmission.
[0083]
This isochronous transmission is executed at regular intervals on the bus. This time interval is called an isochronous cycle. The period of this isochronous cycle is 125 μs. The
[0084]
In addition, as shown by channel A, channel B, and channel C in FIG. 20, by giving each channel ID, a plurality of types of packets can be distinguished and transmitted in one cycle. This enables real-time transmission between a plurality of nodes at the same time, and the node receiving these packets captures only the data of the channel ID desired by the own node. This channel ID does not represent the address of the transmission destination, but merely gives a logical number for the transmission data. Therefore, a packet transmitted from one node is sent to all other nodes in the network, and is transmitted by broadcast.
[0085]
Prior to the transmission of packets in the isochronous transmission, arbitration is performed when a plurality of bus use requests are issued, as in the case of asynchronous transmission. However, since it is not one-to-one communication like asynchronous transmission, there is no ack (reception confirmation reply code) in isochronous transmission.
[0086]
Further, the iso gap shown in FIG. 20 represents an idle period necessary for recognizing that the bus is empty before performing isochronous transmission. When this predetermined idle period elapses, a node that wishes to perform isochronous transmission determines that the bus is free and can perform arbitration before transmission.
[0087]
FIG. 21 is a diagram illustrating an example of a packet format in isochronous transmission.
[0088]
As shown by channel A to channel C in FIG. 20, each packet divided into each channel has a
[0089]
<Bus cycle>
In actual data transmission on the 1394 serial bus, isochronous transmission and asynchronous transmission can be mixed. FIG. 22 shows a temporal transition state of the transmission state on the bus in which isochronous transmission and asynchronous transmission are mixed.
[0090]
As shown in FIG. 22, isochronous transmission is executed with priority over asynchronous transmission. The reason is that after transmission of the cycle start packet (CSP), a gap length (isochronous gap) shorter than a gap length (subaction gap) of an idle period necessary for starting asynchronous transmission, This is because isochronous transmission can be activated. Accordingly, isochronous transmission is executed prior to asynchronous transmission.
[0091]
In a general bus cycle shown in FIG. 22, a cycle start packet (CSP) is transmitted from the cycle master to each node at the start of cycle #m. As a result, the time is adjusted at each node, and a node that performs isochronous transmission after waiting for the elapse of a predetermined idle period (isochronous gap) performs arbitration (with a plurality of requesting nodes) and enters packet transmission. In the example of FIG. 22, channel e (ch e), channel s (ch s), and channel k (ch k) are isochronously transmitted in order. After repeating the operations from the arbitration to the packet transmission for the given channel, when all the isochronous transmissions in the cycle #m are completed, the asynchronous transmission is started.
[0092]
When the idle time after the transmission of the last packet in isochronous transmission reaches the subaction gap in which asynchronous transmission is possible, it is determined that a node that wishes to perform asynchronous transmission can move to execution of arbitration for asynchronous transmission. However, this asynchronous transmission can be performed only after the end of isochronous transmission until the time when the next cycle start packet should be transmitted (cycle synch). Limited to
[0093]
In cycle #m in FIG. 22, isochronous transmission for three channels and subsequent asynchronous transmission (including ack) are transmitted in two packets (
[0094]
Next,
[0095]
As another connection example, a bus configuration including the
[0096]
The operation of the first embodiment of the present invention against the background of the bus configuration shown in FIG. 2 will be described with reference to FIG. FIG. 1 is a block diagram showing an outline of a VTR (digital video) 102 and a
[0097]
In FIG. 1, a
[0098]
Next, the configuration of the
[0099]
Next, operations based on the above configuration will be described in order.
[0100]
First, the video signal recorded on the
[0101]
When desired image data is transmitted to another node using the 1394 serial bus, the image data after being decoded by the
[0102]
Instruction inputs for various operations such as recording and reproduction of video signals in the
[0103]
Also, printer information data such as the printer operating status sent from the
[0104]
A request for the operation of the
[0105]
Next, the operation of the
[0106]
Of the data input to the 1394 I /
[0107]
The
[0108]
Next, when the data input to the 1394 I /
[0109]
Further, the printer
[0110]
Further, the
[0111]
FIG. 5A is a diagram showing an example of a message mainly displayed on the
[0112]
As an example, FIG. 5B illustrates a key configuration example of the
[0113]
Here, in response to the displayed message, each key of the
[0114]
As described above, the
[0115]
As described above, even during direct printing, image data, various command data, and the like are appropriately transmitted to the 1394 serial bus connecting the
[0116]
The transmission format of each data transmitted from the
[0117]
Further, printer information data transmitted from the
[0118]
In the first embodiment, when the image data is transmitted from the
[0119]
In such direct printing, if the
[0120]
The determination as to whether or not the direct printing operation is being performed in the
[0121]
At this time, the
[0122]
Note that mutual recognition between the
[0123]
The direct print mode starts with the transmission / reception of the command data for informing the start of the operation, and recognizes that the image data has been transmitted from the
[0124]
Next, a sequence of invalidating a predetermined instruction input from the operation unit 10 of the
[0125]
FIG. 6 is a flowchart showing direct print processing in the
[0126]
First, in step S1, the user designates a desired video on the
[0127]
When the desired video is selected in this way, the process proceeds to step S5, where standby completion is confirmed based on the display on the
[0128]
When the
[0129]
In step S8, the
[0130]
Subsequent to step S8, in step S9, image data to be printed is read from the
[0131]
In this way, when the
[0132]
On the other hand, in step S13, the
[0133]
The invalid instruction input from the operation unit 10 in step S13 is detected until the end of a series of direct printing operations, that is, in step S17, print end information transmitted from the
[0134]
If the
[0135]
The
[0136]
Further, when the cable of the 1394 serial bus connecting the
[0137]
Since the embodiment of the present invention can be implemented not only with the
[0138]
FIG. 4 is a block diagram illustrating a configuration in which the
[0139]
[0140]
The operation based on the above configuration will be described below.
[0141]
First, at the time of recording by the
[0142]
At the time of reproducing the image data, the memory recording / reproducing
[0143]
When desired image data is read from the memory and directly printed by the
[0144]
Since the basic operation of the
[0145]
As described above, since the image data transmitted from the
[0146]
In addition, an instruction input to each unit of the
[0147]
Operation control data (command) for the digital camera 61 input from the
[0148]
Also, printer information data such as printer operating status sent from the
[0149]
The transmission format of each data transmitted from the
[0150]
By adopting such a configuration, when direct printing of image data from the
[0151]
At this time, while the instruction input in the
[0152]
The system operation of the
[0153]
<
In the second embodiment of the present invention, as shown in FIG. 23, the
[0154]
With such a configuration, when direct printing of video (image) data from the
[0155]
Here, as a specific example of the instruction input that is prohibited from being input on the operation unit 10 of the
[0156]
With the switch shown in FIG. 24, “direct print”, “playback”, “shoot”, and “power off” modes can be set. By pressing the “PUSH” button, an instruction input such as the start of image data transmission can be input. it can. The reproduced image data can be transmitted to the
[0157]
In addition, when such an instruction input is erroneously made by the user from the operation unit 10 while the instruction input by the operation unit 10 is prohibited and while the instruction input in the operation unit 10 is prohibited, The display
[0158]
The start of the direct printing is started by inputting a transmission command of image data for printing from the operation unit 10 in the
[0159]
Next, the operation of
[0160]
First, in step S30, the user reproduces and searches the video from the
[0161]
In step S31, when an instruction to transmit image data of a desired video is input, the process proceeds to step S32, in which the corresponding image data is read from the
[0162]
Here, the
[0163]
In the
[0164]
If it is determined in step S41 that the instruction input is not invalid, the process proceeds to step S45, where it is checked whether the instruction is to interrupt transmission processing of image data from the
[0165]
In the
[0166]
On the other hand, when the
[0167]
In the
[0168]
As described above, when an invalid instruction is input from the operation unit 10 of the
[0169]
Further, when the cable of the 1394 serial bus connecting the
[0170]
Note that the present invention can be applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, and a printer), and a device (for example, a copying machine and a facsimile device) including a single device. You may apply to.
[0171]
Another object of the present invention is to supply a storage medium storing software program codes for implementing the functions of the above-described embodiments to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium. This can also be achieved by reading and executing the program code stored in.
[0172]
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.
[0173]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
[0174]
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. A case where part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
[0175]
Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. This includes a case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
[0176]
As described above, according to the present embodiment, data that may cause a printing operation failure during a direct print operation in which image data is directly output from a data source such as a VTR or a digital camera to a printer device for printing. Direct printing can be performed without any problems by prohibiting command input at the source.
[0177]
In addition, since direct printing control including control of a data source such as a VTR can be performed from the printer device, a user interface that can be easily operated even when an appropriate display device is not provided for the data source. Providing direct printing control. In addition, when a direct print operation status is displayed on a display device of a data source such as a VTR and an invalid instruction is input from the operation unit, a warning is displayed in association with the instruction so that the user can It is possible to more accurately grasp the state of printing operation.
[0178]
Also, by performing direct printing using the 1394 serial bus, data transmission for print output of image data can be performed by directly connecting the data source and the printer device without going through the PC. It is possible to perform rapid processing without being affected by the situation, and it is possible to eliminate the load on the PC caused by processing the print data.
[0179]
【The invention's effect】
As described above, according to the present invention, a digital camera capable of directly exchanging data with a printer and a control method thereofThe lawCan be provided.
[0180]
Further, according to the present invention, the operation instruction in the digital camera is being performed while the printer is printing.Depending on the content ofProcessing based onProhibit input without executingTherefore, there is an effect that it is possible to prevent the occurrence of defects during printing.
[0182]
[Brief description of the drawings]
FIG. 1 is a block diagram showing the connection between a VTR and a printer apparatus according to a first embodiment of the present invention, and their configuration.
FIG. 2 is a diagram showing an example of a network according to the first embodiment of the present invention.
FIG. 3 is a block diagram showing a conventional network configuration in which a digital camera and a printer are connected to a personal computer.
FIG. 4 is a block diagram illustrating connections between the printer apparatus and the digital camera according to the first embodiment of the present invention, and configurations thereof.
FIG. 5 is a diagram illustrating a display example (a) on the display unit of the printer apparatus according to the present embodiment and a key arrangement example of the operation unit.
FIG. 6 is a flowchart showing a flow of operations of the VTR and the printer apparatus during the direct printing operation of the present embodiment.
FIG. 7 is a diagram illustrating an example of a network configuration connected using a 1394 serial bus.
FIG. 8 is a diagram illustrating components of a 1394 serial bus according to the present embodiment.
FIG. 9 is a diagram showing an address map of the 1394 serial bus according to the present embodiment.
FIG. 10 is a cross-sectional view of a 1394 serial bus cable.
FIG. 11 is a diagram for explaining a DS-Link encoding method.
FIG. 12 is a flowchart showing a processing flow from bus reset to node ID determination in a network via a 1394 serial bus cable.
FIG. 13 is a flowchart showing a flow of processing for determining a parent-child relationship in a bus reset in a network via a 1394 serial bus cable.
FIG. 14 is a flowchart showing a processing flow from determination of a parent-child relationship to determination of a node ID in a bus reset in a network via a 1394 serial bus cable.
FIG. 15 is a diagram for describing topology setting for determining the ID of each node on the 1394 serial bus;
FIG. 16 is a diagram for explaining arbitration in a 1394 serial bus.
FIG. 17 is a flowchart for explaining arbitration in a 1394 serial bus.
FIG. 18 is a diagram of an example of a bus cycle showing a state of a packet transmitted on the bus by a 1394 serial bus.
FIG. 19 is a diagram illustrating an example of a format of packet data in asynchronous transmission.
FIG. 20 is a diagram illustrating temporal transition in isochronous transmission.
FIG. 21 is a diagram illustrating an example of a format of packet data in isochronous transmission.
FIG. 22 is a diagram for explaining temporal state transition of asynchronous transmission.
FIG. 23 is a diagram of an example of a network according to the second embodiment of the present invention.
FIG. 24 is a diagram illustrating an example of a switch mounted on the VTR according to the second embodiment.
FIG. 25 is a flowchart illustrating direct print processing according to the second embodiment.
Claims (9)
撮像手段と、
前記撮像手段で撮像した画像データをメモリに記録する記録手段と、
画像データが記憶されているメモリからプリントする画像データを読み出す再生手段と、
前記再生手段により読み出された画像データを前記プリンタに送信する送信手段と、
前記プリンタから制御データを受信する受信手段と、
前記受信手段で受信した制御データに応じて前記プリンタがプリント動作中であるかを判断する判断手段と、
使用者による指示を入力するための操作手段と、
前記判断手段によりプリント動作中であると判断された場合は、前記操作手段による指示の内容に応じて、前記指示に基づく処理を実行せずに指示の入力を禁止する制御手段とを有し、
前記制御手段は、前記受信手段によりプリント終了を通知するための制御データを受信したことに応じて、前記指示の入力の禁止を解除することを特徴とするデジタルカメラ。A digital camera that communicates with a printer to print a photographed image and can select an image to be transmitted to the printer while connected to the printer,
Imaging means;
Recording means for recording image data captured by the imaging means in a memory;
Reproduction means for reading out image data to be printed from a memory in which the image data is stored;
Transmitting means for transmitting image data read by the reproducing means to the printer;
Receiving means for receiving control data from the printer;
Determining means for determining whether the printer is performing a printing operation according to control data received by the receiving means;
And operation means for entering that by the user instructions,
Control means for prohibiting input of an instruction without executing processing based on the instruction according to the content of the instruction by the operation means when it is determined that the printing operation is being performed by the determination means ;
The digital camera according to claim 1, wherein the control unit cancels the prohibition of the input of the instruction in response to receiving the control data for notifying the end of printing by the receiving unit .
撮像された画像データが記憶されているメモリからプリントする画像データを読み出す再生工程と、
前記再生工程で読み出された画像データを前記プリンタに送信する送信工程と、
前記プリンタから制御データを受信する受信工程と、
前記受信工程で受信した制御データに応じて前記プリンタがプリント動作中であるか判断する判断工程と、
使用者による操作に応じて、指示を入力する指示入力工程と、
前記判断工程でプリント動作中であると判断された場合は、前記指示入力工程での指示の内容に応じて、前記指示に基づく処理を実行せずに前記指示の入力を無効にする第1の制御工程と、
前記プリンタからプリント終了を通知するための制御データを受信したときに、前記指示の入力の無効を解除する第2の制御工程と、
を有することを特徴とするデジタルカメラの制御方法。A method for controlling a digital camera that communicates with a printer to print a captured image and that can select an image to be transmitted to the printer while connected to the printer,
A reproduction step of reading out image data to be printed from a memory in which the imaged image data is stored;
A transmission step of transmitting the image data read in the reproduction step to the printer;
Receiving process for receiving control data from the printer;
A determination step of determining whether the printer is performing a printing operation according to the control data received in the reception step;
An instruction input process for inputting an instruction in response to an operation by the user;
When it is determined that the printing operation is being performed in the determination step, the first input that invalidates the input of the instruction without executing the process based on the instruction according to the content of the instruction in the instruction input step . Control process;
A second control step for canceling the invalidation of the input of the instruction when control data for notifying the end of printing is received from the printer;
A method for controlling a digital camera, comprising:
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08843097A JP4401446B2 (en) | 1997-04-07 | 1997-04-07 | Digital camera and control method thereof |
US09/024,187 US6298405B1 (en) | 1997-02-14 | 1998-02-17 | Data communication system, printing system and data communication apparatus |
US09/903,706 US20010047443A1 (en) | 1997-02-14 | 2001-07-13 | Data communication apparatus, method and system and programs for data communication process stored in computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08843097A JP4401446B2 (en) | 1997-04-07 | 1997-04-07 | Digital camera and control method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10283308A JPH10283308A (en) | 1998-10-23 |
JP4401446B2 true JP4401446B2 (en) | 2010-01-20 |
Family
ID=13942581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08843097A Expired - Fee Related JP4401446B2 (en) | 1997-02-14 | 1997-04-07 | Digital camera and control method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4401446B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000231458A (en) * | 1999-02-10 | 2000-08-22 | Seiko Epson Corp | Composite device apparatus, composite device system, composite device control method, and medium recording composite device control program |
JP4805532B2 (en) * | 2003-07-29 | 2011-11-02 | 富士フイルム株式会社 | Device equipment |
JP4918145B2 (en) * | 2010-01-26 | 2012-04-18 | 富士フイルム株式会社 | Device device and mode switching method thereof |
-
1997
- 1997-04-07 JP JP08843097A patent/JP4401446B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10283308A (en) | 1998-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6298405B1 (en) | Data communication system, printing system and data communication apparatus | |
US6453071B2 (en) | Data communication apparatus, method and system and programs for data communication process stored in computer readable storage medium | |
JP3423620B2 (en) | Imaging device and control device, imaging device control system, control method therefor, and storage medium | |
JPH10243327A (en) | Image input device, control method therefor and image input/output system | |
JPH10226139A (en) | Image forming system, image forming apparatus, and medium | |
JP2000358033A (en) | Data communication system and data communication method | |
JP3293779B2 (en) | Signal processing device and control method thereof | |
JP4072215B2 (en) | Image processing apparatus, control method therefor, and image processing system | |
JP4401446B2 (en) | Digital camera and control method thereof | |
JPH10229533A (en) | Image forming device, image forming system and image forming method | |
JPH10228365A (en) | Printer, print system, and printing method | |
JP3599581B2 (en) | Electronic device and computer-readable storage medium | |
JPH10285240A (en) | Data communication equipment and its method, data communication system and storage medium | |
JP3501613B2 (en) | Data communication system, print system and data communication device | |
JP3682512B2 (en) | Image capturing apparatus and control method thereof, printing system, printing method, and printing apparatus and control method thereof | |
JP3774540B2 (en) | Data transfer method, image processing system and apparatus | |
JP2000196873A (en) | Information processor, information processing system, method for them, and storage medium | |
JP3647328B2 (en) | Image processing apparatus, control method therefor, and image processing system | |
JP3495879B2 (en) | Data processing method, data processing device, and computer-readable recording medium | |
JPH10228364A (en) | Data transfer device, its controlling method and printing system | |
JP2000138924A (en) | Digital device, image pickup device, terminal, communication system and storage medium | |
JP4653955B2 (en) | Electronic device and control method thereof | |
JP2002064511A (en) | Data communication system, electronic device and method for controlling them | |
JP3890124B2 (en) | Data communication system, data communication method, data communication node, and recording medium | |
JPH11227286A (en) | Print system and print control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040407 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051212 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060208 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060714 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060913 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060922 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20061013 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091028 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121106 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131106 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |