added video rendering libraries and renderer code. still not functioning

This commit is contained in:
Diego Waxemberg
2014-01-18 13:58:19 -05:00
parent 87d8d117c1
commit 029d3b0a97
298 changed files with 70432 additions and 56 deletions

View File

@@ -31,59 +31,42 @@ static int BUFFER_LENGTH = 131072;
}
while ([inStream streamStatus] != NSStreamStatusAtEnd)
{
unsigned int len = 0;
NSLog(@"Reading File\n");
NSLog(@"stream pointer: %p", inStream);
NSLog(@"self pointer: %p", self);
NSLog(@"byte buffer pointer: %p", self.byteBuffer);
len = [(NSInputStream *)inStream read:self.byteBuffer maxLength:BUFFER_LENGTH];
if (len)
{
NSLog(@"len: %u\n", len);
BOOL firstStart = false;
for (int i = 0; i < len - 4; i++) {
if (self.byteBuffer[i] == 0 && self.byteBuffer[i+1] == 0
&& self.byteBuffer[i+2] == 0 && self.byteBuffer[i+3] == 1)
{
NSLog(@"i: %d", i);
unsigned int len = 0;
//NSLog(@"Reading File\n");
//NSLog(@"stream pointer: %p", inStream);
//NSLog(@"self pointer: %p", self);
//NSLog(@"byte buffer pointer: %p", self.byteBuffer);
len = [(NSInputStream *)inStream read:self.byteBuffer maxLength:BUFFER_LENGTH];
if (len)
{
NSLog(@"len: %u\n", len);
BOOL firstStart = false;
for (int i = 0; i < len - 4; i++) {
self.offset++;
if (firstStart)
if (self.byteBuffer[i] == 0 && self.byteBuffer[i+1] == 0
&& self.byteBuffer[i+2] == 0 && self.byteBuffer[i+3] == 1)
{
// decode the first i-1 bytes
[self.decoder decode:self.byteBuffer length:i-1];
[inStream setProperty:[[NSNumber alloc] initWithInt:self.offset-4] forKey:NSStreamFileCurrentOffsetKey];
self.offset -= 4;
} else
{
firstStart = true;
NSLog(@"i: %d", i);
if (firstStart)
{
// decode the first i-1 bytes
[self.decoder decode:self.byteBuffer length:i-1];
[inStream setProperty:[[NSNumber alloc] initWithInt:self.offset-4] forKey:NSStreamFileCurrentOffsetKey];
self.offset -= 4;
break;
} else
{
firstStart = true;
}
}
}
}
}
else
{
NSLog(@"No Buffer!");
}
}
}
- (void)stream:(NSStream *)stream handleEvent:(NSStreamEvent)eventCode
{
switch (eventCode)
{
case NSStreamEventHasBytesAvailable:
else
{
break;
NSLog(@"No Buffer!");
}
default:
{
NSLog(@"eventCode: %u", eventCode);
}
}
}
@end

View File

@@ -0,0 +1,17 @@
//
// VideoRenderer.h
// Limelight-iOS
//
// Created by Diego Waxemberg on 1/18/14.
// Copyright (c) 2014 Diego Waxemberg. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "VideoDecoder.h"
@interface VideoRenderer : NSOperation
@property UIView* renderTarget;
@property VideoDecoder* decoder;
- (id) initWithTarget:(UIView*)renderTarget;
@end

View File

@@ -0,0 +1,29 @@
//
// VideoRenderer.m
// Limelight-iOS
//
// Created by Diego Waxemberg on 1/18/14.
// Copyright (c) 2014 Diego Waxemberg. All rights reserved.
//
#import "VideoRenderer.h"
@implementation VideoRenderer
- (void)main
{
while (true)
{
[self.renderTarget drawRect:CGRectMake(0, 0, 0, 0)];
}
}
- (id) initWithTarget:(UIView *)renderTarget
{
self = [super init];
self.renderTarget = renderTarget;
return self;
}
@end