AVPlayerで現在の再生時間(ミリ秒単位のCMTime)を取得するにはどうすればよいですか?

ディーパックチャウダリー

現在の再生値を秒単位で取得していますが、ミリ秒単位で必要です。currentTime.value /currentTime.scaleを試してみました。しかし、正確な値は得られませんでした。

CMTime currentTime = vPlayer.currentItem.currentTime; //playing time
CMTimeValue tValue=currentTime.value;
CMTimeScale tScale=currentTime.timescale;

NSTimeInterval time = CMTimeGetSeconds(currentTime);
NSLog(@"Time :%f",time);//This is in seconds, it misses decimal value double shot=(float)tValue/(float)tScale;
shotTimeVideo=[NSString stringWithFormat:@"%.2f",(float)tValue/(float)tScale];

CMTime currentTime = vPlayer.currentItem.currentTime; //playing time
CMTimeValue tValue=currentTime.value;
CMTimeScale tScale=currentTime.timescale;

NSTimeInterval time = CMTimeGetSeconds(currentTime);
NSLog(@"Time :%f",time);//This is in seconds, it misses decimal value   
double shot=(float)tValue/(float)tScale;
shotTimeVideo=[NSString stringWithFormat:@"%.2f", (float)tValue/(float)tScale];
R.はい

さて、まず第一に、あなたが望む値は秒ではなくミリ秒です

