NSNotification & NSNotificationCenter One to many notification, decoupled between sender and receiver.  Cocoa layer Key-Value Observing One to many observing, coupled between observer and original object.  If want to make particular bindings. Think as an informal protocol.  Can be used as a general observing tool for other libraries.  Can use series of dot notations to observe […]

One to many observing, coupled between observer and original object.  If want to make particular bindings. Think as an informal protocol.  Can be used as a general observing tool for other libraries.  Can use series of dot notations to observe something deep in chain, like “obj1.obj2.obj3” Add observer: – (void)addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options context:(void *)context […]

CF design concepts: CF is programming interfaces library implemented in C language.  It defines opaque types that encapsulate data and functions, as “objects”. Enable sharing data among various frameworks and libraries, by using CF objects. Some degree of OS independent possible by abstract things that implement differently between OSs and standards.  Such as date, number, […]

This is a broad topic. Needs to keep updating. Cocoa/Cocoa Touch can be break up into levels Cocoa /Touch: Objective-C runtime + Foundation Framework + AppKit(/UIKit) Framework Objective-C runtime: library that enables the language feature itself, i.e. dynamic message passing on Obj-C AppKit/UIKit: UI framework Foundation Framework: NS classes, facilities, API to underlying system CoreFoundation […]

Using ffprobe, one can find the information of file. Show the streams information ffprobe -show_streams -i “INPUTFILE” Show all frames information ffprobe -show_frames -print_format csv INPUTFILE | more CSV format headers: media_type= key_frame= pkt_pts= pkt_pts_time= pkt_dts= pkt_dts_time= best_effort_timestamp= best_effort_timestamp_time= pkt_duration= pkt_duration_time= pkt_pos= pkt_size= width= height= pix_fmt= sample_aspect_ratio= pict_type= coded_picture_number= display_picture_number= interlaced_frame= top_field_first= repeat_pict=

On Linux, FFMpeg can stream file to a rtmp server directly. Minimum command is:(auto detect all parameters in header) ffmpeg -re -y -i INPUT_FILE -f flv rtmp://OUTPUT_SERVER Parameter description: -re simulate real-time output, slow down read from file -y overwrite output files without asking -f format(input/output) -vcodec or -codec:v video output codec -s frame size -r […]

Responder is object can respond to events and handle them.  Those objects inherit from UIResponder(iOS) or NSResponder(OSX).  Those objects are mostly view / viewController objects. Responder can accept different messages: Event Message: Key events, Motion Events, etc. Action messages: sent by controls such as buttons and controls when user manipulate them. could have no target. Based […]

Follow

Get every new post delivered to your Inbox.