VLC集成,rtmp与rtsp流媒体播放

1. VLC介绍

VLC是一款强大的全平台播放器,支持大多数的音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影音光盘及各类流式协议。
而iOS系统自带的框架支持的格式较少,所以有时候需要在项目中集成VLC框架来进行播放各种不同格式类型的音频、视频文件。


2. 集成

(1) 方法一:使用cocoapods安装

1> 在 Podfile 中写入:
platform :ios, '8.0'
use_frameworks!
pod 'MobileVLCKit'
2> 终端

执行pod install --verbose --no-repo-update(比执行pod install快些)


(2) 方法二:手工集成MobileVLCKit.framework

1> 下载库

通过官网下载地址下载文件,解压之后MobileVLCKit.framework即为需要的库

MobileVLCKit.framework库
2> 导入库

新建工程,导入MobileVLCKit.framework,添加依赖框架:

  • AudioToolbox.framework
  • VideoToolbox.framework
  • CoreMedia.framework
  • CoreVideo.framework
  • CoreAudio.framework
  • AVFoundation.framework
  • MediaPlayer.framework
  • libiconv.2.4.0.tbd
  • libc++.1.tbd
  • libz.1.tbd
  • libbz2.1.0.5.tbd
  • libstdc++.6.0.9.tbd(iOS12已移除libstdc++,通过下载链接下载)
依赖框架
3> 配置设置

另外Enable Bitcode修改为No

Enable Bitcode修改为No

否则使用VLCMediaPlayer类的时候会报错:

Error

3. VLC使用

#import "ViewController.h"
#import 

@interface ViewController ()
@property (nonatomic, strong) VLCMediaPlayer *player;
@end

@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    // 1. 初始化
    self.player = [[VLCMediaPlayer alloc] init];

    // 2. 设置播放的view
    self.player.drawable = self.view;

    // 3. 设置播放资源路径
    // NSString *urlStr = @"rtmp://hzrtmp01.ys7.com:1935/livestream/721874601_1_1_1_0";
    NSString *urlStr = @"rtsp://admin:[email protected]:30554/h264/ch3/main/av_stream";
    NSURL *remoteUrl = [NSURL URLWithString:urlStr];
    self.player.media = [VLCMedia mediaWithURL:remoteUrl];

    // 4. 开始播放
    [self.player play];
}
@end

你可能感兴趣的:(VLC集成,rtmp与rtsp流媒体播放)