2016-06-16 5 views

답변

3

에만 최소 출력 버퍼 크기 (즉, 문제가 아니라, 각 입력 버퍼가 다른 블록의 출력 버퍼이다) 설정할 수 수행하여, 예를 들면, gr.block.set_min_output_buffer(port, size) 호출을 사용 :

  • 작성자 (GNU 라디오 도우미의 "고급"탭을 사용하여 귀하의 흐름 그래프를 설정하는 데 사용하는 어떤 파이썬 스크립트
     
    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 블록 클래스에서 해당 호출을 랩핑하는 것을 잊어 버렸습니다. 따라서, 현재 파이썬 블록과 함께 사용할 수 없습니다. 죄송 합니다만, C++ 블록에서만 가능합니다. 나는 현재 쓰고있다 a patch for that; 모든 것이 잘된다면, 곧 마스터 브랜치에서 볼 수있을 것입니다. :)

+0

1. 정확하게 이해했는지 확인하십시오. 내 마지막 블록 단락에 따르면, 내 블록이 파이썬 'self.set_min_output_buffer (2 ** 20)'이 추가되지 않습니다. (즉, C++에서만 제 블록을 작성해야 함을 의미합니다.) 2. 이것이 의미하는 바가 아니라면, 파이썬에서 제 블록을 썼고, __init __ (self) : 첫 번째 제안에서했던 것과 똑같은 코드를 실행했지만 다음과 같은 오류가 발생했습니다. AttributeError : 객체에 'set_min_output_buffer'속성이 없습니다. – Doe