Detecting the optimal upload bandwidth of cam video stream (Dynamic Bandwidth Detection Approach)

Hello folks,
i am discovering the wide world of adobe technologies and i am impressed how seamless all is working.
Anyway i have a tricky problem, at least it seems tricky to me. Here we go: i build up a client (camera+audio conferencing) streaming its camera right to my server (red5). Every client can see the camera streams of each connected particpant. So far so good all is working as expected, we can call this a conferencing solution. Now i would like to improve that by implementing some kind of automatic bandwidth detection in order to adjust the video resolution depending on the current bandwidth "situation" of every participant. Some might have stronger upload bandwidth, some might have a bad or even too low upload bandwidth to even up-stream their video. My client should be able to handle them individually. Those clients who have a good upload bandwidth should be able to up-stream their video in the most high resolution as possible regarding their bandwidth. For those clients having a bad upload connection i assume to reduce their video resolution automatically. The aim behind this automatic bandwidth detection should be to give the most priority to the audio streaming by taking care to not overhelming the bandwidth with heavy camera usage.
I know there is upload speed tests (onBWCheck, etc), but i assume this test is annoying for the participants as well as they are not reflecting dynamic changes.
So lets say i start with a default camera resolution of 640 x 480 px for every client. What i need to know is in general two informtion in order to judge about the current bandwidth is enough for the currently up-streamed camera video:
1) the actual bandwidth used for the up-streaming camera video (based on specific resolution, quality and fps) which is of course dynamicly changing
2) the max. needed bandwidth which is necessary to perfectly up-stream the camera video regarding the specific resolution, quality and fps of the camera settings
So here is my current solutions:
1) the actual bandwidth: every second the currentBytesPerSecond() method of the NetStreamInfo object is of my uploading stream is called to get the currently used bandwidth speed (http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetStreamInfo .html#currentBytesPerSecond). The documentation says about the currentBytesPerSecond() method: Specifies the rate at which the NetStream buffer is filled in bytes per second. I understood from that phrase that literally this is the amount of bytes filled into the network depending on the current network situation. I tested this by using bandwidth limitation and in fact the currentBytesPerSecond() returns the dynamicly changed amount of bytes sent through the network. So thats pretty OK.
2) the max. needed bandwidth: here i struggle. I have three principal ideas to know how much bytes/second are max. needed to up-stream the camera video to the server in a proper way:
* either by experience, which means i manually make several tests to know the max. bytes/second needed for every possible specific resolution, quality, fps (i discovered that different cameras can even produce different results with the same camera settings!)
* calculate the needed bytes/second (actually i use the H246 codec)
* or finally the most crazy but maybe most proper solution: beside the up-stream to the server the client streams additionally to the same client application over the localhost network. I find this last attempt the most interesting because it gives very practicaly accurate result how much bytes must be send because almost the bandwidth of the network through the internet isnt used either. The client sends a stream to himself over the internal network IP (localhost, 127.0.0.1). To achieve this i tried to let the NetConnection being connected to localhost and null and publish the video. But the stream didnt worked. Here is my code:
          private function init():void {
                nc = new NetConnection();
                nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
                nc.connect(null);
                ns = new NetStream(nc);
                ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
                ns.client = {};
                var camera:Camera = Camera.getCamera();
                if (camera) {
                    videoDisplay.attachCamera(camera);
                } else {
                    Alert.show("You don't seem to have a camera.");
                ns.attachCamera(camera);
                ns.publish("streamname");
                mainTimer.addEventListener (TimerEvent.TIMER, onMainTimerTickHandler);
                mainTimer.start();
            private function onMainTimerTickHandler (evt:TimerEvent): void
                info.text += Number(ns.info.currentBytesPerSecond / 1000).toFixed(2) + " kBytes (OUT)\n";
            private function netStatusHandler(event:NetStatusEvent):void {
                info.text += event.info.code+"\n";
The result is a connection success, but the stream didnt send any data due to the fact that ns.info.currentBytesPerSecond returns 0. Also strange is that the NetSteam or NetConnection didn't return any error.
So folks here i struggle and i ask does anyone out there have any hints or ideas how to solve this tricky one?
Thanks in advance,
Markus

Thanks,I have read that article.  Based on that article the NetStreamInfo.maxBytesPerSecond is not an accurate measurement to base dynamic switching on. This seems to be the basis of the bitrate switching in both the longtail player, and the adobe examples that I have tried.   That article suggests using the dropped frames property, in conjunciton with bufferlength to determine if switching is neccessary.  Unfortunately I can't seem to find a player online which handles this successfully.  That being said, I can't believe I'm the only person trying to implement dynamic bitrate switching for live streams so surely there are some players out there which can do this successfully?  If anyone knows of any code available which does this successfully I would appreciate knowing where!  The examples provided by Adobe https://www.adobe.com/cfusion/entitlement/index.cfm?e=fms35 unfortunately don't work either.

Similar Messages

  • .Mov files in CC : The File Has no Audio or Video Streams

    I recently updated premier to CC , since i have issues iimporting any .mov files at all.
    The specific ones Im trying for my current project are exports from AE , rendered lossless animation .mov , worked fine in CS6 , will play in quicktime and other generic's but always getting the The FIle Has no Audio or Video Streams message when trying to import into a project.
    Quicktime is updated so I can't understand why the won't play, is this a CC bug ?
    i go back to cs6 on my other comp they open fine...
    Ive seen a few topics on this none with a resolution and most of those where from cam's, this is an export from AE, anyone able to help this is stopping me from working atm ......
    troy

    I can verify that Apple screen recordings without audio do not import into any Adobe premeier.
    Details on screen recording from Gspot v2.70a:
    H.264
    qt  : Apple QuickTime (.MOV/QT)
    File Type: QuickTime (.MOV)
    Mime Type: video/quicktime
    Len: 1:03.083
    Frms: 1,521
    Qf: 0.153
    Frames/s: 20.000
    wx: 1280 x 800
    sar: 1.600 (8:5)
    However Apple (MAC OSX) screen recordings WITH audio will import.
    I would think this should be fixable with hotfixes...
    If you (adobe staff) have access to macbook pros 2012 or 2013 models, open quick time pro, do a screen recording, make sure no audio is recording, just your screen movements.. then export to 1080p video (mov is only option).. then on a windows PC try to import that file into adobe premiere. The file will play perfectly fine natively in windows with any player so long as a H264 decoder is available on that system... the problem here is Adobe Premiere. Not the users system.
    Edit:
    To help those with this issue.. just make sure when you render your mov that you have ANY kind of audio in it.. and just remove the audio track once imported into premiere. I know it's frustrating and you would think something as simple as not having an audio track wouldn't break premiere but alas... we have to work around the shortcomings until they decide to fix it.. just like the VFR issue in premiere.

  • Need help .. 4g usb modem .. application installed but cannot detect the usb modem .. mobily network interface installed but cannot detect the unit

    need help .. 4g usb modem .. application installed but cannot detect the usb modem .. mobily network interface installed but cannot detect the unit

    When you contacted the modem manufaturer what did they have to say?

  • Premiere Pro CS6 importing .mp4 = "The file has no audio or video streams."

    Hi,
    When I import an MP4 clip into Adobe Premiere Pro CS6, I get the following message:
    "File Import Failure
    151_0010_01.mp4
    Error Message
    The file has no audio or video streams."
    I have the latest Quicktime, and I have reinstalled Premiere Pro CS6 a few times already.  If anyone knows a fix for this, I would greatly appreciate it.  My system and clip info are found below.  Thank you, Robert.
    OPERATING SYSTEM
    Win 7 Ultimate 64bit
    CLIP INFO
    Complete name                         \BPAV\CLPR\151_0009_01\151_0009_01.MP4
    Format                                   : MPEG-4
    Commercial name                    : XDCAM EX 35
    Format profile                         : Base Media / Version 2
    Codec ID                                : mp42
    File size                                : 1.76 GiB
    Duration                                 : 7mn 5s
    Overall bit rate mode                 : Variable
    Overall bit rate                         : 35.6 Mbps
    Encoded date                             : UTC 2009-07-19 04:22:10
    Tagged date                              : UTC 2009-07-19 04:22:10
    Video
    ID                                       : 1
    Format                                   : MPEG Video
    Commercial name                          : XDCAM EX 35
    Format version                           : Version 2
    Format profile                           : Main@High
    Format settings, BVOP                    : Yes
    Format settings, Matrix                  : Custom
    Format settings, GOP                     : M=3, N=15
    Codec ID                                 : 61
    Duration                                 : 7mn 5s
    Bit rate mode                            : Variable
    Bit rate                                 : 34.0 Mbps
    Maximum bit rate                         : 35.0 Mbps
    Width                                    : 1 280 pixels
    Height                                   : 720 pixels
    Display aspect ratio                     : 16:9
    Frame rate mode                          : Constant
    Frame rate                               : 29.970 fps
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8 bits
    Scan type                                : Progressive
    Compression mode                         : Lossy
    Bits/(Pixel*Frame)                       : 1.231
    Stream size                              : 1.68 GiB (96%)
    Language                                 : English
    Encoded date                             : UTC 2009-07-19 04:22:10
    Tagged date                              : UTC 2009-07-19 04:22:10
    Color primaries                          : BT.709
    Transfer characteristics                 : BT.709
    Matrix coefficients                      : BT.709
    Audio
    ID                                       : 2
    Format                                   : PCM
    Format settings, Endianness              : Big
    Format settings, Sign                    : Signed
    Codec ID                                 : twos
    Duration                                 : 7mn 5s
    Bit rate mode                            : Constant
    Bit rate                                 : 1 536 Kbps
    Channel(s)                               : 2 channels
    Sampling rate                            : 48.0 KHz
    Bit depth                                : 16 bits
    Stream size                              : 77.9 MiB (4%)
    Language                                 : English
    Encoded date                             : UTC 2009-07-19 04:22:10
    Tagged date                              : UTC 2009-07-19 04:22:10

    I encountered a similar problem.  I had quicktime files that would play in the quicktime player from the desktop, but wouldn't import the files "the file has no audio or video streams".  I had just reinstalled quicktime, and Premier with no change.  Finally realized that we had Barracuda protection that was at fault.  It was preventing communication to the quicktime codec and thus Premier could not interpret the footage.  Another symptom, I would also launch After Effects and it would tell me that quicktime wasn't installed.
    I solved this by uninstalling Barracuda.  We reported the fault to Barracuda, and have not seen any change in the software. 

  • Import failure - GoPro Hero4 4k30fps -"The file has no audio or video streams"

    I am trying to import a 4k30fps video from a GoPro Hero4 Black and I get this message "The file has no audio or video streams"
    I have tried importing in a number of different ways, does anyone have any help or advice?
    I am using Windows 7 64 bit and Adobe Premiere 8.0.1 (21)
    Thank you

    Uninstalling and reinstalling a "Typical" Apple Quicktime installation seemed to fix the problem.

  • Premiere pro cc link offline media error message:the file has no audio or video streams

    hello eveyone "
    I hope anyone who can help me out,I created a projcet with premier pro cs6,but after I installed the premiere pro cc ,when I opend it wiht premier pro cs6 it showed that :the project appears to be damaged ,it cannot be opened.
    but when open it with premier pro cc,I found many medias were offline,the I tried to link the offline media,it showed: the file has no audio or video streams, even I am trying to import the media it showed the same information,
    Anybody who can help me out ,thanks a lot first!

    You can't go backwards.  For the offline issue, try this:
      FAQ: Why are some codecs and sequence presets missing from my installation of Premiere Pro?

  • Why doesn't the iPad pick up my camera videos when it syncs with my computer?

    Why doesn't my iPad pick up my camera videos when syncing with my PC?

    Some people have fixed this with a simple re-start of the phone, others needed to reset the Phone.
    Regards
    TD

  • How to acess a PTC camera video stream from DVR card/PCI-slot

    I have a security camera which i connected to PC using PCISLOT/DVR Card.
    My requirement is to get the video stream from this camera and show in my program using java
    if it is possible using java and how to do this.
    Thanks in advance

    Believe it or not, this isn't really a Java question. You should begin by looking around your camera manufacturer's website for Java APIs, then their forums if they have any, contacting support and so on. Hoping that a general Java community will know exactly what is required here is a bit pie-in-the-sky.

  • Import mov error.  "The file has no audio or video stream".

    Very interesting.   Would this also explain why i was previously able to import some high def files I downloaded and after the reformat of my computer and reload of cs5.5, I'm now not able to use those files?  It's very strange.  I did a project, used the high def mov files and it came out great.  After a mandatory reformat and reload, now the file doesn't want to import into premier.  Error message was... "this file has no audio or video stream"... yet they play fine in media player, and one of the files works, but not the rest. Thanks in advance for any help you can provide.  Mark

    Mark,
    Welcome to the forum.
    Unfortunately, you have posted to the Premiere Elements Tips & Tricks sub-forum, which is a repository for articles on how to do things in PrElements.
    Maybe our MOD, Steve Grisetti, will move this out to the Premiere Pro CS 5 & CS 5.5 forum, where you will get more replies.
    After the reformat, did you install Apple's QT Player? If so, what version.
    What is the CODEC in those MOV files? That can be very important, but the very later versions of QT Player should install most of the popular CODEC's, that one sees in MOV, MP4, MTS, etc. files.
    Good luck,
    Hunt

  • The file has no audio or video streams

    Before posting this question, I did a quick search and found out someone else has already reported this problem, and the cause seemed to be the absence of Quicktime player when importing *.mov files.  In my case, i do have quicktime on my PC and as a matter of fact, the export worked perfectly with these *.mov in my sequence before.
    Today when I open my project, these *mov files became offline.  And when I tried to Link Media, it gave me the no audio or video streams errer.  What is wrong with it?  I have not done anything to PP since the last time when everything was perfect.

    Never mind.  I just figured it out myself.  I installed bluestacks emulator on my PC that apparently confused the system.  After uninstalling it, PP is working fine again.

  • How to decrease the latency with flash+http+camera video?

    I build a HTTP server between live camera and flash player. The flash player connect http server with NetStream. But i find there is a long latency and NetStream doesn't decode frames when the buffersize reach a special value. So i want to know, how to decrease the latency in those environment?
    And why the frame cannot be decoded when the buffersize reachs a special value. I find the buffersize*framerate is about 64. Can i low this value?

    Would you mind reposting this question over on the Flash Professional forums?  This forum is primarily for end users, the Pro forums will get you in touch with a wider developer audience.
    Thanks,
    Chris

  • CS6 File import failure,Error "The file has no audio or video streams"

    I installed adobe cs6 in trial,but when I trying to use premiere ,It cannot import mp4 video recorded by Sony .
    The recorded video with xml file,and some infomation in xml :
    <VideoFormat>
    <VideoRecPort port="DIRECT"/>
    <VideoFrame videoCodec="MPEG2HD35_1920_1080_MP@HL" captureFps="50.00i" formatFps="50i"/>
    <VideoLayout pixel="1920" numOfVerticalLine="1080" aspectRatio="16:9"/>
    </VideoFormat>
    <AudioFormat numOfChannel="2">
    <AudioRecPort port="ANALOG" audioCodec="LPCM16" trackDst="CH1"/>
    <AudioRecPort port="ANALOG" audioCodec="LPCM16" trackDst="CH2"/>
    </AudioFormat>
    <Device manufacturer="Sony" modelName="PMW-EX1R" serialNo="0517609">
    </Device>
    <Lens modelName="XS14X5.8AS-X8D"/>
    But this mp4 file I can play with media player.My OS info:
    OS:Windows 7 X64 SP1.
    CPU:Intel i7 860
    RAM:8G
    sorry for my bad english.
    Please Help!Thanks.

    I'm sorry.. I'm not good with terms and specs.
    All I know is.. I'm not doing nothing different that I always did with Premiere CS5.5 and CS5.
    > record
    > connect camera
    > copy .mp4 from SxS to my HDD
    > import with Premiere CS5.5
    BUT... When I try to import that exactly same file, all I get is:

  • Having the same problem with my music videos streaming from the icloud.  Used to work fine.  Music streams OK

    My apple TV no longer will stream the music videos, especially when in shuffle mode.  Music is fine.  Music Videos from the computer library work just fine.
    All was well until about 3 weeks ago
    Appears from reading the different communites the problem is widespread
    Anyone found a solution
    I even purchased another Apple TV thinking the original may have been defective

    Welcome to the Apple Community.
    I believe you can only wait for Apple to resolve this issue.

  • File Import Failure, Error Message: The files has no audio or video streams

    I get this error when I am importing a files that plays a video on my computer.  It is a .mov. shot on an IPad, and the others were imported without an issue.
    Details about my system:
    HARDWARE:
    Dell Laptop
    Manufacturer: Dell Inc.
    Model : Latitude E5440
    OS:
    Windows 7 Professional x64
    Version: 7601
    Service Pack: Service Pack 1
    Processor: 
    Intel(R) Core(TM) i5-4300U Cpu @ 1.90GHz 2.50 GHz
    Installed memory (RAM):
    8.00 GB (6.4 ALLOCATED TO premiere pro)
    System type:
    64-bit Operating System
    Display adapters:
    Intel® HD Graphics Family (not a card, this is a laptop)
    SPACE:
    Available Physical Memory 4148 MB
    Total Physical Memory 8097 MB
    (this is a GE computer with Security features)
    Total Space 298 GB
    Free Space 51 GB (trying to increase now)
    System BIOS Info BIOS Date: 9/18/13

    More information needed for someone to help... please click below and provide the requested information
    -Information FAQ http://forums.adobe.com/message/4200840

  • Import Failure : It says "the files has no audio or video streams" please help me...

    Hello, I have no idea why this is happened? I went open my saved project, and suddenly several files are offline.. I tried to link back the files but Error Message appear on the screen like the picture above.
    I have never changing anything.. it's still the same files since the last time I saved the project.. hope anyone give me some helps, thank you.

    More information needed for someone to help... please click below and provide the requested information
    -Information FAQ http://forums.adobe.com/message/4200840

Maybe you are looking for

  • How to center a text in numbers

    I am having a little bit of a hard time trying to center a text between 3 or more columns.... how can I do that?

  • T400 dual monitor question

    I have a ThinkPad T400 with two "Mobile Intel(R) 4 Series Express Chipset Family" display adapters listed in the Device Manager. I was wondering if it was possible to connect two external 1600 x 900 monitors to this laptop via an Advanced Mini Dock (

  • Converting mp3 voice recording to ulaw

    I am trying to take some voice over recordings that are in mp3 format and convert them to 8bit, 8khz, mono wav files or ulaw or alaw which i believe is the format used in the phone system.  Every time i export to a file with those settings, 8bit, 8kh

  • SLOW processing on Stratosphere

    Love my phone but it keeps taking longer and longer to move.  It has frozen a couple of times and I have had to take the battery out and restart it that way.  Anyone have any solutions - recomendations?:

  • Starting SAP GUI via Active X

    HI, I'm trying to find an example of starting the SAP GUI via ActiveX / OCX. I'd like the same functionality as provided by the Enterprise Portal but within a normal HTML page. I'd be interested in the HTML code as well as details regarding the passi