寫網路視頻監視器中的總結 (一)

以下是為了瞭解自己這段時間的學習情況,而進行的總結, 目的是為了完成從某伺服器得到資料,在iOS裝置上進行解析,並完成即時播放的目的。其中,使用到 ffmpeg, GCDAsyncSocket, wireShark工具1. 首先需要實現在本地播放視頻檔案,這裡指的是h264格式的視頻格式。需要採用到ffmpeg來進行解析播放,具體如何配置ffmpeg,我在前面的文章中已經提到。2. 通過GCDAsyncSocket來串連伺服器,並通過wireShark來查看其中傳遞的命令是否正確。遇到兩個問題:

關於viewWithTag的一點說明

通常我們使用viewWithTag如下情形:如果我們用了一個父View,上面放了多個子view, 每個子view都通過從0開始的Tag值來進行標誌,以便於後期在像View上直接使用viewWithTag:tag值來取各個子View而在用[父view viewWithTag:0]取到的view, 發現不是子view, 而是這個父view, 後來才想起蘋果文檔上提到過一次,tag值較小的,如0-100為蘋果保留使用, 而0就是保留著給自己這個view使用的。對於其它的view,

為什麼delegate在聲明屬性的時候要使用assign?

今天一位同事問我為什麼在Objective-C中delegate聲明屬性的時候要使用assign。在網上查了一下資料,歸結為Objective-C中的記憶體管理問題,直接把老外的answer copy了過來: The reason that you avoid retaining delegates is that you need to avoid a retain loop:A creates B A sets itself as B's delegate … A is released

uitabview 自訂選中顏色

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{    UITableViewCell* cell = [tableView cellForRowAtIndexPath:indexPath];    UIView *bgColorView = [[UIViewalloc] init];    [bgColorView

關於Zbar和ZXing這兩個無比強大的二維碼和條碼識別工具

之前做了一些關於一維碼二維碼識別與產生的工作。在這裡總結一下子。顯然做這個我們不會花大量力氣去自己來寫這個識別過程, 這之間可能會包括人工識別方面的工作, 所以為了偷懶,便想到了去網上找這樣的開源工具, 呵呵, 你別說, 還真找到兩個, 即ZBar和ZXing. 去他們的官網一看, 得出以下結論:ZBar可以直接掃二維碼和條碼, ZXing可以直接掃二維碼, 如果要掃條碼,則需要去改改代碼花點功夫了。同樣, ZBar和ZXing的源碼我們也是可以找到的, 只是ZBar的源碼找起來比較費功夫,

自訂title 後導致的座標無法置中 問題解決方案

//Overide the drawing of the background UINavigationBar@implementation UINavigationBar (CustomImage)- (Class)class{    returnNSClassFromString(@"HFNavigationBar");}- (void)drawRect:(CGRect)rect{    UIImage *image = [UIImageimageNamed:@"navigation@2x.

通過UIView尋找UIViewController(Find UIViewController by UIView)

UIView is a subclass of UIResponder. UIResponder lays out the method nextResponder with an implementation that returns nil. UIView overrides this method, as documented in UIResponder (for some reason instead of in UIView) as follows: if the view has

Override的作用

 很簡單,如果想重寫父類的方法,比如toString()方法的話,在方法前面加上@Override  系統可以幫你檢查方法的正確性,@Override public String toString(){...}這是正確的 一旦寫錯 寫成這樣@Override public String tostring(){...}編譯器可以檢測出這種寫法是錯誤的 這樣能保證你的確重寫的方法正確 而如果不加@Override public String tostring(){...}這樣編譯器是不會報錯的 

用Cocoa截取螢幕內容並儲存為圖片

25MAR讓我們來寫一個抓屏程式吧。當然,你知道只要按command+shift+3就可以抓取當前螢幕對吧?本文介紹如何用cocoa程式來實現這一功能。- (NSImage *) captureScreenImageWithFrame: (NSRect) frame{    // 擷取螢幕的圖形連接埠            CGrafPtr screenPort

tabBarItem 設定動畫 animation

- (void)tabBarController:(UITabBarController *)theTabBarController didSelectViewController:(UIViewController *)viewController{   [viewController.tabBarItemsetBadgeValue:@"3"];        NSMutableArray *arrayBt = [NSMutableArrayarray];    for (id tabBt

UserControl 中包含封裝了集合對象的屬性被設計器自動初始化所引起的錯誤!也有關於List的問題

在CSDN上看到了一篇關於UserControl引起的問題,去重現了一下,並進行了一些小結。 自訂 UserControl 中包含封裝了 List <介面> 類型欄位的屬性,編譯後造成引用了該 UserControl 的表單設計器無法顯示!     public partial class UserControl1 : UserControl    {        private List<Student> face;        //[Bindable(false)

NSValue封裝對象指標,CGRect結構體等

@interface NSValue (NSValueUIGeometryExtensions)+ (NSValue *)valueWithPointer:(const void *)pointer;//儲存對象指標+ (NSValue *)valueWithCGPoint:(CGPoint)point;//儲存CGPoint結構體+ (NSValue *)valueWithCGSize:(CGSize)size;//儲存CGSize結構體+ (NSValue

給xcode 的顏色選擇其添加16進位顏色選取器

        由於大部分時候需要使用代碼控制顏色,因此需要知道選取的顏色的十六進位或者RGB表示,以方便代碼使用。這裡提供了一個外掛程式,可以在系統的顏色選擇面板上顯示使用中色彩的十六進位編碼,恰好滿足了要求~下載這個zip包,將包裡的HexColorPicker.colorPicker解壓到至檔案夾 [homefolder]/Library/ColorPickers/

ASIProgressDelegate:實現定製的上傳進度顯示

在ASIHTTPRequest中,要顯示進度跟蹤是很簡單的。只需要使用一個UIProgressView控制項,並簡單地將它設定為request的setUploadProgressDelegate/setDownloadProgressDelegate屬性,以即把showAccurateProgress設為YES就可以了。但有時候我們需要為使用者定製自己的UIProgressView顯示。比如在進度條上方加一個Label顯示當前進度(或者實際的上傳位元組數):這就需要用到ASIProgressDe

設定uitab bar 樣式

/* 設定uitabr 樣式 此方法需要設定了viewControllers 後設定了後調用 tabBar.viewControllers = [NSArray arrayWithObjects:nav1,nav2,nav3,nil]; */-(void) setUITabBarStyle UITabBarController *)tabBar{        for(UIView *viewin tabBar.tabBar.subviews)    {       

世界排名前十的電影

十佳劇情片:1) 肖申克的救贖(刺激1995):男人必看的勵志影片。2) 教父(1、2):經典黑幫片,有此作品,其他同類一概低頭。3)美國往事:整個人生都在裡面。4)天堂電影院:每個男人的童年回 憶, 太經典了。5)無主之城:人家怎麼能拍出這麼牛的電影!6)活著:也許是中國目前最偉大的電影。7) 阿甘正傳:教導所有的人要去寬容別人,傻就是福氣。8) 勇敢的心:民族自尊的好教材,希望大家要愛中國。9) 楚門的世界:探討人的價值和人性根本的奇思怪作。10)

