Multiple stream with FMLE

Is FMLE capable to detect few inputs and to stream multiple streams with different settings?
I would like to use DeckLink Duo with 2 sdi inputs, one SDI input would be HD signal other SD. Can I open two screens of FMLE and stream simultaneous?

You can run multiple instances of FMLE and select different devices/stream settings in each. Just double-click FMLE, then double-click again, you'll get two windows that you can set the different configurations in.

Similar Messages

  • Ability to control multiple streams?  FMLE command line CMD

    I'm new to the CMD line feature in FMLE.
    I want to stream multiple streams from FMLE, but is it possible to start stream 1 then stream 2 and then stream 3 at different times through the CMD Line?
    Best
    Jeff

    With the single instance you can not. You have to open 3 diff. instance of FMLE with profile you define.

  • Need help with setting up a stream with FMLE and FMS

    Hi guys!
    I'm new to this stuff, so i would love if you could guide me, and/or tell me if what i'm trying to do is even possible.
    This is what i'm trying to do:
    I am currently working on a project for Narvik University College in Norway. We are experimenting with remote control of some lab equipment. We want to stream live video from the lab for the students to see.
    So..
    I want to set up a stream from my webcam that can be accessed through a webpage by anyone (with minimal delay)
    This is what i understand i have to do:
    Use FMLE to connect to the webcam, and connect FMLE to FMS, and somehow get this out on my webpage.
    It's the Flash Media Server bit i don't understand. How do i go about to get this out on my webpage? Do I have to use a Flash Streaming service like Onyxservers to do this, or can i do this part myself? If yes, how complicated is this?
    Best Regards
    Daniel Bjørkman
    Narvik University College

    OK, i have now managed to set up the Flash Media Server and made a simple flash application that shows the stream.
    But now, everything is local, and if i want to embed the stream on the webpage, i guess it can't be local.
    The source in the flash application is "rtmp://localhost/live/livestream" and shows the webcam when i open the .html file (with the flash video embedded) on this computer. What should the source look like when i embed the flash file in a webpage that is not on this computer?

  • Frame rate drop while streaming with FMLE 3.2

    Hello,
    I was streaming locally at about 300 kbps, about 10 seconds after I start streaming, it pop a brief message that said : "buffering" and
    the framerate drops to 90 kbps and there is about 4 seconds lag between my monitor and the stream result. (there was less then 1 second before)
    Any idea how can I fix this buffering issue?

    receiveVideoFPS is method of NetStream class. For more information about this, you can check the following link:
    http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetStream.htm l#receiveVideoFPS()
    This can be set in the player code.

  • Software Switcher with FMLE and FMIS

    Hello Readers,
    I wanted to know if there is any facility to use Software Switchers along with FMIS
    The Situation:   I am streaming multiple streams using FMLE from one place and at the receivers end, the client receives only of the streams at a time.
    So I wanted to apply switcher so as, I could stream only one stream from FMLE at one time
    I have explained the scenario in the attached image.

    I don't think there are any software switchers as you have described (at least, none that I've seen). If the switcher is between FMLE and FMS, the switcher needs to be able to receive RTMP connection from FMLE, and make an RTMP connection to FMS.
    That said, you can achieve what you described with actionscript. The switcher (as in your diagram) would be the FMS application. Each FMLE would publish a stream to the FMS app, and you'd write server side methods to select the FMLE stream to show. Your FMS code would play the selected stream over a server side stream, which your clients would subscribe to.
    There's an old (yet still valid) example here:
    http://www.adobe.com/devnet/flash/articles/live_video_switcher.html

  • Something causes video to skip with FMS if we are starting our player after we started a stream with

    Hi, I'm playing live stream supporting FMLE from FMS. There is no problem with playing if we are starting at first the player and then we are starting the stream with FMLE. The video skipping problem is occurs only if we are starting first the stream with FMLE and than our player.
    The versions:  FMLE 3.0.1.5963, FMIS 4.0.0, Flash Player 10.1.53.64, and codec h.264
    Is this a bug in FMS/FMLE or I'm doing something wrong?
    Regards, kissk

    Ideally order of publish and play should not matter - i mean whichever way it should work fine. When you say video skipping problem what do you exactly mean - you mean you get only audio, also are you playing live or DVR stream?

  • Streaming HD with FMLE?

    I am using FMLE (for mac) with watershed ustream service and they claim that you can output HD to the web using FMLE. I am fairly new to the world of video streaming and don't entirely understand all of the codecs and what not, but is there somewhere where I can learn a little more about streaming this in High Definition?
    My camera that I will be using is an HD (production quality) camera so that camera is not an issue.
    I am also going from camera to camtwist then FMLE then the server
    I'm using CamTwist because its free and allows me to switch between desktop view and live video camera easily.

    That test happened to be with a Tricaster switcher with FMLE inside of it.  The 4-5Mbps was average which means spikes would be higher but in later analysis of the archive files from the Tricaster we see that it was 720p60 and that COULD explain why the average was so high.  What I would expect to see from FMLE is an average around 2 to 3Mbps but spikes up to 5Mbps.  We are running further tests on native FMLE (not in the Tricaster switcher) now that it has Blackmagic capture card support and you are free to contact me for those results once we finish our analysis ([email protected]).  Also, I do not want to diss FMLE or Adobe because FMLE does provide a very valuable low cost component in the ecosystem that Adobe has built around Flash Media Server and that ecosystem is what makes the Flash video platform viable for all of us to use - both customers and vendors like Kulabyte.
    Regarding the content, it was typical content we use for testing with both easy and difficult to encode video.  Regarding the FMLE settings, they were the standard settings for FMLE in the Tricaster switcher.  We no longer have the switcher, but even so it wouldn't be right to distribute that data as it belongs to Newtek.
    I want to get back to the question about whether the bitrate was average or spikes, however, because this is the most critical issue for live streaming.   The point I will make below is that for live streaming, constant-bitrate (CBR) encoding is an absolute must and FMLE does not do constant-bitrate; it only does variable bitrate (VBR).  The way we know this is from observation and also knowing that FMLE uses MainConcept's H.264 Standard codec which does not support CBR.  Kulabyte's XStream Live 2, on the otherhand, uses MainConcept's H.264 Professional codec which does support CBR.  See http://www.mainconcept.com/products/sdks/video/h264avc.html for more details.
    Now, consider the variation in internet connections among all of the people watching your stream.  First, everyone in your audience will not have the same download bandwidth on their internet connection.  Some may have 1.5Mbps, others will have 10Mbps on fiber, and most in the U.S. will fall in the 2Mbps to 5Mbps range.  For this reason, to insure the best possible user experience with a broad audience such as this, you really need to have multiple streams available to the viewer including maybe a 2Mb stream, a 1.2Mb stream, a 750Kb stream, and a 200-300Kb stream for mobile and and then you should use dynamic or adaptive streaming supported by FMS 3.5 with the major CDN's so that the player will negotiate with the FMS server and choose the best stream for that viewer's download bandwidth.
    Next, consider the path the stream must go from the encoder to the player computer.  First from the encoder to the FMS entry point, then from the entry point to an edge server, and then from the edge server to the audience members player.  With a good CDN, the bandwidth between the entry point FMS server and edge FMS server is huge so we can ignore that piece of the path.
    Before diving into the upload bandwidth from the encoder and download bandwidth to the player computer, let's estimate how much bandwidth is needed.  For sake of argument, let's assume that FMLE has a 50% swing in bitrate from the average.  Kulabyte's XStream Live's actual bitrate swing is typically about 5-8%, but well assume 10% to be generous.  Next, let's assume (I think this is pretty safe) FMLE's average bitrate is about 50% higher than XStream Live 2's average bitrate for the same video quality (due to other differences between the MainConcept codec and other optimizations done by Kulabyte).  Now let's calculate the bandwidth needed for the streams I mentioned above.
    XStream Live 2
                      Average         Peak
    720p              2Mbps          2.2Mbps
    480p              1.2Mbps        1.32Mbps
    360p              750Kbps        825Kbps
    Total                            4.3Mbps
    (I'm leaving off the 4th stream for mobile because FMLE can only do 3 output streams, XStream Live 2 can do 4 plus more if you really want to)
    FMLE
                      Average         Peak
    720p              3Mbps          4.5Mbps
    480p              1.8Mbps        2.7Mbps
    360p              1.1Mbps        1.6Mbps
    Total                            8.8Mbps
    Now back to the path the stream takes.  If you are streaming from a fixed location where you can get fiber and a solid 10Mbps uplink, then you will be able to send the three streams noted above from your encoder to the FMS entry point.  However, if you can only get a solid 5Mbps uplink (like business class cable modem), what you will see with the FMLE encoder is that every time the video is a bit challenging and it swings to the high side of its bitrate, your video is not going to get to the FMS entry point and everyone down the line will see buffering.  If your viewers didn't pay for what their watching, then maybe that's OK but for professional streaming with paid subscribers, this would be unacceptable.  If it's not as good as TV, then you will not retain viewers.  And, what we find with our streaming customers is that more often than not, getting good uplink bandwidth is very challenging.
    Now consider the path from the edge FMS server to the audience member's player on their laptop.  With dynamic streaming enabled, the viewer should see the stream most appropriate for their download bandwidth, but at 4.5Mbps for the 720p stream, how many people are going to be able to see that with their home internet connection.  Many will only be able to see the 480p at 2.7Mbps and many others will only be able to see the 1.6Mbps stream.  I think I mentioned this very early in the thread, but research done by Akamai shows that you will get much better audience retention with 720p versus 480p and, of course, you can not have the video stop for buffering ever.  Thus, not having a good constant bitrate stream can bite you both on the uplink side from your encoder, unless you are fortunate enough to be streaming from a location with fiber, and this affects all viewers (i.e. buffering) and it can bite you on the downlink side for your audience because they will not see the quality of video they could see if you had a good constant bitrate and lower average bitrate stream.
    Tim

  • Streams with multiple writers

    Here is a conundrum I've been unable to solve:
    How do multiple threads write to a PrintWriter, and then disconnect without killing each other?
    Here's the long version:
    Consider a thread with two pipes:
    PipedInputReader p1in = new PipedInputReader();
    PipedOutputWriter p1out = new PipedOutputWriter(p1in);For speed, efficiency, and the desire to use the readline() method, this thread wants to wrap the input with a buffer:
    BufferedReader in = new BufferedReader(p1in);Now, this thread wants to give access to the other end of the pipe to someone else, and wrap it in a BufferedWriter. In turn, that will be wrapped in an autoflushed PrintWriter so that we can use the println() method:
    PrintWriter out = new PrintWriter(new BufferedWriter(p1out), true);Now we just need to give that to the outside world:
    public PrintWriter getBuffer() {
    return out
    }Putting it all into a complete class (that may not be runnable due to typos; I'm doing this by hand), we get the following:
    class buf implements Runnable {
      private PrintWriter out = null;
      public PrintWriter getBuffer() {
        return out
      public void run() {
        PipedInputReader p1in = new PipedInputReader();
        PipedOutputWriter p1out = new PipedOutputWriter(p1in);
        BufferedReader in = new BufferedReader(p1in);
        PrintWriter out = new PrintWriter(new BufferedWriter(p1out), true);
        String text = "";
        while ( (text = in.readline()) == true ) {  ;;;; }
      }Of course, toss in the try/catch blocks and all that. I probably missed a keyword here and there; eclipse does that for me :)
    Now, this works remarkably well. 20 threads can call getBuffer on that thread and write to it, and everything is synchronized nicely. It really does work well enough for my needs.
    However, when one of those threads exits, all the pipes close and everyone dies.
    Say I have another thread that does the following:
    PrintWriter xx = thethreadabove.getBuffer();I would think that somewhere along the line, when that thread is done, I can just do:
    xx = null;And let the thread exit. I'd be wrong, however. It makes everything die. So, what can I do?
    How can I have multiple writers with just a single reader? I am not locked into pipes wrapped by bufferedwriters wrapped by printwriters; they just provide what I need with little issue. I'm guessing someone will tell me at some point that I was supposed to use a queue of some sort (arrayblockingqueue, etc.), and I'm sure that might work with enough spit and tape. Streams should work too, though, shouldn't they? I should be able to remove one of many references to a PrintWriter without killing the underlying pipe, right?

    Ok, so here's what I found. First, I had the reader thread export a PrintWriter by doing the following:
    private MyBuffer outside
    public ReaderThread() {
      outside = new MyBuffer(new BufferedReader(pipe))
    public PrintWriter getBuffer() {
      outside.register();
      return (new PrintWriter(outside))
    }The MyBuffer class is then:
    public class MyBuffer extends FilterWriter {
      private int count = 0;
      public MyBuffer(Writer w) {
        super(w);
      public void register() {
        ++count;
      public void close() {
        --count;
        if (count <= 0)
          super.close();
    }I couldn't for the life of me get that close method to be called. Even if I called it manually, things still fell apart, because after about 1 second, the pipe would close.
    Here's what I found:
    Pipes have a nice undocument / poorly documented feature wherein they will close 1 second after the last thread that wrote to the pipe exits. Crazy, eh? Pipes expect one and only one thread to do the writing, and have a rather lousy mechanism for even achieving that goal (proven by how I worked around it). They record the thread id of the last thread to write to the pipe. So if I have the aforementioned 20 worker threads that all get a pointer to the printwriter encapsulating the buffer encapsulating the pipe, and they each write to the printwriter, each write will change the value of the thread id that the pipe is looking for. If one of those threads dies and is listed as the last thread to conduct a write, then the whole pipe shuts down, causing a ripple effect of broken pipes.
    This is a very inneffective design, and even the source code for the java sdk contains comments saying that there should be a better way. Until that ever gets fixed, I'm left with having to signal another thread to do a write before the dying thread can terminate. This is not very safe in the case of a real problem with a given thread, but at least it works in terms of the "go-path".
    Craziness.
    If anyone can think of a good way to handle this, I'm open. I'm thinking write now that I need a separate thread to do the watching, and dying threads need to signal that thread to take over as the "last writer". Either that, or maybe work up an event listener to trigger on every write. I really don't know. This is disappointing really.

  • What is the Difference with FMLE 3.1 and 3.2? having problems with my stream

    What is the difference with FMLE 3.1 and 3.2?
    I am having major problems with my live stream, i am currently using FMLE 3.1 and using a Imac computer.
    The stream seems to be delayed by 20mins and keeps on crashing
    I have a 2MB upload speed and frame rate 25.00 and bit rate 800 kbps fromat VP6
    Can anyone help me with getting the settings right and what is the best computer to use to allow FMLE not to crash and stream to run smooth?
    Please Help
    Thank you

    Hello!
    I would be interested in helping you with your question. You are going to need to provide a little more information about your current configuration in order for me to better understand your issue. Until then, I'll do my best to answer your quesitons.
    There are subtle changes from 3.1 to 3.2. Both are stable releases. With your setup, you should be using 3.2.
    Issues with FMLE typically deal with your capture card. The issues you are having sound like a streaming server issue. Stream delayed 20min? This isn't typical behavior. What streaming media server are you usign? FMS or Wowza? Define 'crashing'. Anything in the output log in FMLE or is your server 'crashing'.
    Thank you,
    Stephen Apple
    Independent Broadcast

  • How can you use multiple stream types with one socket?

    Hi,
    I'm working on a large program that currently uses Object Input/Output streams for all of the messaging in a client/server application. This works fine except when files need to be transferred. In many cases using a Object stream to send a file can be 30 times slower than using a Buffered input/output stream. I've found I can combined the two. Here are some code snippets to give you a basic idea of what's happening...
    BufferedInputStream bis = new BufferedInputStream( serverSocket.getInputStream( ) );
    ObjectInputStream ois = new ObjectInputStream( serverSocket.getInputStream( ) );
    //this code runs on a thread on the server
    while( true ){
    switch( whichKindOfStreamUsedNext ){
    case OBJECT_STREAM:
    Object object = ois.readObject( );
    doSomethingWithObject( object );
    break;
    case BUFFERED_STREAM:
    readFromBuffer( bis );
    break;
    Obviously there is a lot missing here. Basically the variable whichKindOfStreamUsedNext is changed in the methods doSomethingWithObject( ) and readFromBuffer depending on what the current state of the server is and what is passed to these methods from the client.
    Here is the problem. If readFromBuffer( ) does a very small task and the client sends an object through an object stream everything is okay. I've switched whichKindOfStreamUsedNext = OBJECT_STREAM before that point and by the time the client sends the object the server is waiting on Object object = ois.readObject( );. However if the method readFromBuffer( ) does a very time intensive task and it takes a while to return and meanwhile the client sends an object then the server never gets that object. Does anyone have an easy solution to this problem. (Changing the whole program to just using BufferedStreams is not a solution).
    Thanks.

    Thanks a lot for the response.
    I guess I didn't realize I could do that.
    I changed how I am doing the program anyways. Sending flags to switch streams was a little messy. but now I have a new problem. I've discovered that mixing object streams with buffered streams also leads to significant speed increases. I do that in this manner...
    int ONE_MEG = 1024*1024;
    ObjectInputStream ois = new ObjectInputStream( new BufferedInputStream( socket.getInputStream( ), ONE_MEG ) );
    and I do the same thing for the ObjectOutputStream. It works very well when I just set up the client's output stream and the servers input stream in this manner. Upload times are increased from 60 seconds to 2-5 seconds.
    Unfortunately when I try to do the same thing with the servers output stream and the clients input stream to speed up downloads I get deadlock! As soon as the socket connection is opened and I try to set up the streams in this manner I get deadlock. Does anyone have any idea why this occurs and what I can do to fix it?

  • How to set up multiple streams on one PC

    Hi there,
    can anyone guide me in setting up multiple streams using the FLME and different sources?
    thanks,

    Hi,
    Did you know that you can have several instances of Flash Media Live Encoder  running on your computer?
    Open FMLE and choose the camera you want to use and set the parameters etc.
    double click the FMLE application again and other instance will open. You  can then set up a different camera on this instance, this way you can have two cameras streaming at the same time.
    the only issue here is that you need a computer powerful enough to handle the multple streams and the bandwidth of multiple streams from the computer to FMS for example.
    Is this what you meant?

  • HT204053 i have 2 apple ids and one is from years ago when icloud wasnt a thought but now somehow it became my primary apple id and i cant photo stream with the apple id i use. Even if im signed into my old one the photo stream doesnt automatically go to

    i have 2 apple ids and one is from years ago when icloud wasnt a thought but now somehow it became my primary apple id and i cant photo stream with the apple id i use. Even if im signed into my old one the photo stream doesnt automatically go to my mac. Im not exactly technology savy but id love to figure this out.

    I have also noticed the same "problem".  I do not fully understand the impact of using the same ID on multiple computers and devices if I want to keep them all in sync.

  • Can I have multiple stream types in one object?

    For my final project in my data commucnications class I'm writing a client/server socket application that will allow multiple clients to play TicTacToe simultaneously against the game on the server. The teacher is a C/C++ jock, and knows very little Java. We're free to choose any language that will do sockets, and I love Java and don't love C++.
    I've built the GUI, and got it to the point that I can reliably connect multiple clients on different machines in the school lab to the Server object, which accepts the new sockets and creates a new thread of ServerGame to do the playing in response to the client's moves. A mousePressed() detects clicks in the grid, and modifies a string to contain the status of the game. I've used a BufferedReader and PrintWriter combination on both sides, to send the GameString back and forth, starting with "---------", then the client makes a move and it changes to "X--------" and the PrintWriter sends it over and the ServerGame makes a move to "X---O----" and send it back, etc, etc. You get the idea. I have a ways to go with the implementation of strategy stuff for the ServerGame's moves, but I like it so far. But now I realize it would be really cool to add to it.
    What I want to do, since there can be multiple players, is have a way that it can be like a TicTacToe club. At any one time, it would be nice to be able to know who else is playing and what their won/loss record is. I plan a Player object, with String name, int wins, losses, ties, gets and sets. With Textfields and a Sign In button I should be able to send the Player name to the Server, which can look up the name in a Vector of Player objects , find the one that matches, and sends the Player object for that name over to the Client, and also provide it to the ServerGame. Each player's won/loss record will be updated as the play continues, and the record will be "stored" in the Server's vector when he "logs off". Updates shouldn't be too hard to manage.
    So, with that as the description, here's the question -- most streams don't handle Objects. I see that ObjectInputStream and ObjectOutputStream do. So -- am I headed for trouble in using multiple stream objects in an application? I suppose I could just use the object streams and let them send out a serialized String. In other words, I want to add this to my program, but I don't want to lose too much time finding out for myself if it works one way or the other. I already have working code for the String. Without giving too much away, can anyone give me some general guidance here?

    Anyway, here's the present roadblock that's eating into the time I have left. I've spent many happy hours looking for what I'm missing here, and I'm stumped, real-time.
    I found it was no problem to just send everything over and back with ObjectInputStream and ObjectOutputStream. From the client I send a String with the state of the game, and can break it down and code for decisions in the server as to a response and send the new String back to the client. I now have a Player class with Strings name and password, ints wins, losses, ties. I have a sign-in in the client GUI and old "members" of the club are welcomed and matched with their Player object stored in a Vector, and new members are welcomed and added to the Vector. My idea is to make the Vector static so the clients can have access to the Vector through their individual threads of the Game in the server. That way I should be able to make it so that any one player can have in his client window a TextArea listing who's playing right now, with their won-loss record, and have it updated, real-time.
    The problem is that in my test-program for the concept, I can get a Player object to go back and forth, I can make changes in it and send it back and have it display properly at either end after a change. What I'm aiming at in the end is the ability to pass a copy of the Vector object from the server to the client, for updating the status of everyone else playing, and when there's a win or loss in an individual client, it should be able to tell its own server thread and through that update the Vector for all to access. Sounds OK to me, but what's happening is that the Vector that goes into the pipe at the server is not the same as the Vector that comes out the pipe into the client. I've tried all the tricks I can think of using console System.out.println()'s, and it's really weird.
    I build a dummy Vector in the constructor with 4 Players. I can send a message to the server that removes elementAt(0), and tell it to list the contents of the Vector there, and sure enough the first element is gone, and the console shows a printout of the contents of all the remaining Player objects and their members. But when I writeObject() back to the client, the whole Vector arrives at the client end. Even after I've removed all the Player elements one by one, I receive the full original Vector in the client. I put it into a local Vector cast from the readObject() method. I believe that should live only as long as the method. I even tried putting clear() at the end of the method, so there wouldn't be anything lingering the next time I call the method that gets the Vector from the server.
    What seems the biggest clue is that now I've set up another method and a button for it, that gets the elementAt(0) from the server Vector, changes the name and sends it back. Again, after the regular call to get the Vector sent over, it shows in the server console that one element has been removed. And one by one the element sent over from (0) is the one that was bumped down to fill the space from removeElementAt(). But in the client, the console shows 4 objects in the Vector, and one by one, starting at (0), the Player whose name was changed fills in right up to the top of the Vector.
    So something is persisting, and I just can't find it.
    The code is hundres of lines, so I hesitate to send it in here. I just hope this somewhat lengthy description tips off someone who might know where to look.
    Thanks a lot
    F

  • Is there a updated list of video card/adapters that work with FMLE

    I am looking to buy a video card or adapter that work with FMLE. I am trying to live stream to ustream. I am looking for a video card preferibably with composite input.

    http://www.adobe.com/support/documentation/en/flashmediaencoder/FMLE_DeviceMatrix3.1.pdf

  • How to handle multiple streams

    Hi
    I wanted to handle multiple source Streams with Player. do i need to create a each player for each Stream ?? how can i do that ??
    Thanks in Advance,
    Karthikeyan R

    It's not at all obvious what a SequenceOutputStream would do. The way to write lots of stuff over a socket is to wrap multiple output streams round sock.getOutputStream and flush each one when you've finished with it. (There may be issues with compressed / bit output streams).

Maybe you are looking for

  • Adobe Captivate 7 Crashes Whenever I open any new or existing item.

    I can launch Adobe Captivate 7 on my OS X 10.9.2 MacBook Pro (2013 with dedicated graphics card). However, whenever I try to open an existing item or even launch a new item, the software crashes on me. I've already uninstalled and reinstalled the pro

  • Keywords and LR 1.1

    I finally got updated to LR 1.1. Last week I was introduced to a "Missing a required dll file" message; jump on Google and with a couple of minutes found that I wasn't the only. Downloaded "Windows Installer Update" and was good to go. Enough about t

  • How can I force valueChange in client listener to fire

    I've ADF fusion web application version 11.1.1.6 and I've input text it value is #{row.bindings.ManagerId.inputValue == 1}and client listener on it         <af:inputText id="it12"                       value="#{row.bindings.ManagerId.inputValue == 1}

  • Request Status stays yellow after successful load

    We recently started loading two infocubes from the same data source.  - The Monitor shows that the load completed normally with no errors.  - Manage on the first cube shows that the status is green and the data available for reporting.  - Manage on t

  • HT1349 how do you find out your keychain password?

    I do not know how to find my keychain password and we recently moved and I can not find my software that came with my computer.