code: async def packets_from_tshark(self, packet_callback, packet_count=None, close_tshark=True):
          
          tshark_process = await self._get_tshark_process(packet_count=packet_count)
          try:
              await self._go_through_packets_from_fd(tshark_process.stdout, packet_callback, packet_count=packet_count)
          except StopCapture:
              pass
          finally:
              if close_tshark:
                  await self._close_async()
docs: A coroutine which creates a tshark process, runs the given callback on each packet that is received from it and
          closes the process when it is done.
  
          Do not use interactively. Can be used in order to insert packets into your own eventloop.