CameraViewer App

Nov 19, 2013 at 6:58 PM
Hello,

I am currently trying to understand how the CameraViewer application works. My understanding is that it records the video file, writes it to a local directory, and then pushes this file to the cloud. But I am not able to locate where in the CameraViewer project it pushes the video files to the cloud. Does the CameraViewer app interact with the cloud, and if so where in the code does this occur?

Thanks,
Jeremy
Coordinator
Nov 20, 2013 at 1:21 AM
jskim wrote:
Hello,

I am currently trying to understand how the CameraViewer application works. My understanding is that it records the video file, writes it to a local directory, and then pushes this file to the cloud. But I am not able to locate where in the CameraViewer project it pushes the video files to the cloud. Does the CameraViewer app interact with the cloud, and if so where in the code does this occur?

Thanks,
Jeremy
No, the app currently does not push video files to the cloud. We will be updating it to do so soon. However, you can always write your data directly to Azure storage containers by using Azure Storage API - see the page for examples.

Also, can you send me an email message here, I want to understand a little more about your web cam issues from the other thread.
Nov 20, 2013 at 9:18 PM
Hey Danny,

I will send you an email soon about the web cam issues. Because we were not able to get the camera working, we made a basic hack where pushing the record button in the cameraviewer app causes an IStream to be created, and then data is appended to this stream. We instantiate the IStream with the following declaration:
datastream = base.CreateFileStream<StrKey, StrValue>("dumb", false /* remoteSync */)
Our understanding that when we call datastream.append(), it calls the append method in the DataFileStream class. But after putting prints in DataFileStream, it doesn't seem it is calling this append method. Can you direct us to the file where the appropriate append method is implemented?

Thanks,
Jeremy
Nov 21, 2013 at 7:33 PM
Hey Danny,

So I actually resolved my above issue. We were linking in a dll from the wrong location and this was causing the problem. As for getting the actual webcam to work, we still haven't gotten one to work with the cameraviewer app. There is nothing really new to report, all of my issues with this are noted in the other thread. My partner and I are analyzing how HomeOS pushes data to the cloud for a project, so at this point we have given up on using the camera and are using our dummy app instead. If you want to ask any other questions/need me to look at any other logs let me know.

Jeremy
Nov 22, 2013 at 1:11 AM
Hey Danny,

Today I attempted to push some data to the cloud. I created a datastream, appended data to it, and synced it using the code from the given DummyApp. When I do this, it successfully attaches to a container in my Azure account. We can see from the time stamp on the container that it accesses it. Also, in our console we are getting the print statement "Synchronization Complete" and no errors, but it does not write any blobs to the container. Do you know what the issue may be?

Thanks,
Jeremy
Coordinator
Nov 23, 2013 at 12:24 AM
Hi Jeremy,
We are revamping the data storage component; the existing one is a prototype.

We will soon release an improved version of the component.

However, existing version of the code should still sync data to the container. Could you send me your homeos.log via email? It should be in output\data\platform.

Also, are you using your own Azure account, or the default test one?

Danny
Nov 23, 2013 at 12:14 PM
Hey Danny,

We couldn't figure out what was going wrong, so we decided to just delete our build and download a clean version of the code. After downloading the code and reconfiguring it, we are able to push data to our own azure account. I'm not sure what the original problem was, we probably made a change at one point that broke something. But now we have a dummy app that writes data to a datastream and then pushes it to the cloud, which is what we need for our project.

Jeremy