私はそれの背後にある原則を理解していないので質問があります。リアルタイムハードウェアストリーム(Python)を読むことの理解
私は無線温度センサーからデータを受信するために、USB DVB-Tドングルからリアルタイムデータを読み取るPythonスクリプトを書いた。私はrtl_fmというプログラムを使用しています。これは、ドングルからデータを読み込み、それをスクリプトにパイプします。あまり複雑ではない例を探してスクリプトを書いた。
このスクリプトでは、sys.stdin.fileno()を使用して、入力ストリームから常に512バイトを読み込みます。さて、私は何をしていません、なぜこれは動作しますか?ドングル(別名入力ストリーム)が私のスクリプトが読んでいるレートより高いレートでデータを配信すると、データが失われたり、バッファがオーバーフローしたりします。レートが遅い場合は、データがもう存在しないため、スクリプトはある時点で停止します。
誰かがどのように/これがなぜ機能しているのか説明できますか?
Thx。
'sys.stdin.fileno()'を使ってどのようにデータを読み込みますか?その関数は、ファイル記述子を返します。この場合、 '0'です。あなたは 'sys.stdin.read(512)'を使っているはずです。 –
私はそれをpythonスクリプトにパイプします:rtl_fm parametery | python script.py - – Pythoneer