首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏freesan44

    iOS15 推送动态语音播报解决方案

    enumerateObjectsUsingBlock:^(id _Nonnull audioFileURL, NSUInteger idx, BOOL * _Nonnull stop) { //获取音频素材 AVURLAsset *audioAsset1 = [AVURLAsset assetWithURL:[NSURL fileURLWithPath:audioFileURL]]; //音频轨道 tmpindex]; NSString * mp3Name = [audioFileURL lastPathComponent]; AVURLAsset *audioAsset=[AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:audioFileURL] options:nil]; /

    1.5K40编辑于 2022-04-02
  • 来自专栏日常技术分享

    iOS 获取网络视频第一帧

    videoURL]; __block UIImage *videoImage; dispatch_async(dispatch_get_global_queue(0, 0), ^{ AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:[NSURL URLWithString:url] options:nil]; NSParameterAssert

    2.5K10发布于 2020-12-28
  • 来自专栏陈满iOS

    iOS网络视频下载与播放:两种视频URL格式(m3u8 & mp4)(AVFoundation框架篇·以网易视频为例)

    ; AVURLAsset* asset = [[AVURLAsset alloc] initWithURL:streamURL options:@{ AVURLAssetPreferPreciseDurationAndTimingKey NSLog(@"The asset's tracks were not loaded:\n%@", error); } }); }]; } 其中 AVURLAsset * asset = [[AVURLAsset alloc] initWithURL:streamURL options:@{ AVURLAssetPreferPreciseDurationAndTimingKey : @YES }]; 的AVURLAsset属于AVFoudation框架: AVFoudation>Headers>AVAsset.h 运行的时候,查看streamURL实际数据: (lldb

    10.1K30发布于 2018-09-10
  • 来自专栏freesan44

    iOS15 推送动态语音播报解决方案

    enumerateObjectsUsingBlock:^(id _Nonnull audioFileURL, NSUInteger idx, BOOL * _Nonnull stop) { //获取音频素材 AVURLAsset *audioAsset1 = [AVURLAsset assetWithURL:[NSURL fileURLWithPath:audioFileURL]]; //音频轨道 tmpindex]; NSString * mp3Name = [audioFileURL lastPathComponent]; AVURLAsset *audioAsset=[AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:audioFileURL] options:nil]; /

    1.5K20编辑于 2021-12-29
  • 来自专栏freesan44

    iOS 多条音频拼接为一条音频进行播放

    enumerateObjectsUsingBlock:^(id _Nonnull audioFileURL, NSUInteger idx, BOOL * _Nonnull stop) { //获取音频素材 AVURLAsset *audioAsset1 = [AVURLAsset assetWithURL:[NSURL fileURLWithPath:audioFileURL]]; //音频轨道

    1K20发布于 2021-11-11
  • 来自专栏落影的专栏

    AVFoundation详细解析(一)视频合并与混音

    概念 AVPlayer 视频播放类,本身不显示视频,需创建一个AVPlayerLayer层,添加到视图 AVAssetTrack 资源轨道,包括音频轨道和视频轨道 AVAsset 媒体信息 AVURLAsset 核心思路 分别加载多个AVURLAsset,用GCD保证异步加载完成后回调,调用Editor类配置轨道信息、视频操作指令和音频指令参数。 ? 具体细节 流程图如下 ?

    2.1K60发布于 2018-04-27
  • 来自专栏freesan44

    iOS 多条音频拼接为一条音频进行播放

    enumerateObjectsUsingBlock:^(id _Nonnull audioFileURL, NSUInteger idx, BOOL * _Nonnull stop) { //获取音频素材 AVURLAsset *audioAsset1 = [AVURLAsset assetWithURL:[NSURL fileURLWithPath:audioFileURL]]; //音频轨道

    95510编辑于 2021-12-06
  • 来自专栏关键帧Keyframe

    音视频面试题集锦(第 13 期)

    AVMutableComposition 对象 AVMutableComposition *composition = [AVMutableComposition composition]; // 将视频文件加载到 AVURLAsset 对象中 NSURL *videoURL = [[NSBundle mainBundle] URLForResource:@"your_video" withExtension:@"mp4"]; AVURLAsset *videoAsset = [AVURLAsset URLAssetWithURL:videoURL options:nil]; // 将视频的前 3 秒进行加速处理 CMTime startTime

    67810编辑于 2024-01-05
  • 来自专栏落影的专栏

    GPUImage详细解析(八)视频合并混音

    AVAssetReaderTrackOutput 读取每帧的CMSampleBufferRef AVAssetTrack 视频轨迹,视频来源 AVAsset 主要用于获取多媒体信息,抽象类不能直接使用 AVURLAsset AVAsset的子类,根据URL路径创建包含媒体信息的AVURLAsset对象 AVPlayerItem媒体资源管理对象,管理视频的基本信息和状态 2、GCD dispatch_group_notify

    2.3K50发布于 2018-04-27
  • 来自专栏音视频咖

    从QQ音乐开发,探讨如何利用腾讯云SDK在直播中加入视频动画

    如果说只播放本地文件,可以采用H264编码的mp4+AVURLAsset解码的方式。因为目前还没有流式播放的需求,而设计同学直接给到的是一个mp4文件,所以后者则看起来更合理。 AVAssetReader 解码视频 使用AVAssetReader解码出yuv比较简单,下面直接贴出代码:     AVURLAsset *asset = [AVURLAsset URLAssetWithURL

    3.4K10发布于 2018-09-19
  • 来自专栏sweet_iOS

    AVFoundation框架解析看这里(6)- AVAssetExportSession

    outputName: 转码后视频的名称 completedBlock: 转码完成后的回调 */ class func transcodingVideo(asset: AVURLAsset startTime: 起始时间 durationTime: 裁剪时长 completedBlock: 裁剪完成后的回调 */ class func tailoringVideo(asset: AVURLAsset

    1.8K20发布于 2020-12-23
  • 来自专栏APP自动化测试

    iOS实现视频和图片的上传

    , 返回UIImage //需要导入AVFoundation.h - (UIImage*) getVideoPreViewImageWithPath:(NSURL *)videoPath { AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoPath options:nil]; AVAssetImageGenerator *gen

    2.6K71发布于 2019-10-15
  • 来自专栏sweet_iOS

    AVFoundation框架解析看这里(7)- AVAssetImageGenerator

    返回AVAssetImageGenerator,能够取消 */ @discardableResult class func splitVideo(asset: AVURLAsset

    1.6K30发布于 2020-12-23
  • 来自专栏進无尽的文章

    多媒体-图片、音频、视频压缩

    outputURL:(NSURL*)outputURL completeHandler:(void (^)(AVAssetExportSession*))handler { AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:inputURL options:nil]; AVAssetExportSession *exportSession =

    2.1K10发布于 2018-09-12
  • 来自专栏慎独

    AVPlayer初体验之边下边播与视频缓存

    基本原理 AVUrlAsset在请求自定义的URLScheme资源的时候会通过AVAssetResourceLoader实例来进行资源请求。 它是AVUrlAsset的属性,声明如下: var resourceLoader: AVAssetResourceLoader { get } 而AVAssetResourceLoader请求的时候会把相关请求 //首先判断是否有缓存,如果没有缓存才走下面的步骤,有缓存直接从`file://`读取 let asset = AVURLAsset(url: urlWithCustomScheme) //urlWithCustomScheme

    7.9K51发布于 2018-06-01
  • 来自专栏落影的专栏

    iOS音视频播放(Audio Unit播放音频+OpenGL ES绘制视频)

    资源加载:是用AVURLAsset加载资源文件,再创建资源读取器AVAssetReader,然后附加音频读取接口mReaderAudioTrackOutput和视频读取接口mReaderVideoTrackOutput

    3K90发布于 2018-04-27
  • 来自专栏MapleYe

    【iOS】(二)GPUImage的Source,滤镜链的源头--万恶之源

    copyNextSampleBuffer方法,获取CMSampleBufferRef,拿到了SampleBuffer后,就跟上面GPUImageVideoCamera对SampleBuffer的处理方法一样 通过NSURL加载,生成AVURLAsset

    1.5K40发布于 2020-03-31
  • 来自专栏落影的专栏

    iOS开发-OpenGL ES实践教程(一)

    AVPlayer的使用实例 AVAsset *movieAsset = [AVURLAsset URLAssetWithURL:sourceMovieURL options:nil];

    2.1K110发布于 2018-04-27
  • 来自专栏用户4669341的专栏

    IOS开发:仿抖音短视频系统生成webp动图客户端解决方案

    alloc] initWithType:YYImageTypeWebP]; gifEncoder.loopCount=0; gifEncoder.quality=0.8; AVURLAsset

    2K00发布于 2019-03-01
  • 来自专栏sweet_iOS

    AVFoundation框架解析看这里(2)- 媒体捕捉与视频拍摄

    videoPreviewContainerView) videoPreviewContainerView.backgroundColor = .black let asset = AVURLAsset

    1.5K20发布于 2020-12-23
领券