test_mpp.c 738 B

1234567891011121314151617181920
  1. #include "decoder.h"
  2. #include <stdio.h>
  3. #include <unistd.h>
  4. int main(int argc, char **argv) {
  5. if (argc < 2) { fprintf(stderr, "usage: %s <rtsp-url>\n", argv[0]); return 1; }
  6. Decoder *dec = decoder_create(argv[1], 15);
  7. if (!dec) { fprintf(stderr, "decoder_create failed\n"); return 1; }
  8. fprintf(stderr, "OK decoder %dx%d stride=%d\n",
  9. decoder_get_width(dec), decoder_get_height(dec), decoder_get_stride(dec));
  10. DecodedFrame f;
  11. for (int i = 0; i < 100; i++) {
  12. int r = decoder_get_frame(dec, &f);
  13. fprintf(stderr, "frame %d: r=%d fd=%d %dx%d\n", i, r, r==0?f.fd:-1, f.width, f.height);
  14. if (r == 0) close(f.fd);
  15. usleep(40000);
  16. }
  17. decoder_destroy(dec);
  18. return 0;
  19. }