善用 NSAutoreleasePool 節約寶貴記憶體

autorelease自動釋放記憶體,並不會立即把記憶體釋放掉,而是要等到下一個事件周期才會釋放掉。問題是一些資源我們不得不使用autorelease類型,比如作為函數的傳回值,而且系統api及項目是的大部分也都是這麼做的,如果全都依靠我們手動釋放很容易造成記憶體流失。01for (int i = 0; i <= 10000; i ++) {02 03       //建立一個自動釋放池04 05        NSAutoreleasePool *pool =

GCD介紹(一): 基本概念和Dispatch Queue

什麼是GCD?Grand Central Dispatch或者GCD,是一套低層API,提供了一種新的方法來進行並發程式編寫。從準系統上講,GCD有點像NSOperationQueue,他們都允許程式將任務切分為多個單一任務然後提交至工作隊列來並發地或者串列地執行。GCD比之NSOpertionQueue更底層更高效,並且它不是Cocoa架構的一部分。除了代碼的平行執行能力,GCD還提供高度整合的事件控制系統。可以設定控制代碼來回應檔描述符、mach ports(Mach port 用於 OS

解決Xcode4刪除檔案後missing file警告

在用xcode4開發的時候,刪除不用的檔案後, 編譯的時候會有missing file的警告,原因是由於SVN或git造成的。解決方案:1.運行終端,執行命令列進入missing file目錄,然後運行           svn delete nameOfMissingFile           或           git rm nameOfMissingFile  2.刪除隱藏的.svn檔案。    命令列運行           defaults write

總頁數: 61357 1 .... 15476 15477 15478 15479 15480 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.