You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by David Frank <Da...@on24.com> on 2015/07/01 10:02:49 UTC

RE: Screenshare in AIR

Thank you, Hector!!

This helped greatly, and I got the AIR app working just as expected. This is awesome! Now, I'm just working on getting the AIR app and the ffmpeg files all put inside an installer (.exe and .dmg). Didn't think this would end so easily.

The only downside is that I wont be able to get this working on mobile since the NativeProcess isn't supported.

Any ideas on how such a feat can be accomplished through an Android/iOS AIR app?

Thank you again!

- David

________________________________________
From: Héctor A [neverbirth@gmail.com]
Sent: Tuesday, June 30, 2015 2:39 PM
To: dev@flex.apache.org
Subject: Re: Screenshare in AIR

With ffmpeg there are tons of ways of doing something and parameters to
set... so I'll just give one sample commandline, then you can investigate a
bit further googling around or you can always try to ask and if we can
reply we'll do so:

-f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 60
-vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f flv rtmp://
127.0.0.1:1935/live/screenshare

-f gdigrab: tells ffmpeg to use a built-in device it has that captures
Windows windows through GDI. There are more capturers that use other
methods like DirectShow.

-framerate 30: the framerate at which the window content is captured.

-i desktop: tells the device to capture the desktop, you can also use
title="window name" to capture a particular window, you can also capture a
particular area, make it output the video in a smaller size (if you are
seeing the remote window in a small area why send the original image), etc.

-vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 -pix_fmt
yuv420p -acodec none: tells ffmpeg to stream using h264 in a format Flash
understands: -vb 300000 is the bitrate (300kb/s in this case, you could use
variable bitrate with different conditions), -g 60 is the keyframe
interval, -acodec none tells the stream has no audio, gdigrab doesn't
capture the audio anyway.

-f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the video in
Flash video format, to a RTMP server (some local Red5 installation).


On Tue, Jun 30, 2015 at 11:19 PM, David Frank <Da...@on24.com> wrote:

> Hi Hector,
>
> Yes, please do provide me with some info. I already have the FMS part all
> done since we have a webcam application. I'm just trying to build a
> screenshare app through AIR.
>
> Any help would be very greatly appreciated.
>
> Thank you!
>
>
> -----Original Message-----
> From: Héctor A [mailto:neverbirth@gmail.com]
> Sent: Tuesday, June 30, 2015 2:06 PM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> You can also use ffmpeg through NativeProcess and stream directly to FMS
> through it. If you are interested I could provide some info, although not
> on the FMS part, it's been years since I last used it and always go for
> Red5 (my needs are often simple).
>
> On Tue, Jun 30, 2015 at 7:57 PM, David Frank <Da...@on24.com> wrote:
>
> > Hi all,
> >
> > Thank you for your inputs. As Russ suggested, I tried using the influx
> > collaboration service. But, since yesterday, I simply don't understand
> > how to make it work with an FMS server. All of the documentation
> > online is on how to connect it to Adobe's Livecycle Service through an
> > Authenticator. If only....if just only...someone could help me make
> > this work with a local FMS server without an authenticator, then this
> would suffice.
> >
> >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> >                 <rtc:authenticator>
> >                         <rtc:AdobeHSAuthenticator userName="blah" />
> >                 </rtc:authenticator>
> >                 <rtc:ScreenSharePublisher id="sspublisher" width="421"
> > height="309" left="484" y="207" />
> >         </rtc:ConnectSessionContainer>
> >
> >
> > Thank you,
> >
> > David
> >
> >
> > -----Original Message-----
> > From: Russ Ferguson [mailto:rferguson@technologycoach.com]
> > Sent: Tuesday, June 30, 2015 9:15 AM
> > To: dev@flex.apache.org
> > Subject: Re: Screenshare in AIR
> >
> > There is influxis collaboration service (used to be livecycle
> > collaboration service) http://ics.influxis.com/modules/
> >
> > Šruss
> >
> > On 6/30/15, 10:45 AM, "Jeffry Houser" <je...@dot-com-it.com> wrote:
> >
> > >
> > >  To share a desktop on Connect you have to use a proprietary plugin
> > >which uses undocumented APIs in the Flash Player.
> > >
> > >  If memory serves me; Adobe was going to offer a service to expose
> > >these APIs.  I don't know what happened to it [and I don't remember
> > >the code name)
> > >
> > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > >>      Well adobe has their Connect [1] application.  It runs in
> > >>flash and can share a desktop [2], so I know something exists.
> > >>Although I think people are changing over to Java for screen sharing
> > >>these days since it's installed in most places already.
> > >>
> > >>
> > >> [1] http://www.adobe.com/products/adobeconnect.html
> > >> [2]
> > >>https://community.apan.org/cfs-file.ashx/__key/communityserver-blogs
> > >>-c omp onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > >>
> > >>
> > >> -Mark
> > >
> > >
> > >--
> > >Jeffry Houser
> > >Technical Entrepreneur
> > >http://www.jeffryhouser.com
> > >203-379-0773
> > >
> >
> >
>

RE: Screenshare in AIR

Posted by David Frank <Da...@on24.com>.
Thank you, John.

It looks very interesting. I'll check this out as another option of doing this app.

Thanks again!

- David

-----Original Message-----
From: John Wu [mailto:john@johnwu.com] 
Sent: Wednesday, July 01, 2015 2:19 PM
To: dev@flex.apache.org
Subject: Re: Screenshare in AIR

Check out http://www.rainbowcreatures.com/product_flashywrappers.php works with Android, iOS, Windows and Mac

On Wed, Jul 1, 2015 at 12:23 PM, David Frank <Da...@on24.com> wrote:

