AVPlayer 재생 상태 판단
2032 단어 오디오 비디오
currentItem
.typedef NS_ENUM(NSInteger, AVPlayerItemStatus) {
///
AVPlayerItemStatusUnknown,
/// ( )
AVPlayerItemStatusReadyToPlay,
///
AVPlayerItemStatusFailed
};
1. 우선 AVPlayer rate keyPath 감청
status==AVPlayerItemStatusReadyToPlay를 직접 판단하면 정지 상태가 재생으로 판단될 수도 있습니다.그래서 AVPlayer에 있는 rate 속성을 사용해보도록 하겠습니다.
/*!
@property rate
@abstract Indicates the desired rate of playback; 0.0 means "paused", 1.0 indicates a desire to play at the natural rate of the current item.
@discussion
Setting the value of rate to 0.0 pauses playback, causing the value of timeControlStatus to change to AVPlayerTimeControlStatusPaused.
Setting the rate to a non-zero value causes the value of timeControlStatus to become either AVPlayerTimeControlStatusWaitingToPlayAtSpecifiedRate or AVPlayerTimeControlStatusPlaying, depending on whether sufficient media data has been buffered for playback to occur and whether the player's default behavior of waiting in order to minimize stalling is permitted. See discussion of AVPlayerTimeControlStatus for more details.
AVPlayer can reset the desired rate to 0.0 when a change in overall state requires playback to be halted, such as when an interruption occurs on iOS, as announced by AVAudioSession, or when the playback buffer becomes empty and playback stalls while automaticallyWaitsToMinimizeStalling is NO.
The effective rate of playback may differ from the desired rate even while timeControlStatus is AVPlayerTimeControlStatusPlaying, if the processing algorithm in use for managing audio pitch requires quantization of playback rate. For information about quantization of rates for audio processing, see AVAudioProcessingSettings.h. You can always obtain the effective rate of playback from the currentItem's timebase; see the timebase property of AVPlayerItem.
*/
@property (nonatomic) float rate;
그럼 저희는 레이트==0.0만 판단하면 돼요.0이면 멈추고 아니면 틀어.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ffmpeg 소스 분석의 4 -----avformatopen_input() 아래전편에서 Initinput에서 미디어 파일을 열면 나머지 절차를 분석합니다.코드 보기 자 avprobe_input_buffer(): 이 함수에 av 사용probe_input_format2에서 av 를 호출했습니다pr...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.