gmin.c
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. #include "quicktime.h"
  2. int quicktime_gmin_init(quicktime_gmin_t *gmin)
  3. {
  4. gmin->version = 0;
  5. gmin->flags = 0;
  6. gmin->graphics_mode = 64;
  7. gmin->opcolor[0] = 32768;
  8. gmin->opcolor[1] = 32768;
  9. gmin->opcolor[2] = 32768;
  10. gmin->balance = 0;
  11. gmin->reserved = 0;
  12. }
  13. int quicktime_gmin_delete(quicktime_gmin_t *gmin)
  14. {
  15. }
  16. int quicktime_gmin_dump(quicktime_gmin_t *gmin)
  17. {
  18. printf("     generic media infon");
  19. printf("      version %dn", gmin->version);
  20. printf("      flags %dn", gmin->flags);
  21. printf("      graphics_mode %dn", gmin->graphics_mode);
  22. printf("      opcolor %d %d %dn", gmin->opcolor[0], gmin->opcolor[1], gmin->opcolor[2]);
  23. printf("      balance %dn", gmin->balance);
  24. printf("      reserved %dn", gmin->reserved);
  25. }
  26. int quicktime_read_gmin(quicktime_t *file, quicktime_gmin_t *gmin)
  27. {
  28. int i;
  29. gmin->version = quicktime_read_char(file);
  30. gmin->flags = quicktime_read_int24(file);
  31. gmin->graphics_mode = quicktime_read_int16(file);
  32. for(i = 0; i < 3; i++)
  33. gmin->opcolor[i] = quicktime_read_int16(file);
  34. gmin->balance = quicktime_read_int16(file);
  35. gmin->reserved = quicktime_read_int16(file);
  36. }
  37. int quicktime_write_gmin(quicktime_t *file, quicktime_gmin_t *gmin)
  38. {
  39. int i;
  40. quicktime_atom_t atom;
  41. quicktime_atom_write_header(file, &atom, "gmin");
  42. quicktime_write_char(file, gmin->version);
  43. quicktime_write_int24(file, gmin->flags);
  44. quicktime_write_int16(file, gmin->graphics_mode);
  45. for(i = 0; i < 3; i++)
  46. quicktime_write_int16(file, gmin->opcolor[i]);
  47. quicktime_write_int16(file, gmin->balance);
  48. quicktime_write_int16(file, gmin->reserved);
  49. quicktime_atom_write_footer(file, &atom);
  50. }