したがって、CMTimeGetSeconds(<#CMTime time#>)
使用して秒を取得できます。ミリ秒が必要な場合は、floatまたはdouble値にseconds /1000.fを使用します。

CMTimeの計算には、CMTimeメソッド
CMTimeMultiplyByRatio(<#CMTime time#>、<#int32_tmultiplier#>、<#int32_t divisor#>)
を使用します-> CMTimeMultiplyByRatio(yourCMTimeValue、1、1000)

Appleのドキュメント

@function   CMTimeMultiplyByRatio
@abstract   Returns the result of multiplying a CMTime by an integer, then dividing by another integer.
@discussion The exact rational value will be preserved, if possible without overflow.  If an overflow
            would occur, a new timescale will be chosen so as to minimize the rounding error.
            Default rounding will be applied when converting the result to this timescale.  If the
            result value still overflows when timescale == 1, then the result will be either positive
            or negative infinity, depending on the direction of the overflow.

            If any rounding occurs for any reason, the result's kCMTimeFlags_HasBeenRounded flag will be
            set.  This flag will also be set if the CMTime operand has kCMTimeFlags_HasBeenRounded set.

            If the denominator, and either the time or the numerator, are zero, the result will be
            kCMTimeInvalid.  If only the denominator is zero, the result will be either kCMTimePositiveInfinity
            or kCMTimeNegativeInfinity, depending on the signs of the other arguments.

            If time is invalid, the result will be invalid. If time is infinite, the result will be
            similarly infinite. If time is indefinite, the result will be indefinite.                               


@result     (time * multiplier) / divisor

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Haxeで現在の時刻をミリ秒単位で取得するにはどうすればよいですか?

分類Dev

実行時間をミリ秒単位のssmsで表示するにはどうすればよいですか?

分類Dev

C ++でシステムの稼働時間をミリ秒単位で取得するにはどうすればよいですか?

分類Dev

PHPで秒単位の時間差を取得するにはどうすればよいですか?

分類Dev

Javaで秒単位のUTC時間を取得するにはどうすればよいですか?

分類Dev

Windows の稼働時間を秒単位で取得するにはどうすればよいですか?

分類Dev

Swiftで現在の時刻を秒単位で取得し、プレーヤーの継続時間を追加するにはどうすればよいですか?

分類Dev

AVPlayerで現在の再生時間と合計再生時間を取得するにはどうすればよいですか?

分類Dev

Android Shellで現在のUnix時間をナノ秒単位で取得するにはどうすればよいですか?

分類Dev

LocalDateTimeを使用してJava8の文字列からミリ秒単位で長い時間を作成するにはどうすればよいですか?

分類Dev

Goで関数の時間を計測し、その実行時間をミリ秒単位で返すにはどうすればよいですか?

分類Dev

Pythonで2つの日時オブジェクト間のミリ秒単位の違いを見つけるにはどうすればよいですか?

分類Dev

ミリ秒単位の長いエポック時間からJava 8 LocalDateを作成するにはどうすればよいですか?

分類Dev

単位ミリ秒なしでコマンドPINGから応答時間を取得するにはどうすればよいですか?

分類Dev

dqlの2つのタイムスタンプ間の経過時間を秒単位で取得するにはどうすればよいですか?

分類Dev

ミリ秒単位のUTC時間でフォーマットされた時間を出力するmoment.jsを取得するにはどうすればよいですか?

分類Dev

この形式で表現された時間の時差をPythonで分単位で取得するにはどうすればよいですか?

分類Dev

C ++(MSVS)のエポックからのローカル現在時刻を秒単位で取得するにはどうすればよいですか?

分類Dev

jQueryで2つのタイムスタンプ間の時差を秒単位で取得するにはどうすればよいですか?

分類Dev

Pythonで10分の1ミリ秒で時間を丸めるにはどうすればよいですか?

分類Dev

iPhone:現在のミリ秒を取得するにはどうすればよいですか?

分類Dev

iPhone:現在のミリ秒を取得するにはどうすればよいですか?

分類Dev

iPhone:現在のミリ秒を取得するにはどうすればよいですか?

分類Dev

Androidの文字列からミリ秒単位で時間を取得するには?

分類Dev

vala:これはミリ秒単位で現在の時刻を取得する正しい方法ですか?

分類Dev

ミリ秒の精度でAPI呼び出し間の絶対時間差を取得するにはどうすればよいですか?

分類Dev

ミリ秒単位で時間を表すLongsのリストがあります。Longsを表示する前にMM:SS.LLLにフォーマットするListViewを作成するにはどうすればよいですか?

分類Dev

ビデオの長さを秒単位で取得するにはどうすればよいですか?

分類Dev

asp.netで秒単位のDatetimepickerを取得するにはどうすればよいですか?

Related 関連記事

  1. 1

    Haxeで現在の時刻をミリ秒単位で取得するにはどうすればよいですか?

  2. 2

    実行時間をミリ秒単位のssmsで表示するにはどうすればよいですか?

  3. 3

    C ++でシステムの稼働時間をミリ秒単位で取得するにはどうすればよいですか?

  4. 4

    PHPで秒単位の時間差を取得するにはどうすればよいですか?

  5. 5

    Javaで秒単位のUTC時間を取得するにはどうすればよいですか?

  6. 6

    Windows の稼働時間を秒単位で取得するにはどうすればよいですか?

  7. 7

    Swiftで現在の時刻を秒単位で取得し、プレーヤーの継続時間を追加するにはどうすればよいですか?

  8. 8

    AVPlayerで現在の再生時間と合計再生時間を取得するにはどうすればよいですか?

  9. 9

    Android Shellで現在のUnix時間をナノ秒単位で取得するにはどうすればよいですか?

  10. 10

    LocalDateTimeを使用してJava8の文字列からミリ秒単位で長い時間を作成するにはどうすればよいですか?

  11. 11

    Goで関数の時間を計測し、その実行時間をミリ秒単位で返すにはどうすればよいですか?

  12. 12

    Pythonで2つの日時オブジェクト間のミリ秒単位の違いを見つけるにはどうすればよいですか?

  13. 13

    ミリ秒単位の長いエポック時間からJava 8 LocalDateを作成するにはどうすればよいですか?

  14. 14

    単位ミリ秒なしでコマンドPINGから応答時間を取得するにはどうすればよいですか?

  15. 15

    dqlの2つのタイムスタンプ間の経過時間を秒単位で取得するにはどうすればよいですか?

  16. 16

    ミリ秒単位のUTC時間でフォーマットされた時間を出力するmoment.jsを取得するにはどうすればよいですか?

  17. 17

    この形式で表現された時間の時差をPythonで分単位で取得するにはどうすればよいですか?

  18. 18

    C ++(MSVS)のエポックからのローカル現在時刻を秒単位で取得するにはどうすればよいですか?

  19. 19

    jQueryで2つのタイムスタンプ間の時差を秒単位で取得するにはどうすればよいですか?

  20. 20

    Pythonで10分の1ミリ秒で時間を丸めるにはどうすればよいですか?

  21. 21

    iPhone:現在のミリ秒を取得するにはどうすればよいですか?

  22. 22

    iPhone:現在のミリ秒を取得するにはどうすればよいですか?

  23. 23

    iPhone:現在のミリ秒を取得するにはどうすればよいですか?

  24. 24

    Androidの文字列からミリ秒単位で時間を取得するには?

  25. 25

    vala:これはミリ秒単位で現在の時刻を取得する正しい方法ですか?

  26. 26

    ミリ秒の精度でAPI呼び出し間の絶対時間差を取得するにはどうすればよいですか?

  27. 27

    ミリ秒単位で時間を表すLongsのリストがあります。Longsを表示する前にMM:SS.LLLにフォーマットするListViewを作成するにはどうすればよいですか?

  28. 28

    ビデオの長さを秒単位で取得するにはどうすればよいですか?

  29. 29

    asp.netで秒単位のDatetimepickerを取得するにはどうすればよいですか?

ホットタグ

アーカイブ