2
私は自分自身のGNUラジオブロックをPythonで書いていますが、そのバッファの入出力バッファの両方に最低限のバッファサイズを設定したいブロック。GNUラジオ:Pythonブロックの入出力バッファの最小サイズを設定する
これを行う機能やコードはありますか?
私は自分自身のGNUラジオブロックをPythonで書いていますが、そのバッファの入出力バッファの両方に最低限のバッファサイズを設定したいブロック。GNUラジオ:Pythonブロックの入出力バッファの最小サイズを設定する
これを行う機能やコードはありますか?
あなたが唯一の最小出力バッファサイズを(それは問題ではない、すべての入力バッファが別のブロックの出力バッファである)を設定することができます実行して、たとえば、gr.block.set_min_output_buffer(port, size)
呼び出しを使用して、:
your_block_handle.set_min_output_buffer(2**20)、または
def __init__(self): gr.sync_block.__init__(self, name="block_with_buffer", in_sig=[numpy.float32], out_sig=[numpy.float32]) self.set_min_output_buffer(2**20)
、またはしかし、GNU Radioはpythonブロッククラスでその呼び出しをラップするのを忘れました。したがって、現在のところ、pythonブロックでは使用できません。申し訳ありませんが、C++ブロックでのみ使用できます。私は現在書いていますa patch for that;すべてがうまくいけばすぐにマスターブランチでこれを見ることができます:)
1.私は正しく理解していることを確認してください:あなたのコメントの最後の段落によると、私のブロックがPython 'self.set_min_output_buffer(2 ** 20)'という行を追加すると動作しません。 (これは私のブロックをC++でのみ書く必要があることを意味します) 2.これはあなたが意味するものではない場合、私はPythonで私のブロックを書いたので、私はまだ不明です、そして__init __ ):最初の提案と同じように、コードを実行しましたが、次のエラーが発生します: AttributeError:オブジェクトに属性がありません 'set_min_output_buffer' – Doe