> Thank you, Hector, for all your inputs and guidance.
>
> Cheers!
>
> David
>
> -----Original Message-----
> From: Héctor A [mailto:neverbirth@gmail.com]
> Sent: Wednesday, July 01, 2015 10:35 AM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> Yes, more or less like you say. FFMPEG is a library on mobile, already 
> in ObjectiveC on iOS, and I think it's written in C for Android and 
> the NDK has to be used, you can still use it from Java, but it makes 
> things a bit harder, I guess there are already some easy-to-go 
> libraries out there for it.
>
> You'd have to design and write AS code that communicates with native 
> code (Objective C or Java) that you have to write as well, and that 
> native code would then use the native ffmpeg library, you can check 
> the documentation for making your own ANEs here:
>
> http://help.adobe.com/en_US/air/extensions/air_extensions.pdf
>
>
> On Wed, Jul 1, 2015 at 7:26 PM, David Frank <Da...@on24.com> wrote:
>
> > Hi Hector,
> >
> > Yes, that is what I was wondering myself. But, from my Googling of 
> > this info, it looks like I have to write the ANE in C or Java. So, 
> > does this mean I have to write a Java/ObjectiveC class that invokes 
> > ffmpeg? Or is there a simpler way?
> >
> > Thank you again for helping me out.
> >
> > - David
> >
> >
> > -----Original Message-----
> > From: Héctor A [mailto:neverbirth@gmail.com]
> > Sent: Wednesday, July 01, 2015 1:20 AM
> > To: dev@flex.apache.org
> > Subject: Re: Screenshare in AIR
> >
> > For mobile you'd need an ANE, as ffmpeg is used as a library in that
> case.
> >
> > 2015年7月1日水曜日、David Frank<Da...@on24.com>さんは書きました:
> >
> > > Thank you, Hector!!
> > >
> > > This helped greatly, and I got the AIR app working just as expected.
> > > This is awesome! Now, I'm just working on getting the AIR app and 
> > > the ffmpeg files all put inside an installer (.exe and .dmg). 
> > > Didn't think this would end so easily.
> > >
> > > The only downside is that I wont be able to get this working on 
> > > mobile since the NativeProcess isn't supported.
> > >
> > > Any ideas on how such a feat can be accomplished through an 
> > > Android/iOS AIR app?
> > >
> > > Thank you again!
> > >
> > > - David
> > >
> > > ________________________________________
> > > From: Héctor A [neverbirth@gmail.com <javascript:;>]
> > > Sent: Tuesday, June 30, 2015 2:39 PM
> > > To: dev@flex.apache.org <javascript:;>
> > > Subject: Re: Screenshare in AIR
> > >
> > > With ffmpeg there are tons of ways of doing something and 
> > > parameters to set... so I'll just give one sample commandline, 
> > > then you can investigate a bit further googling around or you can 
> > > always try to ask and if we can reply we'll do so:
> > >
> > > -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 
> > > -g
> > > 60 -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f 
> > > flv rtmp:// 127.0.0.1:1935/live/screenshare
> > >
> > > -f gdigrab: tells ffmpeg to use a built-in device it has that 
> > > captures Windows windows through GDI. There are more capturers 
> > > that use other methods like DirectShow.
> > >
> > > -framerate 30: the framerate at which the window content is captured.
> > >
> > > -i desktop: tells the device to capture the desktop, you can also 
> > > use title="window name" to capture a particular window, you can 
> > > also capture a particular area, make it output the video in a 
> > > smaller size (if you are seeing the remote window in a small area 
> > > why send the
> > original image), etc.
> > >
> > > -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 
> > > -pix_fmt yuv420p -acodec none: tells ffmpeg to stream using h264 
> > > in a format Flash
> > > understands: -vb 300000 is the bitrate (300kb/s in this case, you 
> > > could use variable bitrate with different conditions), -g 60 is 
> > > the keyframe interval, -acodec none tells the stream has no audio, 
> > > gdigrab doesn't capture the audio anyway.
> > >
> > > -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the 
> > > video in Flash video format, to a RTMP server (some local Red5 
> > > installation).
> > >
> > >
> > > On Tue, Jun 30, 2015 at 11:19 PM, David Frank 
> > > <David.Frank@on24.com <javascript:;>> wrote:
> > >
> > > > Hi Hector,
> > > >
> > > > Yes, please do provide me with some info. I already have the FMS 
> > > > part all done since we have a webcam application. I'm just 
> > > > trying to build a screenshare app through AIR.
> > > >
> > > > Any help would be very greatly appreciated.
> > > >
> > > > Thank you!
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Héctor A [mailto:neverbirth@gmail.com <javascript:;>]
> > > > Sent: Tuesday, June 30, 2015 2:06 PM
> > > > To: dev@flex.apache.org <javascript:;>
> > > > Subject: Re: Screenshare in AIR
> > > >
> > > > You can also use ffmpeg through NativeProcess and stream 
> > > > directly to FMS through it. If you are interested I could 
> > > > provide some info, although not on the FMS part, it's been years 
> > > > since I last used it and always go for
> > > > Red5 (my needs are often simple).
> > > >
> > > > On Tue, Jun 30, 2015 at 7:57 PM, David Frank 
> > > > <David.Frank@on24.com
> > > <javascript:;>> wrote:
> > > >
> > > > > Hi all,
> > > > >
> > > > > Thank you for your inputs. As Russ suggested, I tried using 
> > > > > the influx collaboration service. But, since yesterday, I 
> > > > > simply don't understand how to make it work with an FMS 
> > > > > server. All of the documentation online is on how to connect 
> > > > > it to Adobe's Livecycle Service through an Authenticator. If 
> > > > > only....if just only...someone could help me make this work 
> > > > > with a local FMS server without an authenticator, then this
> > > > would suffice.
> > > > >
> > > > >         <rtc:ConnectSessionContainer id="connectSession" x="0"
> y="0"
> > > > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > > > >                 <rtc:authenticator>
> > > > >                         <rtc:AdobeHSAuthenticator userName="blah"
> />
> > > > >                 </rtc:authenticator>
> > > > >                 <rtc:ScreenSharePublisher id="sspublisher"
> > width="421"
> > > > > height="309" left="484" y="207" />
> > > > >         </rtc:ConnectSessionContainer>
> > > > >
> > > > >
> > > > > Thank you,
> > > > >
> > > > > David
> > > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Russ Ferguson [mailto:rferguson@technologycoach.com
> > > <javascript:;>]
> > > > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > > > To: dev@flex.apache.org <javascript:;>
> > > > > Subject: Re: Screenshare in AIR
> > > > >
> > > > > There is influxis collaboration service (used to be livecycle 
> > > > > collaboration service) http://ics.influxis.com/modules/
> > > > >
> > > > > Šruss
> > > > >
> > > > > On 6/30/15, 10:45 AM, "Jeffry Houser" <jeffry@dot-com-it.com
> > > <javascript:;>> wrote:
> > > > >
> > > > > >
> > > > > >  To share a desktop on Connect you have to use a proprietary 
> > > > > >plugin which uses undocumented APIs in the Flash Player.
> > > > > >
> > > > > >  If memory serves me; Adobe was going to offer a service to 
> > > > > >expose these APIs.  I don't know what happened to it [and I 
> > > > > >don't remember the code name)
> > > > > >
> > > > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > > > >>      Well adobe has their Connect [1] application.  It runs 
> > > > > >>in flash and can share a desktop [2], so I know something exists.
> > > > > >>Although I think people are changing over to Java for screen 
> > > > > >>sharing these days since it's installed in most places already.
> > > > > >>
> > > > > >>
> > > > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > > > >> [2]
> > > > > >>https://community.apan.org/cfs-file.ashx/__key/communityserv
> > > > > >>er
> > > > > >>-b
> > > > > >>logs -c omp
> > > > > >>onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.pn
> > > > > >>g
> > > > > >>
> > > > > >>
> > > > > >> -Mark
> > > > > >
> > > > > >
> > > > > >--
> > > > > >Jeffry Houser
> > > > > >Technical Entrepreneur
> > > > > >http://www.jeffryhouser.com
> > > > > >203-379-0773
> > > > > >
> > > > >
> > > > >
> > > >
> > >
> >
>

Re: Screenshare in AIR

Posted by John Wu <jo...@johnwu.com>.
Check out http://www.rainbowcreatures.com/product_flashywrappers.php works
with Android, iOS, Windows and Mac

On Wed, Jul 1, 2015 at 12:23 PM, David Frank <Da...@on24.com> wrote:

> Thank you, Hector, for all your inputs and guidance.
>
> Cheers!
>
> David
>
> -----Original Message-----
> From: Héctor A [mailto:neverbirth@gmail.com]
> Sent: Wednesday, July 01, 2015 10:35 AM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> Yes, more or less like you say. FFMPEG is a library on mobile, already in
> ObjectiveC on iOS, and I think it's written in C for Android and the NDK
> has to be used, you can still use it from Java, but it makes things a bit
> harder, I guess there are already some easy-to-go libraries out there for
> it.
>
> You'd have to design and write AS code that communicates with native code
> (Objective C or Java) that you have to write as well, and that native code
> would then use the native ffmpeg library, you can check the documentation
> for making your own ANEs here:
>
> http://help.adobe.com/en_US/air/extensions/air_extensions.pdf
>
>
> On Wed, Jul 1, 2015 at 7:26 PM, David Frank <Da...@on24.com> wrote:
>
> > Hi Hector,
> >
> > Yes, that is what I was wondering myself. But, from my Googling of
> > this info, it looks like I have to write the ANE in C or Java. So,
> > does this mean I have to write a Java/ObjectiveC class that invokes
> > ffmpeg? Or is there a simpler way?
> >
> > Thank you again for helping me out.
> >
> > - David
> >
> >
> > -----Original Message-----
> > From: Héctor A [mailto:neverbirth@gmail.com]
> > Sent: Wednesday, July 01, 2015 1:20 AM
> > To: dev@flex.apache.org
> > Subject: Re: Screenshare in AIR
> >
> > For mobile you'd need an ANE, as ffmpeg is used as a library in that
> case.
> >
> > 2015年7月1日水曜日、David Frank<Da...@on24.com>さんは書きました:
> >
> > > Thank you, Hector!!
> > >
> > > This helped greatly, and I got the AIR app working just as expected.
> > > This is awesome! Now, I'm just working on getting the AIR app and
> > > the ffmpeg files all put inside an installer (.exe and .dmg). Didn't
> > > think this would end so easily.
> > >
> > > The only downside is that I wont be able to get this working on
> > > mobile since the NativeProcess isn't supported.
> > >
> > > Any ideas on how such a feat can be accomplished through an
> > > Android/iOS AIR app?
> > >
> > > Thank you again!
> > >
> > > - David
> > >
> > > ________________________________________
> > > From: Héctor A [neverbirth@gmail.com <javascript:;>]
> > > Sent: Tuesday, June 30, 2015 2:39 PM
> > > To: dev@flex.apache.org <javascript:;>
> > > Subject: Re: Screenshare in AIR
> > >
> > > With ffmpeg there are tons of ways of doing something and parameters
> > > to set... so I'll just give one sample commandline, then you can
> > > investigate a bit further googling around or you can always try to
> > > ask and if we can reply we'll do so:
> > >
> > > -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g
> > > 60 -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f
> > > flv rtmp:// 127.0.0.1:1935/live/screenshare
> > >
> > > -f gdigrab: tells ffmpeg to use a built-in device it has that
> > > captures Windows windows through GDI. There are more capturers that
> > > use other methods like DirectShow.
> > >
> > > -framerate 30: the framerate at which the window content is captured.
> > >
> > > -i desktop: tells the device to capture the desktop, you can also
> > > use title="window name" to capture a particular window, you can also
> > > capture a particular area, make it output the video in a smaller
> > > size (if you are seeing the remote window in a small area why send
> > > the
> > original image), etc.
> > >
> > > -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1
> > > -pix_fmt yuv420p -acodec none: tells ffmpeg to stream using h264 in
> > > a format Flash
> > > understands: -vb 300000 is the bitrate (300kb/s in this case, you
> > > could use variable bitrate with different conditions), -g 60 is the
> > > keyframe interval, -acodec none tells the stream has no audio,
> > > gdigrab doesn't capture the audio anyway.
> > >
> > > -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the
> > > video in Flash video format, to a RTMP server (some local Red5
> > > installation).
> > >
> > >
> > > On Tue, Jun 30, 2015 at 11:19 PM, David Frank <David.Frank@on24.com
> > > <javascript:;>> wrote:
> > >
> > > > Hi Hector,
> > > >
> > > > Yes, please do provide me with some info. I already have the FMS
> > > > part all done since we have a webcam application. I'm just trying
> > > > to build a screenshare app through AIR.
> > > >
> > > > Any help would be very greatly appreciated.
> > > >
> > > > Thank you!
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Héctor A [mailto:neverbirth@gmail.com <javascript:;>]
> > > > Sent: Tuesday, June 30, 2015 2:06 PM
> > > > To: dev@flex.apache.org <javascript:;>
> > > > Subject: Re: Screenshare in AIR
> > > >
> > > > You can also use ffmpeg through NativeProcess and stream directly
> > > > to FMS through it. If you are interested I could provide some
> > > > info, although not on the FMS part, it's been years since I last
> > > > used it and always go for
> > > > Red5 (my needs are often simple).
> > > >
> > > > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <David.Frank@on24.com
> > > <javascript:;>> wrote:
> > > >
> > > > > Hi all,
> > > > >
> > > > > Thank you for your inputs. As Russ suggested, I tried using the
> > > > > influx collaboration service. But, since yesterday, I simply
> > > > > don't understand how to make it work with an FMS server. All of
> > > > > the documentation online is on how to connect it to Adobe's
> > > > > Livecycle Service through an Authenticator. If only....if just
> > > > > only...someone could help me make this work with a local FMS
> > > > > server without an authenticator, then this
> > > > would suffice.
> > > > >
> > > > >         <rtc:ConnectSessionContainer id="connectSession" x="0"
> y="0"
> > > > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > > > >                 <rtc:authenticator>
> > > > >                         <rtc:AdobeHSAuthenticator userName="blah"
> />
> > > > >                 </rtc:authenticator>
> > > > >                 <rtc:ScreenSharePublisher id="sspublisher"
> > width="421"
> > > > > height="309" left="484" y="207" />
> > > > >         </rtc:ConnectSessionContainer>
> > > > >
> > > > >
> > > > > Thank you,
> > > > >
> > > > > David
> > > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Russ Ferguson [mailto:rferguson@technologycoach.com
> > > <javascript:;>]
> > > > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > > > To: dev@flex.apache.org <javascript:;>
> > > > > Subject: Re: Screenshare in AIR
> > > > >
> > > > > There is influxis collaboration service (used to be livecycle
> > > > > collaboration service) http://ics.influxis.com/modules/
> > > > >
> > > > > Šruss
> > > > >
> > > > > On 6/30/15, 10:45 AM, "Jeffry Houser" <jeffry@dot-com-it.com
> > > <javascript:;>> wrote:
> > > > >
> > > > > >
> > > > > >  To share a desktop on Connect you have to use a proprietary
> > > > > >plugin which uses undocumented APIs in the Flash Player.
> > > > > >
> > > > > >  If memory serves me; Adobe was going to offer a service to
> > > > > >expose these APIs.  I don't know what happened to it [and I
> > > > > >don't remember the code name)
> > > > > >
> > > > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > > > >>      Well adobe has their Connect [1] application.  It runs
> > > > > >>in flash and can share a desktop [2], so I know something exists.
> > > > > >>Although I think people are changing over to Java for screen
> > > > > >>sharing these days since it's installed in most places already.
> > > > > >>
> > > > > >>
> > > > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > > > >> [2]
> > > > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver
> > > > > >>-b
> > > > > >>logs -c omp
> > > > > >>onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > > > >>
> > > > > >>
> > > > > >> -Mark
> > > > > >
> > > > > >
> > > > > >--
> > > > > >Jeffry Houser
> > > > > >Technical Entrepreneur
> > > > > >http://www.jeffryhouser.com
> > > > > >203-379-0773
> > > > > >
> > > > >
> > > > >
> > > >
> > >
> >
>

RE: Screenshare in AIR

Posted by David Frank <Da...@on24.com>.
Thank you, Hector, for all your inputs and guidance.

Cheers!

David

-----Original Message-----
From: Héctor A [mailto:neverbirth@gmail.com] 
Sent: Wednesday, July 01, 2015 10:35 AM
To: dev@flex.apache.org
Subject: Re: Screenshare in AIR

Yes, more or less like you say. FFMPEG is a library on mobile, already in ObjectiveC on iOS, and I think it's written in C for Android and the NDK has to be used, you can still use it from Java, but it makes things a bit harder, I guess there are already some easy-to-go libraries out there for it.

You'd have to design and write AS code that communicates with native code (Objective C or Java) that you have to write as well, and that native code would then use the native ffmpeg library, you can check the documentation for making your own ANEs here:

http://help.adobe.com/en_US/air/extensions/air_extensions.pdf


On Wed, Jul 1, 2015 at 7:26 PM, David Frank <Da...@on24.com> wrote:

> Hi Hector,
>
> Yes, that is what I was wondering myself. But, from my Googling of 
> this info, it looks like I have to write the ANE in C or Java. So, 
> does this mean I have to write a Java/ObjectiveC class that invokes 
> ffmpeg? Or is there a simpler way?
>
> Thank you again for helping me out.
>
> - David
>
>
> -----Original Message-----
> From: Héctor A [mailto:neverbirth@gmail.com]
> Sent: Wednesday, July 01, 2015 1:20 AM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> For mobile you'd need an ANE, as ffmpeg is used as a library in that case.
>
> 2015年7月1日水曜日、David Frank<Da...@on24.com>さんは書きました:
>
> > Thank you, Hector!!
> >
> > This helped greatly, and I got the AIR app working just as expected.
> > This is awesome! Now, I'm just working on getting the AIR app and 
> > the ffmpeg files all put inside an installer (.exe and .dmg). Didn't 
> > think this would end so easily.
> >
> > The only downside is that I wont be able to get this working on 
> > mobile since the NativeProcess isn't supported.
> >
> > Any ideas on how such a feat can be accomplished through an 
> > Android/iOS AIR app?
> >
> > Thank you again!
> >
> > - David
> >
> > ________________________________________
> > From: Héctor A [neverbirth@gmail.com <javascript:;>]
> > Sent: Tuesday, June 30, 2015 2:39 PM
> > To: dev@flex.apache.org <javascript:;>
> > Subject: Re: Screenshare in AIR
> >
> > With ffmpeg there are tons of ways of doing something and parameters 
> > to set... so I'll just give one sample commandline, then you can 
> > investigate a bit further googling around or you can always try to 
> > ask and if we can reply we'll do so:
> >
> > -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 
> > 60 -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f 
> > flv rtmp:// 127.0.0.1:1935/live/screenshare
> >
> > -f gdigrab: tells ffmpeg to use a built-in device it has that 
> > captures Windows windows through GDI. There are more capturers that 
> > use other methods like DirectShow.
> >
> > -framerate 30: the framerate at which the window content is captured.
> >
> > -i desktop: tells the device to capture the desktop, you can also 
> > use title="window name" to capture a particular window, you can also 
> > capture a particular area, make it output the video in a smaller 
> > size (if you are seeing the remote window in a small area why send 
> > the
> original image), etc.
> >
> > -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 
> > -pix_fmt yuv420p -acodec none: tells ffmpeg to stream using h264 in 
> > a format Flash
> > understands: -vb 300000 is the bitrate (300kb/s in this case, you 
> > could use variable bitrate with different conditions), -g 60 is the 
> > keyframe interval, -acodec none tells the stream has no audio, 
> > gdigrab doesn't capture the audio anyway.
> >
> > -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the 
> > video in Flash video format, to a RTMP server (some local Red5 
> > installation).
> >
> >
> > On Tue, Jun 30, 2015 at 11:19 PM, David Frank <David.Frank@on24.com 
> > <javascript:;>> wrote:
> >
> > > Hi Hector,
> > >
> > > Yes, please do provide me with some info. I already have the FMS 
> > > part all done since we have a webcam application. I'm just trying 
> > > to build a screenshare app through AIR.
> > >
> > > Any help would be very greatly appreciated.
> > >
> > > Thank you!
> > >
> > >
> > > -----Original Message-----
> > > From: Héctor A [mailto:neverbirth@gmail.com <javascript:;>]
> > > Sent: Tuesday, June 30, 2015 2:06 PM
> > > To: dev@flex.apache.org <javascript:;>
> > > Subject: Re: Screenshare in AIR
> > >
> > > You can also use ffmpeg through NativeProcess and stream directly 
> > > to FMS through it. If you are interested I could provide some 
> > > info, although not on the FMS part, it's been years since I last 
> > > used it and always go for
> > > Red5 (my needs are often simple).
> > >
> > > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <David.Frank@on24.com
> > <javascript:;>> wrote:
> > >
> > > > Hi all,
> > > >
> > > > Thank you for your inputs. As Russ suggested, I tried using the 
> > > > influx collaboration service. But, since yesterday, I simply 
> > > > don't understand how to make it work with an FMS server. All of 
> > > > the documentation online is on how to connect it to Adobe's 
> > > > Livecycle Service through an Authenticator. If only....if just 
> > > > only...someone could help me make this work with a local FMS 
> > > > server without an authenticator, then this
> > > would suffice.
> > > >
> > > >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > > >                 <rtc:authenticator>
> > > >                         <rtc:AdobeHSAuthenticator userName="blah" />
> > > >                 </rtc:authenticator>
> > > >                 <rtc:ScreenSharePublisher id="sspublisher"
> width="421"
> > > > height="309" left="484" y="207" />
> > > >         </rtc:ConnectSessionContainer>
> > > >
> > > >
> > > > Thank you,
> > > >
> > > > David
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Russ Ferguson [mailto:rferguson@technologycoach.com
> > <javascript:;>]
> > > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > > To: dev@flex.apache.org <javascript:;>
> > > > Subject: Re: Screenshare in AIR
> > > >
> > > > There is influxis collaboration service (used to be livecycle 
> > > > collaboration service) http://ics.influxis.com/modules/
> > > >
> > > > Šruss
> > > >
> > > > On 6/30/15, 10:45 AM, "Jeffry Houser" <jeffry@dot-com-it.com
> > <javascript:;>> wrote:
> > > >
> > > > >
> > > > >  To share a desktop on Connect you have to use a proprietary 
> > > > >plugin which uses undocumented APIs in the Flash Player.
> > > > >
> > > > >  If memory serves me; Adobe was going to offer a service to 
> > > > >expose these APIs.  I don't know what happened to it [and I 
> > > > >don't remember the code name)
> > > > >
> > > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > > >>      Well adobe has their Connect [1] application.  It runs 
> > > > >>in flash and can share a desktop [2], so I know something exists.
> > > > >>Although I think people are changing over to Java for screen 
> > > > >>sharing these days since it's installed in most places already.
> > > > >>
> > > > >>
> > > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > > >> [2]
> > > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver
> > > > >>-b
> > > > >>logs -c omp
> > > > >>onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > > >>
> > > > >>
> > > > >> -Mark
> > > > >
> > > > >
> > > > >--
> > > > >Jeffry Houser
> > > > >Technical Entrepreneur
> > > > >http://www.jeffryhouser.com
> > > > >203-379-0773
> > > > >
> > > >
> > > >
> > >
> >
>

Re: Screenshare in AIR

Posted by Héctor A <ne...@gmail.com>.
Yes, more or less like you say. FFMPEG is a library on mobile, already in
ObjectiveC on iOS, and I think it's written in C for Android and the NDK
has to be used, you can still use it from Java, but it makes things a bit
harder, I guess there are already some easy-to-go libraries out there for
it.

You'd have to design and write AS code that communicates with native code
(Objective C or Java) that you have to write as well, and that native code
would then use the native ffmpeg library, you can check the documentation
for making your own ANEs here:

http://help.adobe.com/en_US/air/extensions/air_extensions.pdf


On Wed, Jul 1, 2015 at 7:26 PM, David Frank <Da...@on24.com> wrote:

