I need in web cam that would be work in Linux.

Please write list of web cam that have linux drivers.

I asked my reb at CDW who sent an e-mail to Creative labs sales and was told the the Live Cam Optia Pro had drivers available for linux
This camera supports UVC (USB Video Class) whick is supported with in Linux see http//linux-uvc.berlios.de.
The driver is included on the Suse Enterprise desktop 0-2 distr, but so far I have not been able to get the camera to work correctly.
I am still working on the problem.

Similar Messages

  • I need a web cam

    Where in the **** is the i sight did apple stop making it ? I need a web cam any body got any idea`s or is apple going to start production again?

    Hello Allen,
    We are prohibited by the Apple Discussions Terms of Use from speculating about what Apple is going to do.
    Recent iSight Discussions topics that may help you:
    http://discussions.apple.com/thread.jspa?messageID=5022721&#5022721
    http://discussions.apple.com/thread.jspa?messageID=5084706&#5084706
    http://discussions.apple.com/thread.jspa?messageID=4761510&#4761510
    http://discussions.apple.com/message.jspa?messageID=4266538#4266538
    If you need more, take a look at the other links returned by this search of iSight Discussions for "alternative iSight".
    EZ Jim
    PowerBook 1.67 GHz   Mac OS X (10.4.10)    G5 DP 1.8  External iSight

  • Interested in buying an old 35mm prime lens for my film camera that would fit and EF mount.

    Interested in buying an old 35mm prime lens for my film camera that would fit and EF mount. I've found plenty of FD mounts and plenty of newer EF lenses around $200-300. Would like somethign in between if anyone has something. Does not have to be Canon brand.

    I would not buy Canon FD or Minolta MD lenses as they will need a very expensive modification on order to work with any Canon EOS camera. (film or digital) There are cheap adapters available, but they have cheap glass optics that ruin the image quality.
    Old Manual Focus lenses from Nikon, Pentax, and Olympus can use a very inexpensive adapter with Canon EOS cameras and still give great results.
    More info here: Using Manual Focus Lenses on Canon EOS bodies
    Mike Sowsun
    S110, SL1, 5D Mk III

  • Why is photo booth giving a message saying no camera attached when it has a web cam? it did work okay when I bought the computer six months ago?

    Why is "photo booth" giving a message saying "no camera attached" when it has a web cam? it did work okay when I bought the computer six months ago?  

    I have already copied my photographs to the a library manager but when I tried to reuse iphoto and import the photos back into iphoto, it would not let me.
    You can't "copy" your photos to the "library manager", there is just no way to any such thing.
    Option 1
    Back Up and try rebuild the library: hold down the command and option (or alt) keys while launching iPhoto. Use the resulting dialogue to rebuild. Choose to Repair Database. If that doesn't help, then try again, this time using Rebuild Database.
    If that fails:
    Option 2
    Download iPhoto Library Manager and use its rebuild function. (In early versions of Library Manager it's the File -> Rebuild command. In later versions it's under the Library menu.)
    This will create an entirely new library. It will then copy (or try to) your photos and all the associated metadata and versions to this new Library, and arrange it as close as it can to what you had in the damaged Library. It does this based on information it finds in the iPhoto sharing mechanism - but that means that things not shared won't be there, so no slideshows, books or calendars, for instance - but it should get all your events, albums and keywords, faces and places back.
    Because this process creates an entirely new library and leaves your old one untouched, it is non-destructive, and if you're not happy with the results you can simply return to your old one.  
    Regards
    TD

  • I am looking to purchase a monitor for a Power Mac G4 OR a Web cam that is compatible with the the Power Mac G4.

    I have a G4 Power Mac without the original monitor - I am using a monitor from a PC that does not have a built in webcam. I have also tried a "Blue" brand webcam that was received as a gift for me that does not work...and went to best buy to buy a compatable one and they had none that they thought would work w/ the G4 power mac  What are my options? Ideally the cheapest would be a compatable webcam. any thoughts/suggestions? or thoughts about where to get a replacement original monitor.
    thanks!

    HI,
    ON the cam front.
    The OS will support UVC compliant camera (USB Video Class) since 10.4.9  in iChat (Slightly earlier in other apps)
    The issue for older G4 macs is that these are always USB 2.0 cameras (Used to be marked "Vista Ready" or "Certified" as Windows went USB 2.0 about the same time).
    I have a G4/1ghz Dual Processor tower (So called Mirrored Doors)
    This can have extra PCI cards and have installed one with 4 USB 2.0 ports  (Remove blank, insert and secure with screw and away it went)
    Nowadays virtually any USB webcam will be UVC compliant and USB 2.0  (Meaning no Windows or Mac Drivers to download and Install)
    The abilities of the Drivers in the OS do vary between Windows and Macs of this age.  (Lion on Intels does bring face tracking).
    Anyways, once you solve the USB 2.0 input issue then virtually any USB 2.0 camera will work including the X-Box 360 cam or a PalyStation 3 one
    Firewire
    The Original External iSight was of course Firewire.
    There were a number of other around the same time (Until USB cameras took over).
    This means that some DV convertors that use Firewire to get Analogue CamCorders signals into a Mac will work (some digital camcorders may not produce a DV signal as such and will need a convertor)
    The camera may have options on it's playback that mean it can be in 4:3 ratio if used with iChat.  It also cannot be HDV (or any propriatary form)  (You have to have an Intel and Lion/iChat 6 for HD).
    Of course some DV camcorders  do use Firewire to connect to a computer  (although this has dropped off as USB 2.0 is actually slightly faster)
    iMovie will accept many more formats than iChat will but you were talking about Web Cams.
    NOTES 
    You may find sites still trading the external iSight.  They are going to be at least 8 years old now and you will need to check so how that they are working
    USB 1.1
    If you can find a USB 1.1 Camera for sale or tucked in a drawer  it will need two things:-
    1) A Mac Driver
    2) This Utility for iChat http://www.ecamm.com/mac/iusbcam/
    Some manufacturers did have web sites with Downloads.
    The Camera Guide page at Ecamm shows the links to two third Party Drivers from macam and IOXperts.
    You will note the first Ecamm page says that iUSBCam does not work in Snow Leopard but you specs do say you are using Leopard (10.5)
    Back to Screens
    My tower has a card that supports two monitors.
    The one I bought with my Tower was the Studio Display (Same Acrylic type surround to the screen as the Tower).  (It does have USB 1.1 ports on the back)
    This used the then Apple Display Connector (ADC)
    It also had a DVI output.
    Ergo any DVI Screen will work.
    As to whether a  DVI screen/display with a camera can use that DVI connector to feed the Camera to the Mac I don't know.
    9:27 PM      Saturday; December 24, 2011
    Please, if posting Logs, do not post any Log info after the line "Binary Images for iChat"
      iMac 2.5Ghz 5i 2011 (Lion 10.7.2)
     G4/1GhzDual MDD (Leopard 10.5.8)
     MacBookPro 2Gb (Snow Leopard 10.6.8)
     Mac OS X (10.6.8),
    "Limit the Logs to the Bits above Binary Images."  No, Seriously

  • Other web cams that work with apple

    Does any one know of any other web cam other then Isight that work with Apple ?

    Hello Matt Ramirez,
    Here's a link that includes a list of cameras they have found to be compatable:
    http://www.ecamm.com/mac/ichatusbcam/configs.html
    If you have a more specific question, let us know. In the meantime, have fun and let do post back on your final setup.
    Respectfully,
    Bill Gallagher

  • Are there 3rd party web cams that work with Mac?

    I bounght an iMac G5 just before iSight was built in. Recently I went to but the iSight camera, but it is no longer sold seperately. Tried an off-the-shelf Logitech cam but to no avail. Is there a 3rd party cam that will work????

    Check http://www.applechat.info/
    P.S. And considering you have no MacBook Pro according to your profile, and it has its own built-in iSight, you might seriously want to consider posting further questions about your machine in the appropriate forum, if I can't answer them. First determine if your iMac is indeed a G5:
    Next post here for iMac G5:
    http://discussions.apple.com/category.jspa?categoryID=134
    And here for iBook G4:
    http://discussions.apple.com/category.jspa?categoryID=131
    under the appropriate forum.

  • Are there digital Canon cameras that would be compatible with the lenses to a Canon TX?

    Are there any Canon digital cameras that will accept lenses for a Canon TX film camera? 

    The TX uses the FD mount and the digital cameras use an EF or EF-S mount and they are not interchangeable.
    Joe

  • Icantget my web cam to load whyor work

    when i install the drive for my web cam all i get is there it cannot be installed because of an error why
    == This happened ==
    Not sure how often
    == i loaded the drive for my web cam

    You should look for support with your webcam manufacturer, I believe.

  • I have a camera that does not work with apple or IPad any way to make it work?

    Is there any app or program that get the camera to down load to IPad or apple computer? It works with Linux or window.

    Well, they have a website, but here is a link to their information about unlocking iPhones.
    http://www.att.com/esupport/article.jsp?sid=KB414532&cv=820#fbid=6d7EKuCF_dr
    You may not qualify for an unlock though.

  • I would like to have Internet Explorer on my 2008 iMAC, what and how is needed to install.  There is a  site I need to get to that will not work with Apple

    Would like to know what is needed to install Internet Explorer ion my iMAC ( 2008 on OSX 10.7.3)

    budeeymac wrote:
    Would like to know what is needed to install Internet Explorer ion my iMAC ( 2008 on OSX 10.7.3)
    Try Safari > Preferences > Advanced and down the botton tick Show Develop Menu In Menu Bar. Now you will see Develop in the top menu in Safari, click on it to open the drop down window, go to User Agent and select Internet Explorer and see if this allows you to open the page. Otherwise, as Deggie said, it's up to a Windows Install on your Mac through Bootcamp or Paralells or the like to run IE within Windows.
    Pete

  • Not able to activate "email us" tab on a web site that previously did work, hosting co says it is not them, and safari works fine-- help!

    Mac mini, will not open FF when i select "e mail us" on a web site tab.
    This site has always worked before I updated to latest FFversion.
    The hosting co checked the links and they are all ok. The email us function is performing with Safari.
    I repaired permissions on the mac, but no help with this problem.

    OK, I realize now that I need to upload to the web site the version of the PDF with the word "_distributed" appended to the file name, not the original PDF file.  When I do that, it now gives info at the top about how to submit the form.
    So my only question, I think, is what kind of submit button to place on the form itself.
    I see there is another kind of button I can place on the page, just a plain "Button".  Within its Object Palette, I see a setting called "Control Type", with choices of "Regular", "Execute", and "Submit".
    If I choose "Submit", it asks "Submit to URL...", so that isn't what I want.  "Execute" also asks for some info that I don't have.  So do I just choose "Regular" for this button?  If a user clicks that, does the data get submitted to adobe.com and the responses file?
    Dave

  • Web Cam applet is not working in great consistency

    Hi... My video capturing applet is not working very well.
    The image stream is displayed on the web page in JPEG format with 0.5 quality. However, it crashes after a while and the it does not release the vfw resource.
    I have to restart my machine in order to execute it again.
    Can anyone please help?
    Thanks.
    Carter

    Ok. Thanks.
    Sender Applet
    import javax.swing.*;
    import java.io.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.event.*;
    /*<applet code="myGUIApplet.class" width="300" height="300"></applet>*/
    public class myGUIApplet extends JApplet implements ActionListener
         private JPanel bottom=new JPanel();
         private JPanel centVisual=new JPanel();
         private JPanel connectionAddress=new JPanel();
         private JButton capture=new JButton("Start Capturing");
         private JButton stops=new JButton("Stop");
         private JMenuBar menubar=new JMenuBar();
         private JMenu file=new JMenu("file");     
         private JMenuItem fileItem1=new JMenuItem("Exit");
         private JLabel serverip=new JLabel("Server IP");
         private JTextField setIP=new JTextField();
         public static JTextField ServerInfo=new JTextField();
         private MyTransmitter mytrans;
         private String ip;
         public static final String DEFAULT_MULTICAST_IP="226.10.10.20";
         public static final String DEFAULT_PORT="80";
         public void init()
              //setSize(400,400);               
              setLayout(new BorderLayout());
              menubar.add(file);
              file.add(fileItem1);
              bottom.setLayout(new BorderLayout());
              bottom.setBackground(Color.black);
              bottom.add("West",capture);
              bottom.add("East",stops);
              connectionAddress.setLayout(new BorderLayout());
              connectionAddress.add("North",serverip);
              connectionAddress.add("South",setIP);
              ServerInfo.setEditable(false);
              connectionAddress.add("Center",ServerInfo);
              setIP.addActionListener(this);
              setIP.setText("");
              capture.setBackground(Color.lightGray);
              capture.addActionListener(this);
              stops.addActionListener(this);
              fileItem1.addActionListener(this);
              add("South",bottom);
              add("North",menubar);     
              add("Center",connectionAddress);          
         public void actionPerformed(ActionEvent ae){
              Object source=ae.getSource();
              if(source==capture){
              if(setIP.getText().equals(""))
                        ip=DEFAULT_MULTICAST_IP;
              else{
                   ip=setIP.getText();
                   if(mytrans!=null){
                        mytrans.stopTransmitter();
                        mytrans=null;                         
                   System.out.println(" - Connecting to "+ip+" port: "+DEFAULT_PORT);
                   ServerInfo.setText(" - Connecting to "+ip+" port: "+DEFAULT_PORT);
                   mytrans=new MyTransmitter(ip,DEFAULT_PORT,ServerInfo);
                   mytrans.start();               
              if(source==stops){
                   if(mytrans!=null)
                        mytrans.stopTransmitter();
                   System.exit(0);
              if(source==fileItem1){
                   if(mytrans!=null)
                        mytrans.stopTransmitter();     
                   System.exit(0);
         public void destroy(){
              if(mytrans!=null){
                   mytrans.stopTransmitter();
    import java.awt.*;
    import javax.swing.*;
    import java.io.*;
    import java.util.*;
    import java.net.InetAddress;
    import javax.media.*;
    import javax.media.protocol.*;
    import javax.media.protocol.DataSource;
    import javax.media.format.*;
    import javax.media.control.TrackControl;
    import javax.media.control.QualityControl;
    import javax.media.rtp.*;
    import javax.media.rtp.rtcp.*;
    import javax.media.rtp.*;
    import java.io.InputStream;
    import javax.media.rtp.RTPManager;
    public class MyTransmitter extends Thread
         private MediaLocator videoLocator;
         private String ipAddress;
         private int basePort;
         private Integer stateLock=new Integer(0);
         private boolean failure;
         private Processor processor;
         private DataSource videoDataInput,videoDataOutput;
         private RTPManager rtpMgrs[];
         private VideoFormat JPEG_VIDEO=new VideoFormat(VideoFormat.JPEG_RTP);
         private SendStream sendStream;
         private SourceDescription descriptionList[];
         private JTextField infoField;
         public MyTransmitter(String ips,String ports,JTextField ServerInfo){
              infoField=ServerInfo;
              ipAddress=ips;
              Integer bPort=Integer.valueOf(ports);
              if(bPort!=null)
                   basePort=bPort.intValue();
         public void run()
              initializeVideo();
              if(videoLocator!=null){
                   createMyProcessor();
                   createMyManager();
              // May be should put inside the if..else statements
              //createMyTransmitter();
         // Initailize the video
         public void initializeVideo()
              // Stre the devices in a vector
              VideoFormat format=new VideoFormat(VideoFormat.RGB);
              Vector deviceList=CaptureDeviceManager.getDeviceList(format);
              CaptureDeviceInfo deviceInfo=null;
              // If there is more than one device detected
              if(deviceList.size()>0){
                   // Set the first device to device Info
                   // GEt the media locator of the devie
                   deviceInfo=(CaptureDeviceInfo)deviceList.elementAt(0);
                   videoLocator=deviceInfo.getLocator();
              }else{
                   System.out.println(" --X No device found...");
                   infoField.setText(" --X No device found...");
         public void createMyProcessor()
              boolean result=false;
              DataSource ds=null;
              // Check if the media locator is null
              if(videoLocator==null){
                   System.out.println(" --X No video locator..");
                   infoField.setText(" --X No video locator...");
              System.out.println(" - Trying to create a Processor..");
              infoField.setText(" - Trying to create a Processor..");
              // Attempt to create DataSource from media locator
              try{
                   ds=Manager.createDataSource(videoLocator);
              }catch(Exception ex){
                   System.out.println(" --X Unable to create dataSource : "+ex.getMessage());
              System.out.println(" - Video data source is created..");
              infoField.setText(" - Video data source is created..");
              // Try to create Processor from DataSource
              try{
                   processor=Manager.createProcessor(ds);
              }catch(NoProcessorException npe){
                   System.out.println(" --X Unable to create Processor: "+npe.getMessage());
                   infoField.setText(" --X Unable to create Processor: "+npe.getMessage());
              catch(IOException ioe){
                   System.out.println(" --X IOException creating Processor..");
                   infoField.setText(" --X IOException creating Processor..");
              // Wait for the processor to be configured
              result=waitForState(processor,Processor.Configured);
              if(result==false){
                   System.out.println(" --X Could not configure processor..");
                   infoField.setText(" --X Could not configure processor..");
              // Set the track controls for processor
              TrackControl []tracks=processor.getTrackControls();
              if(tracks==null || tracks.length<1){
                   System.err.println(" --X No track is found..");
                   infoField.setText(" --X No track is found..");
              // Set the content description of processor to RAW_RTP format
              // This will limit the supported formats to reported from
              // Track.getSupportedFormats() to valid RTP format
              ContentDescriptor cdes=new ContentDescriptor(ContentDescriptor.RAW_RTP);
              processor.setContentDescriptor(cdes);
              Format []supported;
              Format chosen=null;
              boolean atLeastOneTrack=false;
              for(int i=0;i<tracks.length;i++){
                   Format format=tracks.getFormat();
                   if(tracks[i].isEnabled()){
                        supported=tracks[i].getSupportedFormats();
                        // WE've set the output content to RAW_RTP.
                        // So, all the supporte formats should work with RAW_RTP.
                        // We will pick the first one.
                        if(supported.length>0){
                             if(supported[0] instanceof VideoFormat){                              
                                  chosen=checkVideoSize(tracks[i].getFormat(),supported[0]);
                             }else
                                  chosen=supported[0];
                             tracks[i].setFormat(chosen);
                             System.out.println(" Track "+i+" is transmitted in "+chosen+" format.. ");
                             infoField.setText(" Track "+i+" is transmitted in "+chosen+" format.. ");
                             atLeastOneTrack=true;
                        }else{
                             // If no format is suitable, track is disabled
                             tracks[i].setEnabled(false);
                   }else
                        tracks[i].setEnabled(false);          
              if(!atLeastOneTrack)
                   System.out.println("atLeastOneTrack: "+atLeastOneTrack);
                   System.out.println(" --X Could Not find track to RTP format..");
                   infoField.setText("atLeastOneTrack: "+atLeastOneTrack);
                   infoField.setText(" --X Could Not find track to RTP format..");
              result=waitForState(processor,Controller.Realized);
              if(result==false){
                   System.out.println(" --X Could NOT realize processor...");
                   infoField.setText(" --X Could NOT realize processor...");
              // Set the JPEG Quality to value 0.5
              setJPEGQuality(processor,0.5f);
              // Set the output Data Source
              videoDataOutput=processor.getDataOutput();
              //Start the processor
              processor.start();          
         public void setJPEGQuality(Processor p,float values)
              Control []cs=p.getControls();
              QualityControl qc=null;
              VideoFormat JPEGFmt=new VideoFormat(VideoFormat.JPEG);
              // Loop through the ocntrols to find the Quality control for the JPEG encoder
              for(int i=0;i<cs.length;i++){
                   if(cs[i] instanceof QualityControl && cs[i] instanceof Owned){
                        Object owner=((Owned)cs[i]).getOwner();
                        // Check if the owner is the Codec
                        // Check the format of output as well
                        if(owner instanceof Codec){
                             Format fmts[]=((Codec)owner).getSupportedOutputFormats(null);
                             // Loop through the supported format and set the quality to 0.5
                             for(int j=0;j<fmts.length;j++){
                                  qc=(QualityControl)cs[i];
                                  qc.setQuality(values);
                                  System.out.println(" - Quality is set to "+values+" on "+qc);
                                  infoField.setText(" - Quality is set to "+values+" on "+qc);
                                  break;
                   if(qc!=null)
                        break;
         public Format checkVideoSize(Format originalFormat,Format supported)
              int width,height;
              Dimension size=((VideoFormat)originalFormat).getSize();     
              Format jpegFormat=new Format(VideoFormat.JPEG_RTP);
              Format h263fmt=new Format(VideoFormat.H263_RTP);
              if(supported.matches(jpegFormat)){
                   width=(size.width%8 == 0 ? size.width:(int)(size.width%8)*8);
                   height=(size.height%8 == 0 ? size.height:(int)(size.height%8)*8);
              }else if(supported.matches(h263fmt)){
                   if(size.width<128){
                        width=128;
                        height=96;
                   }else if(size.width<176){
                        width=176;
                        height=144;
                   }else{
                        width=352;
                        height=288;
              }else{
                   // Unknown format, just return it.
                   return supported;
              return (new VideoFormat(null,new Dimension(width,height),Format.NOT_SPECIFIED,null,Format.NOT_SPECIFIED)).intersects(supported);
         public boolean waitForState(Processor p,Integer status)
              p.addControllerListener(new StateListener());
              failure=false;
              if(status==Processor.Configured){
                   p.configure();               
              }else if(status==Processor.Realized){
                   p.realize();
              //Wait until an event that confirms the success of the method, or failure of an event
              while(p.getState()<status && !failure){
                   synchronized(getStateLock()){
                        try{
                             // Wait
                             getStateLock().wait();
                        }catch(InterruptedException ie){
                             return false;
              if(failure)
                   return false;
              else
                   return true;
         public Integer getStateLock(){
              return stateLock;
         public void setFailure(){
              failure=true;
         public void createMyManager()
              SessionAddress destAddress;
              InetAddress ipAddr;
              int port;
              SourceDescription srcDesList[];
              PushBufferDataSource pbds=(PushBufferDataSource)videoDataOutput;
              PushBufferStream pbss[]=pbds.getStreams();          
              rtpMgrs=new RTPManager[pbss.length];          
              for(int a=0;a<pbss.length;a++){
              try{
                   // RTP Managers or RTP Manager?????
                   rtpMgrs[a]=RTPManager.newInstance();
                   port=basePort;
                   ipAddr=InetAddress.getByName(ipAddress);
                   SessionAddress localAddr=new SessionAddress(InetAddress.getLocalHost(),port+20);
                   destAddress=new SessionAddress(ipAddr,port,1);
                   Integer myipprefix=Integer.valueOf(ipAddress.substring(0,3));
                   if((myipprefix.intValue()>223) && (myipprefix.intValue()<240)){
                        rtpMgrs[a].initialize(destAddress);
                   }else{
                        rtpMgrs[a].initialize(localAddr);
                   rtpMgrs[a].addTarget(destAddress);
                   System.out.println(" Created RTP session: "+ipAddress+" "+port+" to "+destAddress);
                   infoField.setText(" Created RTP session: "+ipAddress+" "+port+" to "+destAddress);
                   if(videoDataOutput!=null){
                        sendStream=rtpMgrs[a].createSendStream(videoDataOutput,0);
                        sendStream.start();
                        System.out.println(" RTP stream is started..");
                        infoField.setText(" RTP stream is started..");
              }catch(UnsupportedFormatException ex){
                   System.out.println(" --X Unsupported Format : "+ex);
                   infoField.setText(" --X Unsupported Format : "+ex);
              catch(IOException ioe){
                   System.out.println(" --X IOException : "+ioe.getMessage());
                   infoField.setText(" --X IOException : "+ioe.getMessage());
              catch(Exception ex){
                   System.out.println(" --X Unable to create RTP Manager...");
                   System.out.println(ex.getMessage());
                   infoField.setText(" --X Unable to create RTP Manager..."+ex.getMessage());
         /*public void createMyTransmitter()
         try{
              if(videoDataOutput!=null){
                   sendStream=rtpMgrs[i].createSendStream(videoDataOutput,0);
                   sendStream.start();
         }catch(UnsupportedFormatException ex){
                   System.out.println(" --X Unsupported Format : "+ex);
                   infoField.setText(" --X Unsupported Format : "+ex);
         catch(IOException ioe){
                   System.out.println(" --X IOException : "+ioe.getMessage());
                   infoField.setText(" --X IOException : "+ioe.getMessage());
         public void stopTransmitter(){
              if(processor!=null){
                   processor.stop();
                   processor.close();
                   processor=null;
                   // Loop through RTP Managers and close all managers..
                   // Dispose them for garbage collection
                   for(int i=0;i<rtpMgrs.length;i++){
                        rtpmgrs[i].removeSendStream(this);
                        rtpMgrs[i].removeTargets("Session ended..");
                        rtpMgrs[i].dispose();
                   //rtpMgrs.removeTargets("Session ended..");
                   //rtpMgrs.dispose();
         * StateListener class to handle Controller events
         class StateListener implements ControllerListener{
              public void controllerUpdate(ControllerEvent ce){
                   if(ce instanceof ControllerClosedEvent){
                        processor.close();
                   /* Handle all controller events and notify all
                   waiting thread in waitForState method */
                   if(ce instanceof ControllerEvent){
                        synchronized(getStateLock()){
                             getStateLock().notifyAll();
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Client Applet
    import javax.media.*;
    import javax.media.protocol.*;
    import javax.media.protocol.DataSource;
    import javax.media.control.BufferControl;
    import javax.media.control.*;
    import javax.media.format.*;
    import javax.media.rtp.*;
    import javax.media.rtp.rtcp.*;
    import javax.media.rtp.event.*;
    import com.sun.media.rtp.RTPSessionMgr;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.util.*;
    import java.io.*;
    import java.net.*;
    import java.net.URL;
    import java.net.Socket;
    /*<applet code="clientPlayerApplet.class" width="400" height="300">
         <param name=ServerIPS value="192.168.0.9">
         <param name=ServerPort value="80">
         <param name=TimeToLive value="1">
         <param name=archive value="clientPlayerApplet.jar">
    </applet> */
    public class clientPlayerApplet extends JApplet implements ControllerListener, ReceiveStreamListener,SessionListener
         String sessions[]=null;
         RTPManager rtpmgrs[]=null;     
         boolean dataReceived=false;
         Object myDataSync=new Object();
         private Player player;
         //private String serveripadd="226.10.10.20";
         //private int serverPort=2020;
         //private int timeToLive=1;
         private JPanel panel;
         private Vector currentParticipant;
         public void init()
              panel=new JPanel();
              setLayout(new BorderLayout());
              add("Center",panel);
              //String[] urls;
              /*urls[0]=getParameter("ServerIPS");
              urls[1]="/";
              urls[2]=getParameter("ServerPort");*/
              String []urls={new String(getParameter("ServerIPS")+"/"+getParameter("ServerPort")+"/"+getParameter("TimeToLive"))};
              sessions=urls;          
              initializePlayer();
         public void initializePlayer(){
              try{
                   InetAddress ipAddr;
                   SessionAddress localAddr=new SessionAddress();
                   SessionAddress destAddr;
                   rtpmgrs=new RTPManager[sessions.length];
                   currentParticipant=new Vector();
                   //rtpmgrs=new RTPManager();
                   SessionLabel session=null;
                   //Open RTP session
                   for(int i=0;i<sessions.length;i++){
                        try{
                             session=new SessionLabel(sessions[i]);
                             //session=new SessionLabel(sessions);
                        }catch(IllegalArgumentException iae){
                             System.out.println(" --X Unable to parse the sesion address given");     
                        System.out.println(" - Open RTP session for "+session.port);
                        rtpmgrs[i]=(RTPManager) RTPManager.newInstance();               
                        rtpmgrs[i].addSessionListener(this);
                        rtpmgrs[i].addReceiveStreamListener(this);
                        ipAddr=InetAddress.getByName(session.addr);
                        if(ipAddr.isMulticastAddress()){
                             localAddr=new SessionAddress(ipAddr,session.port,session.ttl);
                             destAddr=new SessionAddress(ipAddr,session.port,session.ttl);
                        }else{
                             localAddr=new SessionAddress(InetAddress.getLocalHost(),session.port);     
                             destAddr=new SessionAddress(ipAddr,session.port);
                        rtpmgrs[i].initialize(localAddr);
                        BufferControl bc=(BufferControl)rtpmgrs[i].getControl("javax.media.control.BufferControl");
                        if(bc!=null)
                             bc.setBufferLength(600);
                        rtpmgrs[i].addTarget(destAddr);
              }catch(Exception ex){
                   System.out.println(" --X Cannot create RTP Session "+ex.getMessage());
              long currentTime=System.currentTimeMillis();
              long waitingDuration=10000;
              try{
                   synchronized(myDataSync){
                        while(!dataReceived && (System.currentTimeMillis() - currentTime < waitingDuration)){
                             if(!dataReceived){
                                  myDataSync.wait(1000);
              }catch(Exception ex){
                   System.out.println(" --X myDataSync interrupted...");
              if(!dataReceived){
                   System.out.println(" No RTP Stream Data is received.." );               
         public void destroy()
              for(int i=0;i<currentParticipant.size();i++){
                   //if(player!=null)
                        ((MyPlayList)currentParticipant.elementAt(i)).close();
              // Loop through the RTP Managers
              // -> Remove the stream listener
              // -> Remove the target address
              // -> Dispose the RTP Manager for garbage collection
              currentParticipant.removeAllElements();
              for(int i=0;i<rtpmgrs.length;i++){
                   if(rtpmgrs[i]!=null){
                        rtpmgrs[i].removeReceiveStreamListener(this);
                        rtpmgrs[i].removeTargets(" Closing session..");
                        rtpmgrs[i].dispose();
                        rtpmgrs[i]=null;
         MyPlayList find(Player pl){
              for(int i=0;i<currentParticipant.size();i++){
                   MyPlayList mpl=(MyPlayList)currentParticipant.elementAt(i);
                   if(mpl.clientPlay==pl)
                        return mpl;
              return null;
         MyPlayList find(ReceiveStream rs){
              for(int i=0;i<currentParticipant.size();i++){
                   MyPlayList mpl=(MyPlayList)currentParticipant.elementAt(i);
                   if(mpl.stream==rs)
                        return mpl;
              return null;
         *     ReceiveStream Listener function                    *
         public synchronized void update(ReceiveStreamEvent rse)
              RTPManager mgr=(RTPManager)rse.getSource();
              ReceiveStream stream=rse.getReceiveStream();
              Participant participant=rse.getParticipant();
              if(rse instanceof RemotePayloadChangeEvent){
                   System.out.println(" -- Received Payload Change Event..");
                   System.out.println(" Sorry, no payload change is allowed.");               
              }else if(rse instanceof NewReceiveStreamEvent){
                   try{
                        // Once the new stream is detected, create the datasource
                        stream=((NewReceiveStreamEvent)rse).getReceiveStream();
                        DataSource outputDS=stream.getDataSource();
                        // Get RTP Controller to find the format
                        RTPControl rtpctl=(RTPControl)outputDS.getControl("javax.media.rtp.RTPControl");
                        if(rtpctl!=null){
                             System.out.println(" -> Received new rtP stream: "+rtpctl.getFormat());
                        }else
                             System.out.println(" -> Received new RTP stream");
                        if(participant!=null){
                             System.out.println(" -> New stream received from: "+participant.getCNAME());
                        }else{
                             System.out.println(" -> New stream detected... ");
                        player=Manager.createPlayer(outputDS);
                        if(player==null)
                             return;
                        System.out.println(" - Player is created...");
                        player.addControllerListener(this);
                        player.realize();
                        // Helper class to identify the player and stream
                        MyPlayList mpl=new MyPlayList(player,stream);
                        // Add the helper class object to Vector
                        currentParticipant.addElement(mpl);
                        // Notify initializePlayer() that a new stream has arrived
                        synchronized(myDataSync){
                             dataReceived=true;
                             myDataSync.notifyAll();
                   }catch(Exception ex){
                        System.out.println(" --X NewReceiveStream Exception: "+ex.getMessage());
                        return;
              }else if(rse instanceof ByeEvent){
                   System.out.println(" - BYE packet received from "+participant.getCNAME());
                   MyPlayList mpls=find(stream);
                   if(player!=mpls){
                        mpls.close();
                        currentParticipant.removeElement(mpls);
                   if(mgr!=null){
                        mgr.removeReceiveStreamListener(this);
                        mgr.removeTargets(" Closing session..");
                        mgr.dispose();
                        mgr=null;
              }else if(rse instanceof StreamMappedEvent){
                   if(stream!=null && stream.getDataSource()!=null){
                        DataSource myds=stream.getDataSource();
                        RTPControl rtpctrl=(RTPControl)myds.getControl("javax.media.rtp.RTPControl");
                        System.out.println(" -> The previously unidentified stream ");
                        if(rtpctrl!=null)
                             System.out.println(" "+rtpctrl.getFormat());
                        System.out.println(" has been identified as sent by :"+participant.getCNAME());
         *           Session Listener
         public void update(SessionEvent sesevt)
              if(sesevt instanceof NewParticipantEvent){
                   Participant part=((NewParticipantEvent)sesevt).getParticipant();
                   System.out.println(" -> A new partcipant has joined :"+part.getCNAME());
         *     ControllerListener for Players          
         public synchronized void controllerUpdate(ControllerEvent ce)
              Player p=(Player)ce.getSource();
              if(p==null)
                   return;
              if(ce instanceof RealizeCompleteEvent){
                   MyPlayList mpls=find(p);
                   if(mpls!=null){
                        p.start();
                        if(p.getVisualComponent()!=null){
                             panel.add(player.getVisualComponent());
                             panel.validate();
              if(ce instanceof ControllerErrorEvent){
                   p.removeControllerListener(this);
                   MyPlayList mpls=find(p);
                   if(mpls!=null){
                        // Close the player
                        // Remove the player helper class object from the list
                        p.close();
                        currentParticipant.removeElement(mpls);
                   System.out.println("Receiver internal error: "+ce);
         class SessionLabel{
              public String addr=null;
              public int port;
              public int ttl;
              SessionLabel(String session) throws IllegalArgumentException
                   int off;
                   String portStr=null;
                   String ttlStr=null;
                   if(session!=null && session.length() >0){
                        while(session.length()>1 && session.charAt(0)=='/')
                             session=session.substring(1);
                        off=session.indexOf('/');
                        if(off==-1){
                             if(!session.equals(""))
                                  addr=session;
                        }else{
                             addr=session.substring(0,off);
                             session=session.substring(off+1);
                             off=session.indexOf('/');
                             if(off==-1){
                                  if(!session.equals(""))
                                       portStr=session;
                             }else{
                                  portStr=session.substring(0,off);
                                  session=session.substring(off+1);
                                  off=session.indexOf('/');
                                  if(off==-1){
                                       if(!session.equals(""))
                                            ttlStr=session;
                                  }else{
                                       ttlStr=session.substring(0,off);
                   if(addr==null)
                        throw new IllegalArgumentException();
                   if(portStr!=null)
                        try{
                             Integer ints=Integer.valueOf(portStr);
                             if(ints!=null)
                                  port=ints.intValue();
                        }catch(Throwable t){
                             System.out.println(" --X PortStr Error..");
                             throw new IllegalArgumentException();
                   }else
                        throw new IllegalArgumentException();
                   if(ttlStr!=null){
                   try{
                        Integer intsttl=Integer.valueOf(ttlStr);
                        if(intsttl!=null)
                             ttl=intsttl.intValue();
                   }catch(Throwable t){
                             System.out.println(" --X PortStr Error..");
                             throw new IllegalArgumentException();
         class MyPlayList{
              Player clientPlay;
              ReceiveStream stream;
              MyPlayList(Player p,ReceiveStream rs){
                   clientPlay=p;
                   stream=rs;
              public void close()
                   clientPlay.close();

  • Web site that doesn't work

    Been trying to look at upgrading service on-line for a week now!  Can't get website to provide information, or get an email to send question to.  Don't want to spend hours on phone trying to get an answer.  Beginning to regret that I only have 1 option for service in area.

    PU800 wrote:
    Been trying to look at upgrading service on-line for a week now!  Can't get website to provide information, or get an email to send question to.  Don't want to spend hours on phone trying to get an answer.  Beginning to regret that I only have 1 option for service in area.Website is not the way to go.... you should really call into Comcast to get the latest deals on services and bundles for your market area....  you can try online chat but not sure if they can priovide the answers you need...   chat is less time consuming though...   you can try the chat session here:  https://www.comcastsupport.com/chatentry/ -=Ray=-

  • Have you noticed the newest version 3.6.23 crashes frequently? Mine does it a few times a day on web pages that used to work fine before the upgrade.

    Since the last Firefox update was installed on my system, Firefox crashes several times a day on websites that used to be no problem. I have five crash report id's from the last two days (I usually don't send the report). Do you want all of them?
    I'm running Firefox 3.6.23
    I'm running MacOS X version 10.5.8, on 1.5ghz powerPC G4
    with 2gb memory and over 100gig still available on my 150gig hard drive.
    I checked for updates - there are no new updates.
    I tried sending feedback, but the feedback page said I had to be running the latest version of firefox. So I clicked on "latest version of Firefox", and got "Unfortunately the latest version of Firefox isn't compatible with your computer's operating system"
    The "learn more" link took me to http://www.mozilla.org/en-US/firefox/4.0/system-requirements/ which says that OS 10.5 is supported.
    So - how do I get back to my previous version of Firefox so it doesn't keep crashing
    AND/OR
    Is there a fix coming to stop all the crashing
    AND/OR
    What do I do about Firefox versions on my computer?
    Thanks

    That can be a problem with a plugin, possibly Java.
    * [https://bugzilla.mozilla.org/show_bug.cgi?id=573055 bug 573055] - Reproducible [@ nsNPAPIPluginInstance::InitializePlugin()] crashes / Java

Maybe you are looking for

  • Upload flat file to a variable when creating a variant or broadcast setting

    Hello Experts, Our users have recently begun to use the Broadcast E-Mail (Bursting) settings.  On the Recipient Determination tab, some settings have the "Selection of Characteristic Values" set to "By Following Selection" and some have it set to "By

  • Urgent : TimeOut/DeadLock issue with DB Adapter

    Hi, I have a DB adapter that executes a Proc in Sybase.[The proc takes 5-10 minutes based on the load] There is another DB adapter after this which fetches the data from DB based on the completion of previous proc. This Bpel is called from another Bp

  • Update Text in item while creating PO

    Hi, I need to update some text in TEXTS tab in Line item, while creating PO. While creating , when we enter material , qty and all mandatory fields after hitting enter, if I go to text tab , I should be able to see the text the I want. SAP stores tex

  • CS4 Photoshop - saving on NAS storage - open file won't save without renaming it.

    open file won't save without renaming it.  If you try to save a file that you have adjusted in CS4 Photoshop on a networked drive, it won't save it.  If you rename it, sure.  If you are working on the local drive it is not a problem.  By the way, we

  • IPad2 7.1.2 to 8.1 - worthwhile?

    Hey all, I still have my iPad2 running 7.1.2. and i have read from some forums that it crawls after upgrading to iOS8. The trouble is that from reading the forums, it all indicates that upgrading is a bad idea. Since the internet is a great place for