patch-libavcodec_aacsbr_template_c 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. $OpenBSD: patch-libavcodec_aacsbr_template_c,v 1.2 2016/01/14 06:09:43 ajacoutot Exp $
  2. avcodec/aacsbr_template: replace qsort with AV_QSORT
  3. --- libavcodec/aacsbr_template.c.orig Fri Dec 25 03:00:18 2015
  4. +++ libavcodec/aacsbr_template.c Fri Dec 25 21:02:42 2015
  5. @@ -32,6 +32,8 @@
  6. * @author Zoran Basaric ( zoran.basaric@imgtec.com )
  7. */
  8. +#include "libavutil/qsort.h"
  9. +
  10. av_cold void AAC_RENAME(ff_aac_sbr_init)(void)
  11. {
  12. static const struct {
  13. @@ -139,8 +141,8 @@ static void sbr_make_f_tablelim(SpectralBandReplicatio
  14. memcpy(sbr->f_tablelim + sbr->n[0] + 1, patch_borders + 1,
  15. (sbr->num_patches - 1) * sizeof(patch_borders[0]));
  16. - qsort(sbr->f_tablelim, sbr->num_patches + sbr->n[0],
  17. - sizeof(sbr->f_tablelim[0]),
  18. + AV_QSORT(sbr->f_tablelim, sbr->num_patches + sbr->n[0],
  19. + uint16_t,
  20. qsort_comparison_function_int16);
  21. sbr->n_lim = sbr->n[0] + sbr->num_patches - 1;
  22. @@ -298,7 +300,7 @@ static int sbr_make_f_master(AACContext *ac, SpectralB
  23. if (spectrum->bs_stop_freq < 14) {
  24. sbr->k[2] = stop_min;
  25. make_bands(stop_dk, stop_min, 64, 13);
  26. - qsort(stop_dk, 13, sizeof(stop_dk[0]), qsort_comparison_function_int16);
  27. + AV_QSORT(stop_dk, 13, int16_t, qsort_comparison_function_int16);
  28. for (k = 0; k < spectrum->bs_stop_freq; k++)
  29. sbr->k[2] += stop_dk[k];
  30. } else if (spectrum->bs_stop_freq == 14) {
  31. @@ -391,7 +393,7 @@ static int sbr_make_f_master(AACContext *ac, SpectralB
  32. make_bands(vk0+1, sbr->k[0], sbr->k[1], num_bands_0);
  33. - qsort(vk0 + 1, num_bands_0, sizeof(vk0[1]), qsort_comparison_function_int16);
  34. + AV_QSORT(vk0 + 1, num_bands_0, int16_t, qsort_comparison_function_int16);
  35. vdk0_max = vk0[num_bands_0];
  36. vk0[0] = sbr->k[0];
  37. @@ -432,13 +434,13 @@ static int sbr_make_f_master(AACContext *ac, SpectralB
  38. if (vdk1_min < vdk0_max) {
  39. int change;
  40. - qsort(vk1 + 1, num_bands_1, sizeof(vk1[1]), qsort_comparison_function_int16);
  41. + AV_QSORT(vk1 + 1, num_bands_1, int16_t, qsort_comparison_function_int16);
  42. change = FFMIN(vdk0_max - vk1[1], (vk1[num_bands_1] - vk1[1]) >> 1);
  43. vk1[1] += change;
  44. vk1[num_bands_1] -= change;
  45. }
  46. - qsort(vk1 + 1, num_bands_1, sizeof(vk1[1]), qsort_comparison_function_int16);
  47. + AV_QSORT(vk1 + 1, num_bands_1, int16_t, qsort_comparison_function_int16);
  48. vk1[0] = sbr->k[1];
  49. for (k = 1; k <= num_bands_1; k++) {