> Hi Hector,
>
> Yes, that is what I was wondering myself. But, from my Googling of this
> info, it looks like I have to write the ANE in C or Java. So, does this
> mean I have to write a Java/ObjectiveC class that invokes ffmpeg? Or is
> there a simpler way?
>
> Thank you again for helping me out.
>
> - David
>
>
> -----Original Message-----
> From: Héctor A [mailto:neverbirth@gmail.com]
> Sent: Wednesday, July 01, 2015 1:20 AM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> For mobile you'd need an ANE, as ffmpeg is used as a library in that case.
>
> 2015年7月1日水曜日、David Frank<Da...@on24.com>さんは書きました:
>
> > Thank you, Hector!!
> >
> > This helped greatly, and I got the AIR app working just as expected.
> > This is awesome! Now, I'm just working on getting the AIR app and the
> > ffmpeg files all put inside an installer (.exe and .dmg). Didn't think
> > this would end so easily.
> >
> > The only downside is that I wont be able to get this working on mobile
> > since the NativeProcess isn't supported.
> >
> > Any ideas on how such a feat can be accomplished through an
> > Android/iOS AIR app?
> >
> > Thank you again!
> >
> > - David
> >
> > ________________________________________
> > From: Héctor A [neverbirth@gmail.com <javascript:;>]
> > Sent: Tuesday, June 30, 2015 2:39 PM
> > To: dev@flex.apache.org <javascript:;>
> > Subject: Re: Screenshare in AIR
> >
> > With ffmpeg there are tons of ways of doing something and parameters
> > to set... so I'll just give one sample commandline, then you can
> > investigate a bit further googling around or you can always try to ask
> > and if we can reply we'll do so:
> >
> > -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 60
> > -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f flv
> > rtmp:// 127.0.0.1:1935/live/screenshare
> >
> > -f gdigrab: tells ffmpeg to use a built-in device it has that captures
> > Windows windows through GDI. There are more capturers that use other
> > methods like DirectShow.
> >
> > -framerate 30: the framerate at which the window content is captured.
> >
> > -i desktop: tells the device to capture the desktop, you can also use
> > title="window name" to capture a particular window, you can also
> > capture a particular area, make it output the video in a smaller size
> > (if you are seeing the remote window in a small area why send the
> original image), etc.
> >
> > -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1
> > -pix_fmt yuv420p -acodec none: tells ffmpeg to stream using h264 in a
> > format Flash
> > understands: -vb 300000 is the bitrate (300kb/s in this case, you
> > could use variable bitrate with different conditions), -g 60 is the
> > keyframe interval, -acodec none tells the stream has no audio, gdigrab
> > doesn't capture the audio anyway.
> >
> > -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the
> > video in Flash video format, to a RTMP server (some local Red5
> > installation).
> >
> >
> > On Tue, Jun 30, 2015 at 11:19 PM, David Frank <David.Frank@on24.com
> > <javascript:;>> wrote:
> >
> > > Hi Hector,
> > >
> > > Yes, please do provide me with some info. I already have the FMS
> > > part all done since we have a webcam application. I'm just trying to
> > > build a screenshare app through AIR.
> > >
> > > Any help would be very greatly appreciated.
> > >
> > > Thank you!
> > >
> > >
> > > -----Original Message-----
> > > From: Héctor A [mailto:neverbirth@gmail.com <javascript:;>]
> > > Sent: Tuesday, June 30, 2015 2:06 PM
> > > To: dev@flex.apache.org <javascript:;>
> > > Subject: Re: Screenshare in AIR
> > >
> > > You can also use ffmpeg through NativeProcess and stream directly to
> > > FMS through it. If you are interested I could provide some info,
> > > although not on the FMS part, it's been years since I last used it
> > > and always go for
> > > Red5 (my needs are often simple).
> > >
> > > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <David.Frank@on24.com
> > <javascript:;>> wrote:
> > >
> > > > Hi all,
> > > >
> > > > Thank you for your inputs. As Russ suggested, I tried using the
> > > > influx collaboration service. But, since yesterday, I simply don't
> > > > understand how to make it work with an FMS server. All of the
> > > > documentation online is on how to connect it to Adobe's Livecycle
> > > > Service through an Authenticator. If only....if just
> > > > only...someone could help me make this work with a local FMS
> > > > server without an authenticator, then this
> > > would suffice.
> > > >
> > > >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > > >                 <rtc:authenticator>
> > > >                         <rtc:AdobeHSAuthenticator userName="blah" />
> > > >                 </rtc:authenticator>
> > > >                 <rtc:ScreenSharePublisher id="sspublisher"
> width="421"
> > > > height="309" left="484" y="207" />
> > > >         </rtc:ConnectSessionContainer>
> > > >
> > > >
> > > > Thank you,
> > > >
> > > > David
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Russ Ferguson [mailto:rferguson@technologycoach.com
> > <javascript:;>]
> > > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > > To: dev@flex.apache.org <javascript:;>
> > > > Subject: Re: Screenshare in AIR
> > > >
> > > > There is influxis collaboration service (used to be livecycle
> > > > collaboration service) http://ics.influxis.com/modules/
> > > >
> > > > Šruss
> > > >
> > > > On 6/30/15, 10:45 AM, "Jeffry Houser" <jeffry@dot-com-it.com
> > <javascript:;>> wrote:
> > > >
> > > > >
> > > > >  To share a desktop on Connect you have to use a proprietary
> > > > >plugin which uses undocumented APIs in the Flash Player.
> > > > >
> > > > >  If memory serves me; Adobe was going to offer a service to
> > > > >expose these APIs.  I don't know what happened to it [and I don't
> > > > >remember the code name)
> > > > >
> > > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > > >>      Well adobe has their Connect [1] application.  It runs in
> > > > >>flash and can share a desktop [2], so I know something exists.
> > > > >>Although I think people are changing over to Java for screen
> > > > >>sharing these days since it's installed in most places already.
> > > > >>
> > > > >>
> > > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > > >> [2]
> > > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver-b
> > > > >>logs -c omp
> > > > >>onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > > >>
> > > > >>
> > > > >> -Mark
> > > > >
> > > > >
> > > > >--
> > > > >Jeffry Houser
> > > > >Technical Entrepreneur
> > > > >http://www.jeffryhouser.com
> > > > >203-379-0773
> > > > >
> > > >
> > > >
> > >
> >
>

RE: Screenshare in AIR

Posted by David Frank <Da...@on24.com>.
Hi Hector,

Yes, that is what I was wondering myself. But, from my Googling of this info, it looks like I have to write the ANE in C or Java. So, does this mean I have to write a Java/ObjectiveC class that invokes ffmpeg? Or is there a simpler way?

Thank you again for helping me out.

- David


-----Original Message-----
From: Héctor A [mailto:neverbirth@gmail.com] 
Sent: Wednesday, July 01, 2015 1:20 AM
To: dev@flex.apache.org
Subject: Re: Screenshare in AIR

For mobile you'd need an ANE, as ffmpeg is used as a library in that case.

2015年7月1日水曜日、David Frank<Da...@on24.com>さんは書きました:

