简体   繁体   English

使用MPMoviePlayerController的seekToTime

[英]seekToTime using MPMoviePlayerController

I have used MPMoviePlayerController for my project, but suddenly I realize that I cannot jump accurately to portions of my video, by simply setting the setCurrentPlaybackTime value to 10.2 secs. 我在项目中使用了MPMoviePlayerController,但是突然我意识到,仅将setCurrentPlaybackTime值设置为10.2秒,就无法准确跳到视频的某些部分。

Is there a way to use seekToTime with an MPMoviePlayerController object, or will I have to rewrite my whole code using AVPlayer? 有没有一种方法可以将seekToTime与MPMoviePlayerController对象一起使用,还是必须使用AVPlayer重写整个代码?

I found an interim solution to re-encode the videos with more frequent I frames. 我找到了一种临时解决方案,可以使用更频繁的I帧对视频进行重新编码。

#Check number of i frames
ffprobe -show_frames "First video.mp4" 2>/dev/null |grep  "pict_type=I"|wc -l

#encode by increasing frequency of i frames
ffmpeg -i "First video.mp4" -g 15 "First - video-1.mp4"

I am hopeful that there is some AVFoundation expert out there who will give me a code snippet to hook into seekToTime from an MPMoviePlayerController object. 我希望那里有一些AVFoundation专家,他们会给我一个代码段,以从MPMoviePlayerController对象插入seekToTime。 ;-) ;-)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM