BDSBuiltInPlayer.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. //
  2. // BDSBuiltInPlayer.h
  3. // BDSSpeechSynthesizer
  4. //
  5. // Created by 段弘 on 14-7-14.
  6. // Copyright (c) 2014年 百度. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. @class BDSBuiltInPlayer;
  10. @protocol BDSBuiltInPlayerDelegate <NSObject>
  11. /**
  12. * @brief 播放已结束
  13. *
  14. * @param player 播放器对象
  15. */
  16. - (void)playerDidFinished:(BDSBuiltInPlayer *)player;
  17. /**
  18. * @brief 播放被暂停(被其他应用程序中断)
  19. *
  20. * @param player 播放器对象
  21. */
  22. - (void)playerDidPaused:(BDSBuiltInPlayer *)player;
  23. /**
  24. * @brief 播放器发生错误,请重新建立播放器对象
  25. *
  26. * @param player
  27. * 播放器对象
  28. * @param error
  29. * 错误信息
  30. */
  31. - (void)playerErrorOccured:(BDSBuiltInPlayer *)player error:(NSError*)error;
  32. @end
  33. @interface BDSBuiltInPlayer : NSObject
  34. /** 播放器状态代理 */
  35. @property (nonatomic, weak) id<BDSBuiltInPlayerDelegate> delegate;
  36. /** AudioSessionCategory类型,取值参见AVAudioSession Class Reference */
  37. @property (nonatomic, copy) NSString *audioSessionCategory;
  38. /**
  39. * @brief 播放音频数据,仅支持播放由合成器返回的pcm数据
  40. *
  41. * @param data
  42. * pcm数据
  43. * @param outError
  44. * 如果播放失败,该对象将用于返回错误信息
  45. */
  46. - (BOOL)playPcmData:(NSData *)data error:(NSError **)outError;
  47. /**
  48. * @brief 播放URL所指向的内容
  49. *
  50. * @param url
  51. * 用于指定需要播放的音频文件
  52. * @param outError
  53. * 如果播放失败,该对象将用于返回错误信息
  54. */
  55. - (BOOL)playContentsOfURL:(NSURL *)url error:(NSError **)outError;
  56. /**
  57. * @brief 暂停播放
  58. */
  59. - (void)pause;
  60. /**
  61. * @brief 继续播放
  62. */
  63. - (void)resume;
  64. /**
  65. * @brief 停止播放
  66. */
  67. - (void)stop;
  68. @end