> Thank you, Hector!!
>
> This helped greatly, and I got the AIR app working just as expected. 
> This is awesome! Now, I'm just working on getting the AIR app and the 
> ffmpeg files all put inside an installer (.exe and .dmg). Didn't think 
> this would end so easily.
>
> The only downside is that I wont be able to get this working on mobile 
> since the NativeProcess isn't supported.
>
> Any ideas on how such a feat can be accomplished through an 
> Android/iOS AIR app?
>
> Thank you again!
>
> - David
>
> ________________________________________
> From: Héctor A [neverbirth@gmail.com <javascript:;>]
> Sent: Tuesday, June 30, 2015 2:39 PM
> To: dev@flex.apache.org <javascript:;>
> Subject: Re: Screenshare in AIR
>
> With ffmpeg there are tons of ways of doing something and parameters 
> to set... so I'll just give one sample commandline, then you can 
> investigate a bit further googling around or you can always try to ask 
> and if we can reply we'll do so:
>
> -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 60 
> -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f flv 
> rtmp:// 127.0.0.1:1935/live/screenshare
>
> -f gdigrab: tells ffmpeg to use a built-in device it has that captures 
> Windows windows through GDI. There are more capturers that use other 
> methods like DirectShow.
>
> -framerate 30: the framerate at which the window content is captured.
>
> -i desktop: tells the device to capture the desktop, you can also use 
> title="window name" to capture a particular window, you can also 
> capture a particular area, make it output the video in a smaller size 
> (if you are seeing the remote window in a small area why send the original image), etc.
>
> -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 
> -pix_fmt yuv420p -acodec none: tells ffmpeg to stream using h264 in a 
> format Flash
> understands: -vb 300000 is the bitrate (300kb/s in this case, you 
> could use variable bitrate with different conditions), -g 60 is the 
> keyframe interval, -acodec none tells the stream has no audio, gdigrab 
> doesn't capture the audio anyway.
>
> -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the 
> video in Flash video format, to a RTMP server (some local Red5 
> installation).
>
>
> On Tue, Jun 30, 2015 at 11:19 PM, David Frank <David.Frank@on24.com 
> <javascript:;>> wrote:
>
> > Hi Hector,
> >
> > Yes, please do provide me with some info. I already have the FMS 
> > part all done since we have a webcam application. I'm just trying to 
> > build a screenshare app through AIR.
> >
> > Any help would be very greatly appreciated.
> >
> > Thank you!
> >
> >
> > -----Original Message-----
> > From: Héctor A [mailto:neverbirth@gmail.com <javascript:;>]
> > Sent: Tuesday, June 30, 2015 2:06 PM
> > To: dev@flex.apache.org <javascript:;>
> > Subject: Re: Screenshare in AIR
> >
> > You can also use ffmpeg through NativeProcess and stream directly to 
> > FMS through it. If you are interested I could provide some info, 
> > although not on the FMS part, it's been years since I last used it 
> > and always go for
> > Red5 (my needs are often simple).
> >
> > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <David.Frank@on24.com
> <javascript:;>> wrote:
> >
> > > Hi all,
> > >
> > > Thank you for your inputs. As Russ suggested, I tried using the 
> > > influx collaboration service. But, since yesterday, I simply don't 
> > > understand how to make it work with an FMS server. All of the 
> > > documentation online is on how to connect it to Adobe's Livecycle 
> > > Service through an Authenticator. If only....if just 
> > > only...someone could help me make this work with a local FMS 
> > > server without an authenticator, then this
> > would suffice.
> > >
> > >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > >                 <rtc:authenticator>
> > >                         <rtc:AdobeHSAuthenticator userName="blah" />
> > >                 </rtc:authenticator>
> > >                 <rtc:ScreenSharePublisher id="sspublisher" width="421"
> > > height="309" left="484" y="207" />
> > >         </rtc:ConnectSessionContainer>
> > >
> > >
> > > Thank you,
> > >
> > > David
> > >
> > >
> > > -----Original Message-----
> > > From: Russ Ferguson [mailto:rferguson@technologycoach.com
> <javascript:;>]
> > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > To: dev@flex.apache.org <javascript:;>
> > > Subject: Re: Screenshare in AIR
> > >
> > > There is influxis collaboration service (used to be livecycle 
> > > collaboration service) http://ics.influxis.com/modules/
> > >
> > > Šruss
> > >
> > > On 6/30/15, 10:45 AM, "Jeffry Houser" <jeffry@dot-com-it.com
> <javascript:;>> wrote:
> > >
> > > >
> > > >  To share a desktop on Connect you have to use a proprietary 
> > > >plugin which uses undocumented APIs in the Flash Player.
> > > >
> > > >  If memory serves me; Adobe was going to offer a service to 
> > > >expose these APIs.  I don't know what happened to it [and I don't 
> > > >remember the code name)
> > > >
> > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > >>      Well adobe has their Connect [1] application.  It runs in 
> > > >>flash and can share a desktop [2], so I know something exists.
> > > >>Although I think people are changing over to Java for screen 
> > > >>sharing these days since it's installed in most places already.
> > > >>
> > > >>
> > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > >> [2]
> > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver-b
> > > >>logs -c omp 
> > > >>onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > >>
> > > >>
> > > >> -Mark
> > > >
> > > >
> > > >--
> > > >Jeffry Houser
> > > >Technical Entrepreneur
> > > >http://www.jeffryhouser.com
> > > >203-379-0773
> > > >
> > >
> > >
> >
>

Re: Screenshare in AIR

Posted by Héctor A <ne...@gmail.com>.
For mobile you'd need an ANE, as ffmpeg is used as a library in that case.

2015年7月1日水曜日、David Frank<Da...@on24.com>さんは書きました:

> Thank you, Hector!!
>
> This helped greatly, and I got the AIR app working just as expected. This
> is awesome! Now, I'm just working on getting the AIR app and the ffmpeg
> files all put inside an installer (.exe and .dmg). Didn't think this would
> end so easily.
>
> The only downside is that I wont be able to get this working on mobile
> since the NativeProcess isn't supported.
>
> Any ideas on how such a feat can be accomplished through an Android/iOS
> AIR app?
>
> Thank you again!
>
> - David
>
> ________________________________________
> From: Héctor A [neverbirth@gmail.com <javascript:;>]
> Sent: Tuesday, June 30, 2015 2:39 PM
> To: dev@flex.apache.org <javascript:;>
> Subject: Re: Screenshare in AIR
>
> With ffmpeg there are tons of ways of doing something and parameters to
> set... so I'll just give one sample commandline, then you can investigate a
> bit further googling around or you can always try to ask and if we can
> reply we'll do so:
>
> -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 60
> -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f flv rtmp://
> 127.0.0.1:1935/live/screenshare
>
> -f gdigrab: tells ffmpeg to use a built-in device it has that captures
> Windows windows through GDI. There are more capturers that use other
> methods like DirectShow.
>
> -framerate 30: the framerate at which the window content is captured.
>
> -i desktop: tells the device to capture the desktop, you can also use
> title="window name" to capture a particular window, you can also capture a
> particular area, make it output the video in a smaller size (if you are
> seeing the remote window in a small area why send the original image), etc.
>
> -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 -pix_fmt
> yuv420p -acodec none: tells ffmpeg to stream using h264 in a format Flash
> understands: -vb 300000 is the bitrate (300kb/s in this case, you could use
> variable bitrate with different conditions), -g 60 is the keyframe
> interval, -acodec none tells the stream has no audio, gdigrab doesn't
> capture the audio anyway.
>
> -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the video
> in
> Flash video format, to a RTMP server (some local Red5 installation).
>
>
> On Tue, Jun 30, 2015 at 11:19 PM, David Frank <David.Frank@on24.com
> <javascript:;>> wrote:
>
> > Hi Hector,
> >
> > Yes, please do provide me with some info. I already have the FMS part all
> > done since we have a webcam application. I'm just trying to build a
> > screenshare app through AIR.
> >
> > Any help would be very greatly appreciated.
> >
> > Thank you!
> >
> >
> > -----Original Message-----
> > From: Héctor A [mailto:neverbirth@gmail.com <javascript:;>]
> > Sent: Tuesday, June 30, 2015 2:06 PM
> > To: dev@flex.apache.org <javascript:;>
> > Subject: Re: Screenshare in AIR
> >
> > You can also use ffmpeg through NativeProcess and stream directly to FMS
> > through it. If you are interested I could provide some info, although not
> > on the FMS part, it's been years since I last used it and always go for
> > Red5 (my needs are often simple).
> >
> > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <David.Frank@on24.com
> <javascript:;>> wrote:
> >
> > > Hi all,
> > >
> > > Thank you for your inputs. As Russ suggested, I tried using the influx
> > > collaboration service. But, since yesterday, I simply don't understand
> > > how to make it work with an FMS server. All of the documentation
> > > online is on how to connect it to Adobe's Livecycle Service through an
> > > Authenticator. If only....if just only...someone could help me make
> > > this work with a local FMS server without an authenticator, then this
> > would suffice.
> > >
> > >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > >                 <rtc:authenticator>
> > >                         <rtc:AdobeHSAuthenticator userName="blah" />
> > >                 </rtc:authenticator>
> > >                 <rtc:ScreenSharePublisher id="sspublisher" width="421"
> > > height="309" left="484" y="207" />
> > >         </rtc:ConnectSessionContainer>
> > >
> > >
> > > Thank you,
> > >
> > > David
> > >
> > >
> > > -----Original Message-----
> > > From: Russ Ferguson [mailto:rferguson@technologycoach.com
> <javascript:;>]
> > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > To: dev@flex.apache.org <javascript:;>
> > > Subject: Re: Screenshare in AIR
> > >
> > > There is influxis collaboration service (used to be livecycle
> > > collaboration service) http://ics.influxis.com/modules/
> > >
> > > Šruss
> > >
> > > On 6/30/15, 10:45 AM, "Jeffry Houser" <jeffry@dot-com-it.com
> <javascript:;>> wrote:
> > >
> > > >
> > > >  To share a desktop on Connect you have to use a proprietary plugin
> > > >which uses undocumented APIs in the Flash Player.
> > > >
> > > >  If memory serves me; Adobe was going to offer a service to expose
> > > >these APIs.  I don't know what happened to it [and I don't remember
> > > >the code name)
> > > >
> > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > >>      Well adobe has their Connect [1] application.  It runs in
> > > >>flash and can share a desktop [2], so I know something exists.
> > > >>Although I think people are changing over to Java for screen sharing
> > > >>these days since it's installed in most places already.
> > > >>
> > > >>
> > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > >> [2]
> > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver-blogs
> > > >>-c omp onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > >>
> > > >>
> > > >> -Mark
> > > >
> > > >
> > > >--
> > > >Jeffry Houser
> > > >Technical Entrepreneur
> > > >http://www.jeffryhouser.com
> > > >203-379-0773
> > > >
> > >
> > >
> >
>

