vp8dx.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /*
  2. * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
  3. *
  4. * Use of this source code is governed by a BSD-style license
  5. * that can be found in the LICENSE file in the root of the source
  6. * tree. An additional intellectual property rights grant can be found
  7. * in the file PATENTS. All contributing project authors may
  8. * be found in the AUTHORS file in the root of the source tree.
  9. */
  10. #include "vp8.h"
  11. /*!\defgroup vp8_decoder WebM VP8 Decoder
  12. * \ingroup vp8
  13. *
  14. * @{
  15. */
  16. /*!\file
  17. * \brief Provides definitions for using the VP8 algorithm within the vpx Decoder
  18. * interface.
  19. */
  20. #ifndef VP8DX_H
  21. #define VP8DX_H
  22. #include "vpx_codec_impl_top.h"
  23. /*!\name Algorithm interface for VP8
  24. *
  25. * This interface provides the capability to decode raw VP8 streams, as would
  26. * be found in AVI files and other non-Flash uses.
  27. * @{
  28. */
  29. extern vpx_codec_iface_t vpx_codec_vp8_dx_algo;
  30. extern vpx_codec_iface_t* vpx_codec_vp8_dx(void);
  31. /*!@} - end algorithm interface member group*/
  32. /* Include controls common to both the encoder and decoder */
  33. #include "vp8.h"
  34. /*!\brief VP8 decoder control functions
  35. *
  36. * This set of macros define the control functions available for the VP8
  37. * decoder interface.
  38. *
  39. * \sa #vpx_codec_control
  40. */
  41. enum vp8_dec_control_id {
  42. /** control function to get info on which reference frames were updated
  43. * by the last decode
  44. */
  45. VP8D_GET_LAST_REF_UPDATES = VP8_DECODER_CTRL_ID_START,
  46. /** check if the indicated frame is corrupted */
  47. VP8D_GET_FRAME_CORRUPTED,
  48. /** control function to get info on which reference frames were used
  49. * by the last decode
  50. */
  51. VP8D_GET_LAST_REF_USED,
  52. VP8_DECODER_CTRL_ID_MAX
  53. } ;
  54. /*!\brief VP8 decoder control function parameter type
  55. *
  56. * Defines the data types that VP8D control functions take. Note that
  57. * additional common controls are defined in vp8.h
  58. *
  59. */
  60. VPX_CTRL_USE_TYPE(VP8D_GET_LAST_REF_UPDATES, int *)
  61. VPX_CTRL_USE_TYPE(VP8D_GET_FRAME_CORRUPTED, int *)
  62. VPX_CTRL_USE_TYPE(VP8D_GET_LAST_REF_USED, int *)
  63. /*! @} - end defgroup vp8_decoder */
  64. #include "vpx_codec_impl_bottom.h"
  65. #endif