vlc | branch: master | David Fuhrmann <[email protected]> | Mon Oct  3 
12:45:03 2016 +0200| [68cd94267953ad93b77700b17e31e055e817d117] | committer: 
David Fuhrmann

videotoolbox: Use NSNumber instead of NSString, simplify

There is no need to do number --> string --> number conversions.
Also simplify code and deindent.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=68cd94267953ad93b77700b17e31e055e817d117
---

 modules/codec/videotoolbox.m | 28 +++++++++++-----------------
 1 file changed, 11 insertions(+), 17 deletions(-)

diff --git a/modules/codec/videotoolbox.m b/modules/codec/videotoolbox.m
index b21e0cc..1e90a5d 100644
--- a/modules/codec/videotoolbox.m
+++ b/modules/codec/videotoolbox.m
@@ -1257,34 +1257,28 @@ static void DecoderCallback(void 
*decompressionOutputRefCon,
         return;
     }
 
-    if (imageBuffer == nil)
-        return;
-
     if (infoFlags & kVTDecodeInfo_FrameDropped) {
         msg_Dbg(p_dec, "decoder dropped frame");
-        if (imageBuffer != nil)
+        if (imageBuffer)
             CFRelease(imageBuffer);
-        imageBuffer = nil;
         return;
     }
 
-    NSString *timeStamp = nil;
+    if (!imageBuffer)
+        return;
 
-    if (CMTIME_IS_VALID(pts))
-        timeStamp = [[NSNumber numberWithLongLong:pts.value] stringValue];
-    else {
+    if (!CMTIME_IS_VALID(pts)) {
         msg_Dbg(p_dec, "invalid timestamp, dropping frame");
         CFRelease(imageBuffer);
         return;
     }
 
-    if (timeStamp) {
-        id imageBufferObject = (__bridge id)imageBuffer;
-        @synchronized(p_sys->outputTimeStamps) {
-            [p_sys->outputTimeStamps addObject:timeStamp];
-        }
-        @synchronized(p_sys->outputFrames) {
-            [p_sys->outputFrames setObject:imageBufferObject forKey:timeStamp];
-        }
+    NSNumber *timeStamp = [NSNumber numberWithLongLong:pts.value];
+    id imageBufferObject = (__bridge id)imageBuffer;
+    @synchronized(p_sys->outputTimeStamps) {
+        [p_sys->outputTimeStamps addObject:timeStamp];
+    }
+    @synchronized(p_sys->outputFrames) {
+        [p_sys->outputFrames setObject:imageBufferObject forKey:timeStamp];
     }
 }

_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to