RE: Screenshare in AIR

Posted by David Frank <Da...@on24.com>.
Hi Fabrice,

Actually, it was a lot simpler. I simply moved the ffmpeg installation folder under a folder called extlib of my project's src, and referenced it relatively in my code (that is, instead of C:/ffmpeg/bin/ffmpeg.exe or whatever, I used extlib/ffmpeg/bin/ffmpeg.exe). On exporting the application in FlashBuilder, the ffmpeg got included in the application's installer. Piece of cake!

Thank you,

David
 

-----Original Message-----
From: Fabrice Montfort [mailto:fm@runware.com] 
Sent: Wednesday, July 01, 2015 7:20 AM
To: dev@flex.apache.org
Subject: Re: Screenshare in AIR

Hi there,

You can juste compile as executable and create an installer with some other tools if you want to include some libraries. Really easy to do.

Hope that helps.

Fabrice

2015-07-01 12:02 GMT+04:00 David Frank <Da...@on24.com>:

> Thank you, Hector!!
>
> This helped greatly, and I got the AIR app working just as expected. 
> This is awesome! Now, I'm just working on getting the AIR app and the 
> ffmpeg files all put inside an installer (.exe and .dmg). Didn't think 
> this would end so easily.
>
> The only downside is that I wont be able to get this working on mobile 
> since the NativeProcess isn't supported.
>
> Any ideas on how such a feat can be accomplished through an 
> Android/iOS AIR app?
>
> Thank you again!
>
> - David
>
> ________________________________________
> From: Héctor A [neverbirth@gmail.com]
> Sent: Tuesday, June 30, 2015 2:39 PM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> With ffmpeg there are tons of ways of doing something and parameters 
> to set... so I'll just give one sample commandline, then you can 
> investigate a bit further googling around or you can always try to ask 
> and if we can reply we'll do so:
>
> -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 60 
> -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f flv 
> rtmp:// 127.0.0.1:1935/live/screenshare
>
> -f gdigrab: tells ffmpeg to use a built-in device it has that captures 
> Windows windows through GDI. There are more capturers that use other 
> methods like DirectShow.
>
> -framerate 30: the framerate at which the window content is captured.
>
> -i desktop: tells the device to capture the desktop, you can also use 
> title="window name" to capture a particular window, you can also 
> capture a particular area, make it output the video in a smaller size 
> (if you are seeing the remote window in a small area why send the original image), etc.
>
> -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 
> -pix_fmt yuv420p -acodec none: tells ffmpeg to stream using h264 in a 
> format Flash
> understands: -vb 300000 is the bitrate (300kb/s in this case, you 
> could use variable bitrate with different conditions), -g 60 is the 
> keyframe interval, -acodec none tells the stream has no audio, gdigrab 
> doesn't capture the audio anyway.
>
> -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the 
> video in Flash video format, to a RTMP server (some local Red5 
> installation).
>
>
> On Tue, Jun 30, 2015 at 11:19 PM, David Frank <Da...@on24.com>
> wrote:
>
> > Hi Hector,
> >
> > Yes, please do provide me with some info. I already have the FMS 
> > part all done since we have a webcam application. I'm just trying to 
> > build a screenshare app through AIR.
> >
> > Any help would be very greatly appreciated.
> >
> > Thank you!
> >
> >
> > -----Original Message-----
> > From: Héctor A [mailto:neverbirth@gmail.com]
> > Sent: Tuesday, June 30, 2015 2:06 PM
> > To: dev@flex.apache.org
> > Subject: Re: Screenshare in AIR
> >
> > You can also use ffmpeg through NativeProcess and stream directly to 
> > FMS through it. If you are interested I could provide some info, 
> > although not on the FMS part, it's been years since I last used it 
> > and always go for
> > Red5 (my needs are often simple).
> >
> > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <Da...@on24.com>
> wrote:
> >
> > > Hi all,
> > >
> > > Thank you for your inputs. As Russ suggested, I tried using the 
> > > influx collaboration service. But, since yesterday, I simply don't 
> > > understand how to make it work with an FMS server. All of the 
> > > documentation online is on how to connect it to Adobe's Livecycle 
> > > Service through an Authenticator. If only....if just 
> > > only...someone could help me make this work with a local FMS 
> > > server without an authenticator, then this
> > would suffice.
> > >
> > >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > >                 <rtc:authenticator>
> > >                         <rtc:AdobeHSAuthenticator userName="blah" />
> > >                 </rtc:authenticator>
> > >                 <rtc:ScreenSharePublisher id="sspublisher" width="421"
> > > height="309" left="484" y="207" />
> > >         </rtc:ConnectSessionContainer>
> > >
> > >
> > > Thank you,
> > >
> > > David
> > >
> > >
> > > -----Original Message-----
> > > From: Russ Ferguson [mailto:rferguson@technologycoach.com]
> > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > To: dev@flex.apache.org
> > > Subject: Re: Screenshare in AIR
> > >
> > > There is influxis collaboration service (used to be livecycle 
> > > collaboration service) http://ics.influxis.com/modules/
> > >
> > > Šruss
> > >
> > > On 6/30/15, 10:45 AM, "Jeffry Houser" <je...@dot-com-it.com> wrote:
> > >
> > > >
> > > >  To share a desktop on Connect you have to use a proprietary 
> > > >plugin which uses undocumented APIs in the Flash Player.
> > > >
> > > >  If memory serves me; Adobe was going to offer a service to 
> > > >expose these APIs.  I don't know what happened to it [and I don't 
> > > >remember the code name)
> > > >
> > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > >>      Well adobe has their Connect [1] application.  It runs in 
> > > >>flash and can share a desktop [2], so I know something exists.
> > > >>Although I think people are changing over to Java for screen 
> > > >>sharing these days since it's installed in most places already.
> > > >>
> > > >>
> > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > >> [2]
> > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver-b
> > > >>logs -c omp 
> > > >>onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > >>
> > > >>
> > > >> -Mark
> > > >
> > > >
> > > >--
> > > >Jeffry Houser
> > > >Technical Entrepreneur
> > > >http://www.jeffryhouser.com
> > > >203-379-0773
> > > >
> > >
> > >
> >
>



--
*Fabrice Montfort / CTO*

*fm@runware.com <fm...@runware.com>*

* <http://www.runware.fr/>*
Phone : +262 (0)262 28 67 30 / Mobile : +262 (0)692 93 57 10 13, rue Désiré Barquisseau • 97410 Saint-Pierre • Réunion, France • http://www.runware.fr

CONFIDENTIALITY NOTICE – This electronic message contains information which may be confidential. The information is intended for the use of the individual or entity identified above. If you are not the intended recipient, please be aware that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you receive this transmission in error, please notify the sender and delete the copy you received.

Re: Screenshare in AIR

Posted by Fabrice Montfort <fm...@runware.com>.
Hi there,

You can juste compile as executable and create an installer with some other
tools if you want to include some libraries. Really easy to do.

Hope that helps.

Fabrice

2015-07-01 12:02 GMT+04:00 David Frank <Da...@on24.com>:

> Thank you, Hector!!
>
> This helped greatly, and I got the AIR app working just as expected. This
> is awesome! Now, I'm just working on getting the AIR app and the ffmpeg
> files all put inside an installer (.exe and .dmg). Didn't think this would
> end so easily.
>
> The only downside is that I wont be able to get this working on mobile
> since the NativeProcess isn't supported.
>
> Any ideas on how such a feat can be accomplished through an Android/iOS
> AIR app?
>
> Thank you again!
>
> - David
>
> ________________________________________
> From: Héctor A [neverbirth@gmail.com]
> Sent: Tuesday, June 30, 2015 2:39 PM
> To: dev@flex.apache.org
> Subject: Re: Screenshare in AIR
>
> With ffmpeg there are tons of ways of doing something and parameters to
> set... so I'll just give one sample commandline, then you can investigate a
> bit further googling around or you can always try to ask and if we can
> reply we'll do so:
>
> -f gdigrab -framerate 30 -i desktop  -vcodec libx264  -vb 500000 -g 60
> -vprofile baseline -level 3.1 -pix_fmt yuv420p -acodec none -f flv rtmp://
> 127.0.0.1:1935/live/screenshare
>
> -f gdigrab: tells ffmpeg to use a built-in device it has that captures
> Windows windows through GDI. There are more capturers that use other
> methods like DirectShow.
>
> -framerate 30: the framerate at which the window content is captured.
>
> -i desktop: tells the device to capture the desktop, you can also use
> title="window name" to capture a particular window, you can also capture a
> particular area, make it output the video in a smaller size (if you are
> seeing the remote window in a small area why send the original image), etc.
>
> -vcodec libx264  -vb 500000 -g 60 -vprofile baseline -level 3.1 -pix_fmt
> yuv420p -acodec none: tells ffmpeg to stream using h264 in a format Flash
> understands: -vb 300000 is the bitrate (300kb/s in this case, you could use
> variable bitrate with different conditions), -g 60 is the keyframe
> interval, -acodec none tells the stream has no audio, gdigrab doesn't
> capture the audio anyway.
>
> -f flv rtmp://127.0.0.1:1935/live/screenshare: tells to stream the video
> in
> Flash video format, to a RTMP server (some local Red5 installation).
>
>
> On Tue, Jun 30, 2015 at 11:19 PM, David Frank <Da...@on24.com>
> wrote:
>
> > Hi Hector,
> >
> > Yes, please do provide me with some info. I already have the FMS part all
> > done since we have a webcam application. I'm just trying to build a
> > screenshare app through AIR.
> >
> > Any help would be very greatly appreciated.
> >
> > Thank you!
> >
> >
> > -----Original Message-----
> > From: Héctor A [mailto:neverbirth@gmail.com]
> > Sent: Tuesday, June 30, 2015 2:06 PM
> > To: dev@flex.apache.org
> > Subject: Re: Screenshare in AIR
> >
> > You can also use ffmpeg through NativeProcess and stream directly to FMS
> > through it. If you are interested I could provide some info, although not
> > on the FMS part, it's been years since I last used it and always go for
> > Red5 (my needs are often simple).
> >
> > On Tue, Jun 30, 2015 at 7:57 PM, David Frank <Da...@on24.com>
> wrote:
> >
> > > Hi all,
> > >
> > > Thank you for your inputs. As Russ suggested, I tried using the influx
> > > collaboration service. But, since yesterday, I simply don't understand
> > > how to make it work with an FMS server. All of the documentation
> > > online is on how to connect it to Adobe's Livecycle Service through an
> > > Authenticator. If only....if just only...someone could help me make
> > > this work with a local FMS server without an authenticator, then this
> > would suffice.
> > >
> > >         <rtc:ConnectSessionContainer id="connectSession" x="0" y="0"
> > > width="730" height="530" roomURL="http://myfmsserver.com/appname">
> > >                 <rtc:authenticator>
> > >                         <rtc:AdobeHSAuthenticator userName="blah" />
> > >                 </rtc:authenticator>
> > >                 <rtc:ScreenSharePublisher id="sspublisher" width="421"
> > > height="309" left="484" y="207" />
> > >         </rtc:ConnectSessionContainer>
> > >
> > >
> > > Thank you,
> > >
> > > David
> > >
> > >
> > > -----Original Message-----
> > > From: Russ Ferguson [mailto:rferguson@technologycoach.com]
> > > Sent: Tuesday, June 30, 2015 9:15 AM
> > > To: dev@flex.apache.org
> > > Subject: Re: Screenshare in AIR
> > >
> > > There is influxis collaboration service (used to be livecycle
> > > collaboration service) http://ics.influxis.com/modules/
> > >
> > > Šruss
> > >
> > > On 6/30/15, 10:45 AM, "Jeffry Houser" <je...@dot-com-it.com> wrote:
> > >
> > > >
> > > >  To share a desktop on Connect you have to use a proprietary plugin
> > > >which uses undocumented APIs in the Flash Player.
> > > >
> > > >  If memory serves me; Adobe was going to offer a service to expose
> > > >these APIs.  I don't know what happened to it [and I don't remember
> > > >the code name)
> > > >
> > > >On 6/30/2015 5:57 AM, Kessler CTR Mark J wrote:
> > > >>      Well adobe has their Connect [1] application.  It runs in
> > > >>flash and can share a desktop [2], so I know something exists.
> > > >>Although I think people are changing over to Java for screen sharing
> > > >>these days since it's installed in most places already.
> > > >>
> > > >>
> > > >> [1] http://www.adobe.com/products/adobeconnect.html
> > > >> [2]
> > > >>https://community.apan.org/cfs-file.ashx/__key/communityserver-blogs
> > > >>-c omp onents-weblogfiles/00-00-00-40-40/5672.Adobe-Connect-room.png
> > > >>
> > > >>
> > > >> -Mark
> > > >
> > > >
> > > >--
> > > >Jeffry Houser
> > > >Technical Entrepreneur
> > > >http://www.jeffryhouser.com
> > > >203-379-0773
> > > >
> > >
> > >
> >
>



-- 
*Fabrice Montfort / CTO*

*fm@runware.com <fm...@runware.com>*

* <http://www.runware.fr/>*
Phone : +262 (0)262 28 67 30 / Mobile : +262 (0)692 93 57 10
13, rue Désiré Barquisseau • 97410 Saint-Pierre • Réunion, France •
http://www.runware.fr

CONFIDENTIALITY NOTICE – This electronic message contains information which
may be confidential. The information is intended for the use of the
individual or entity identified above. If you are not the intended
recipient, please be aware that any disclosure, copying, distribution or
use of the contents of this message is strictly prohibited. If you receive
this transmission in error, please notify the sender and delete the copy
you received.