Sending images over network socket

I'm working on a java web server. So far i have managed to get it to send html documents sucessfully to the client web browser, using a BufferedReader, and a PrintWriter object.
But how should i send images over the socket? using this method doesn't work. Any suggestions?
Thanks in advance.
hornetau

I did it first. You may pay me $10 and get XM2 WebServer 1.2 from my company.
Ok, I'll help ya out here...
HTTP protocol in Internet Explorer is "juiced up" meaning that it does not require HTTP data to be correctly sent. To send an image to be deisplayed...
<html>
<img src="theImage.gif"></img>
</html>
Now, the server will see a GET request like this...
GET /theImage.gif HTTP/1.1
Accepts: Image/jpeg, Image/gif, ...
Your web server (in the IE case just needs to send)...
output.println(data);
The data object is a string, that represents the contents of the image.
To do that, just get the correct File object, connect reader to it, then loop it
until the reader is no longer ready (reader.ready() != true), as it loops, just append
the readLine() command to the end of the data string and it will be ok.
Now this works on IE just fine, using vary small file sizes due to it being loaded directly into
memory. Casing problem if your app has only 500K of memory and the file size is 700K, 500-700=-200K, so use only small file sizes with this method.
There is also the URLConnection and HttpURLConnection classes to use that will do this better, but
they dont have any real way of getting the file's data - that's still YOUR job.

Similar Messages

  • Urgent help:send image over network using rmi

    hi all,
    i have few question about send image using rmi.
    1) should i use ByteArrayOutputStream to convert image into byte array before i send over network or just use fileinputstream to convert image into byte array like what i have done as below?
    public class RemoteServerImpl  extends UnicastRemoteObject implements RemoteServer
      public RemoteServerImpl() throws RemoteException
      public byte[] getimage() throws RemoteException
        try{
           // capture the whole screen
           BufferedImage screencapture = new Robot().createScreenCapture(new     Rectangle(Toolkit.getDefaultToolkit().getScreenSize()) );
           // Save as JPEG
           File file = new File("screencapture.jpg");
           ImageIO.write(screencapture, "jpg", file);
            byte[] fileByteContent = null;
           fileByteContent = getImageStream("screencapture.jpg");
           return fileByteContent;
        catch(IOException ex)
      public byte[] getImageStream(String fname) // local method
        String fileName = fname;
        FileInputStream fileInputStream = null;
        byte[] fileByteContent = null;
          try
            int count = 0;
            fileInputStream = new FileInputStream(fileName);  // Obtains input bytes from a file.
            fileByteContent = new byte[fileInputStream.available()]; // Assign size to byte array.
            while (fileInputStream.available()>0)   // Correcting file content bytes, and put them into the byte array.
               fileByteContent[count]=(byte)fileInputStream.read();
               count++;
           catch (IOException fnfe)
         return fileByteContent;           
    }2)if what i done is wrong,can somebody give me guide?else if correct ,then how can i rebuild the image from the byte array and put it in a JLable?i now must use FileOuputStream but how?can anyone answer me or simple code?
    thanks in advance..

    Hi! well a had the same problem sending an image trough RMI.. To solve this i just read the image file into a byte Array and send the array to the client, and then the client creates an imegeIcon from the byte Array containing the image.. Below is the example function ton read the file to a byte Array (on the server) and the function to convert it to a an imageIcon (on the client).
    //      Returns the contents of the file in a byte array.
        public static byte[] getBytesFromFile(File file) throws IOException {
            InputStream is = new FileInputStream(file);
            // Get the size of the file
            long length = file.length();
            // You cannot create an array using a long type.
            // It needs to be an int type.
            // Before converting to an int type, check
            // to ensure that file is not larger than Integer.MAX_VALUE.
            if (length > Integer.MAX_VALUE) {
                // File is too large
            // Create the byte array to hold the data
            byte[] bytes = new byte[(int)length];
            // Read in the bytes
            int offset = 0;
            int numRead = 0;
            while (offset < bytes.length
                   && (numRead=is.read(bytes, offset, bytes.length-offset)) >= 0) {
                offset += numRead;
            // Ensure all the bytes have been read in
            if (offset < bytes.length) {
                throw new IOException("Could not completely read file "+file.getName());
            // Close the input stream and return bytes
            is.close();
            return bytes;
        }to use this function simply use something like this
    public byte[] getImage(){
    byte[] imageData;
              File file = new File("pic.jpg");
              // Change pic.jpg for the name of your file (duh)
              try{
                   imageData = getBytesFromFile(file);
                   // Send to client via RMI
                            return imageData;
              }catch(IOException ioe){
                           // Handle exception
                           return null; // or whatever you want..
    }and then on the client you could call a function like this
    public ImageIcon getImageFromServer(){
         try{
              // get the image from the RMI server
              byte[] imgBytes = myServerObject.getImage();
              // Create an imageIcon from the Array of bytes
              ImageIcon ii = new ImageIcon(imgBytes);
              return ii;
         }catch(Exception e){
              // Handle some error..
              // If yo get here probably something went wrong with the server
              // like File Not Found or something like that..
              e.printStackTrace();
              return null;
    }Hope it helps you..

  • How do I send an Image over a socket ?

    I'm trying to get the output from my webcam and send that data out to a socket. Now the output from the webcam is running I'm just not sure how to send it out over the socket.
    Server.java
    import java.io.*;
    import java.net.*;
    public class Server {
       public static void main(String args[]) {
         ServerSocket serverSocket = null;
         boolean listening = true;
         try {
         serverSocket = new ServerSocket(1354);
         System.out.println("Listening for Connections...");
         } catch (IOException drr) {
         System.out.println("Error Listening :" + drr);
         System.exit(-1);
         try {
         while(listening)
         new ServerThread(serverSocket.accept()).start();
         } catch (IOException er) {
         System.out.println("Error Creating connection:" + er);
         try {
           serverSocket.close();
         } catch (IOException err) {
         System.out.println("Error Closing:" + err);
    }When a connection is made it will start the webcam and send the image.
    ServerThread.java
    import java.net.*;
    import java.io.*;
    import java.awt.*;
    import java.awt.image.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import java.io.*;
    import javax.media.*;
    import javax.media.format.*;
    import javax.media.util.*;
    import javax.media.control.*;
    import javax.media.protocol.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.image.*;
    import java.awt.event.*;
    import com.sun.image.codec.jpeg.*;
    public class ServerThread extends Thread {
        public static Player player = null;
        public CaptureDeviceInfo di = null;
        public MediaLocator ml = null;
        public JButton capture = null;
        public Buffer buf = null;
        public Image img = null;
        public VideoFormat vf = null;
        public BufferToImage btoi = null;
        public ImagePanel imgpanel = null;
        private Socket socket = null;
        Image blah;
        PrintWriter out = null;
        public ServerThread(Socket socket) {
         super("ServerThread");
         this.socket = socket;
        public void run() {
         try {
             out = new PrintWriter(socket.getOutputStream(), true);        
             imgpanel = new ImagePanel();
                 String str1 = "vfw:CompUSA PC Camera:0";
                 String str2 = "vfw:Microsoft WDM Image Capture (Win32):0";
                 di = CaptureDeviceManager.getDevice(str2);
             ml = new MediaLocator("vfw://0");
                try {
               player = Manager.createRealizedPlayer(ml);
                 } catch (Exception npe) {
               System.out.println("Player Exception:" + npe);
                player.start();
             Component comp;
             if ((comp = player.getVisualComponent()) != null) {
               // Grab a frame
               FrameGrabbingControl fgc = (FrameGrabbingControl) player.getControl("javax.media.control.FrameGrabbingControl");
               buf = fgc.grabFrame();
               btoi = new BufferToImage((VideoFormat) buf.getFormat());
               //Send the image over the socket
               out.println(btoi);
         } catch (IOException e) {
             System.out.println("It bombed:" + e);
        public static void playerclose() {
           player.close();
           player.deallocate();
      class ImagePanel extends Panel {
        public Image myimg = null;
        public ImagePanel() {
        public void setImage(Image img) {
          this.myimg = img;
          repaint();
        public void paint(Graphics g) {
          if (myimg != null) {
            g.drawImage(myimg, 0, 0, this);
      }The output I get from running the server is this:
    BufferedImage@c9131c: type = 1 DirectColorModel: rmask=ff0000 gmask=ff00 bmask=ff amask=0 IntegerInterleavedRaster: width = 320 height = 240 #Bands = 3 xOff = 0 yOff = 0 dataOffset[0] 0
    Now how can I turn this into an image If this output is correct?

    HUH?
    I got the one to send the images over the network. I'm now trying to get the exact feed of the webcam and sending that over the network. This is alot more difficult to accomplish but I did see where I messed up my process of sending the images was just having to save the file then open it up put it in a byte array then send that over the network to the client. Once it was at the client i was able to re-construct it and throw it up in the frame. The only problem was lag. So this tells me it would be much more faster if instead of saving the file to send the client and having to reconstruct the image I should just send the webcam feed i used to make the image.
    eh, I guess I didn't need any help.
    Hey no offense or anything but you really have to learn how to spell better.

  • Trouble sending images over sms

    Anyone having trouble sending images over txt messages?

    I did it first. You may pay me $10 and get XM2 WebServer 1.2 from my company.
    Ok, I'll help ya out here...
    HTTP protocol in Internet Explorer is "juiced up" meaning that it does not require HTTP data to be correctly sent. To send an image to be deisplayed...
    <html>
    <img src="theImage.gif"></img>
    </html>
    Now, the server will see a GET request like this...
    GET /theImage.gif HTTP/1.1
    Accepts: Image/jpeg, Image/gif, ...
    Your web server (in the IE case just needs to send)...
    output.println(data);
    The data object is a string, that represents the contents of the image.
    To do that, just get the correct File object, connect reader to it, then loop it
    until the reader is no longer ready (reader.ready() != true), as it loops, just append
    the readLine() command to the end of the data string and it will be ok.
    Now this works on IE just fine, using vary small file sizes due to it being loaded directly into
    memory. Casing problem if your app has only 500K of memory and the file size is 700K, 500-700=-200K, so use only small file sizes with this method.
    There is also the URLConnection and HttpURLConnection classes to use that will do this better, but
    they dont have any real way of getting the file's data - that's still YOUR job.

  • How can i taransfer an image over network through Sockets

    If any one have the exsperience for tranfering the image over the network by using socket plz help me immediatly

    You have to write a Server application and a Client application.
    And connect the Client to the Server.
    Then you can send whatever you want in either direction.

  • Sending data over and socket

    when i send messages over socket and receive it using [line = in.readLine()/code]
    if there is a \r\n it stops and makes u have to use readLine again to get the rest of the message
    is there a way to send the message so it totally ignores the \r\n and i can just use readLine once to receive my complete string in one go
    as this newline thing is very annoying
    thanks :)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    I assume in is of type BufferedReader? If so, that is the definition of readLine.
    Other options:
    You can use java.util.Scanner to scan until the next delimiter, which you can set.
    You can use readUTF/writeUTF defined in interfaces DataInput/DataOut by
    using classes DataInputStream/DataOutputStream or ObjectInpuitStream/ObjectOutputStream.
    If you are using object stream, you could define any serializable objects you
    like for transmission.

  • Problem with sending message over network

    ssc = (ServerSocketConnection) Connector.open("socket://:5000");
    sc = (SocketConnection) Connector.open("socket://localhost:5000");my app works over the network in the emulator, but wont work on real devices, or do i just need to pair somehow with the device before i start.
    are the above lines okay is it meant to be localhost that's what they use in the socket part of the network demo that comes with the wireless toolkit, anyone have any ideas why that app doesnt seem to work for me on the real devices.
    i know for bluetooth you have to pair with the device before running the application do you have to do something like this

    Vishal,
    Couple of questions. 
    How are you sending this message.  Is it a message that you create and send Internally with an attachment.
    As you reply me, please also check if the <b>Attachments folder</b> has been set under <b>Administration > System Initialization > General Settings.....Path Tab</b>
    SBO tries to copy the attachment from the location you select to the Path defined for Attachments.
    Let me know
    Suda

  • How to transfer images over network?

    Hello,
    I've built a program in LV 7.1 which taking a snap shot from a USB webcam and save it as JPEG file.
    As I already said I am using LV 7.1 with NI VISION 7.1.
    My program has to take the picture from the webcam and send it via serial visa connection. (TCP \ IP is also an option)
    Regards,
    Rotem

    There are lots of ways to transfer files over the network. The easiest, in my opinion, is to use TCP/IP and set up a network share or mapped drive between the two machines and then transfer the file by using copy. Of course, there are lots of situations where setting up a network share isn't apropriate.
    If network share isn't an option, and you want to use serial, you should probably use a protocol such as Xmodem, Ymodem or Zmodem to transfer the file. LabVIEW doesn't have direct support for these protocols, although I know someone sells (or at least used to sell, I couldn't find it with a quick search) a modem toolkit for LabVIEW with these protocols implemented. There are also ActiveX servers that implement these protocols that you could download or purchase and then access from LabVIEW.
    If you want to go the TCP/IP route, an FTP server would be an easy option. You'd need to run an FTP server on the target machine, but then you could just use the LabVIEW FTP VIs or call an FTP terminal through command line or ActiveX.
    Of course, you could implement your own file transfer protocol using VISA, datasocket or the TCP/IP VIs, but this last option is quite a bit of work to solve a problem when there are plenty of programs out there to solve it for you. Re-inventing the wheel if you will. While it's not all that difficult to read in a file, transfer it using one of the communication APIs, and then write it back to a file on your client machine, you'll either have to implement, or go without, a lot of the features and safeguards, like error checking, which are built into other file transfer protocols. Also, remember that you'll have to have a LabVIEW application running on each end, so you'll have to implement both halves of the solution (as opposed to options like FTP or the network share, where you only have to run a VI on one computer).
    Hope that helps,
    Ryan K.

  • Beginner imageIO question (pulling up image over network vs local)

    Greets,
    I am new to java but not too new to programming. I've googled the heck out of this question and checked the java 2D api and haven't had much luck yet. Take a look and let me know what you think:
    I would like to pull up an image file and display it in a jLabel, it works fine if i am pulling up a local file as such:
    BufferedImage img = null;
            try {
                img = ImageIO.read(new File("/home/steve/pic.gif"));
            } catch (IOException e) {
                e.printStackTrace();
            }But what i really want it to do, is pull up a file over the local network, like so:
    BufferedImage img = null;
            try {
                img = ImageIO.read(new File("smb://192.168.1.64/images/pic.gif"));
            } catch (IOException e) {
                e.printStackTrace();
            }However, when i try this second one, i get the following error:
    javax.imageio.IIOException: Can't read input file!
            at javax.imageio.ImageIO.read(ImageIO.java:1275)
            at mypkg.MainForm.load(MainForm.java:143)
            at mypkg.MainForm.<init>(MainForm.java:27)
            at mypkg.MainForm$1.run(MainForm.java:111)
            at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
            at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)Can anyone point me in the right direction or give me a code snippet? Much appreciated.

    Paul,
    All definately valid points. I was able to get it to work if i mounted the smb share to my local filesystem but essentially i am trying to make the application portable so i dont have to mount a drive on the target machine (or create a windows drive map, etc). Although read(URL input) isnt exactly what i was looking for, it works good enough and gets the same end result. i just have to copy the image folder and serv it up via apache instead of samba.
    Thanx for your input.

  • Sending HashMap over network

    hi there,
    Is there any way I can get around this HashMap bug?
    http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4756277
    I tried to write a HashMap object over a network and the following exception was generated:
    java.io.NotSerializableException: java.util.HashMap$EntrySet
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
    Regards,

    Due to this bug you can't use serialization mechanism on HashMap. A workaround should be to implement a SerializedHashMap class which extends HashMap and reimplement method for serialization. Methods to reimplement are:private void writeObject (java.io.ObjectOutputStream out) throws IOException;and
    private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException;You can found useful tips of about write your code here: java.sun.com/docs/books/tutorial/essential/io/objectstreams.html

  • Controlling sending rate over UDP socket

    Hello,
    After some NIO study, i finally managed to send and receive UDP data from a single thread. Here is my code
    so far:
    try {
          DatagramChannel channel = DatagramChannel.open();
          channel.configureBlocking(false);
         channel.socket().bind(localAddress);
          boolean flag = true;
          int LIMIT = 1000;
          Selector selector = Selector.open();
          channel.register(selector, SelectionKey.OP_READ | SelectionKey.OP_WRITE);
          ByteBuffer buffer = ByteBuffer.allocate(4);
          int n = 0;
          int numbersRead = 0;
          while (flag) {
            selector.select();
            Set readyKeys = selector.selectedKeys();
              Iterator iterator = readyKeys.iterator();
              while (iterator.hasNext()) {
                SelectionKey key = (SelectionKey) iterator.next();
                iterator.remove();
                if (key.isReadable()) {
                  buffer.clear();
                  channel.read(buffer);
                  buffer.flip();
                  numbersRead++;
                } else if (key.isWritable()) {
                  n = queue.poll();
                  buffer.clear();
                  buffer.putInt(n);
                  buffer.flip();
                  channel.write(buffer);
                  System.out.println("Wrote: " + n);
                 if (n == LIMIT) {
                    // All packets have been written; switch to read-only mode
                    key.interestOps(SelectionKey.OP_READ);
        }  // end try
        catch (IOException ex) {
          System.err.println(ex);
        }  // end catchThis thread both receives and send integers from/to my UDP echo server. Another thread acts as data generator and add data to ConcurentLinkedQueue. The sending thread poll the data from the queue and sends it.
    Right now, the thread is sending at full speed.
    I would like to know how i can control the sending rate ?
    I would like to be able to specify a given rate like 50 packets per second, 100 packets per seconds...?
    Of course i can always slow down the sending part by adding Thread.sleep(someValue) before or after sending..
    but this way i am not sure what is the real rate achieved.
    any advises would be welcome.
    thanks
    sepi
    Edited by: sepi_seb on Dec 17, 2007 6:50 PM

    hi
    thanks for your reply.
    I have some difficulties calculating the amount of time i need to sleep to achieve a proper sending speed.
    basically it takes 16ms to send 20 requests so 1250req/s. Hoe can i regulate this accurately.
    I added this kind of code in my sending part: Every 50 requests i execute this code.For some reason i get a divided by zero exception at the line marked in bold.
    it happens at the second execution of this code.
         if(count == 50){
                  count = 0;
                  elapsedTime = System.currentTimeMillis() - startTime;
                  System.out.println(elapsedTime);
                  *sendingRate = (50 * 1000) / elapsedTime;*
                  System.out.println("sending at:" + sendingRate + " req/s");
                  if(sendingRate > speed){
                    long diff = sendingRate - speed;
                    long sleepTime = (diff * elapsedTime) / 50;
                    try {
                      Thread.sleep(sleepTime);
                    } catch (InterruptedException e) {
          }any comments are welcome
    thanks
    sebastien

  • Client/server - sending ArrayList over network

    Hi all
    I have have written a multithreaded client/server application where multiple clients connect to the server. For each client, the server spawns a new thread to handle the connected client. When a client connects to the server, the client sends its name to the server. The server stores the name in an ArrayList and sends the whole ArrayList to all the connected clients.
    It worked fine a few days ago. But now I have a problem: When I send the ArrayList to all the connected clients then only the newly connected client gets the updated ArrayList while the previously connected clients get the ArrayList that they got previously i.e. they are not updated. If instead of sending an ArrayList, I just send the name of the newly connected client to all other connected clients then it works i.e. each client gets updated with that name. It also works fine if I just send an Integer value to all the clients upon a new connection.
    I know the ArrayList implements Serializable, but I dont know how it doesnt work anymore!
    Plz help me with this. I have been trying all combinations, but no luck so far.
    thank you
    taurean

    thank you jwentling
    to make sure that we are on the same page, here is the relevant code.
    This method updates the list of the peers' names on the Gui (that extends JFrame).
    public void update(final ArrayList dataPacket)
              SwingUtilities.invokeLater(new Runnable()
                   public void run()
                        setTitle(dataPacket.toString());
                        peerList.setListData(dataPacket.toArray());
                        peerList.updateUI();
         }This inner class continuously listens to server to get the arraylist that contains the names of the other peers/clients that are connected.
    The con varibale is the Connection where I obtain input/output streams for this client.
    Note: con.getInputStream() returns ObjectInputStream.
         private class Listener implements Runnable
              public void run()
                   while(true)
                        ArrayList dataPacket = (ArrayList) Receiver.receiveObject(con.getInputStream());
                        if (dataPacket != null)
                             update(dataPacket);
         }Here is how the static receiveObject() metod looks like:
    public static Object receiveObject(ObjectInputStream stream)
              Object obj = null;
              try
                   obj = stream.readObject();
              catch(ClassNotFoundException cnfe)
                   System.out.println(cnfe.getMessage());
              catch(IOException ioe)
                   System.out.println(ioe.getMessage());
              return obj;
         }i think that the receiveObject() method should return the updated list (sent from server), but i get the previoulsy sent list fromt his method!!!
    Has it to do something with the stream? I mean could it be that the list is still in the stream (as you pointed out) and instead of the updated list, i just get the one from the stream that i got initially?!
    thank you for ur time

  • Why cant i send images over email ? it worked fine three times and stopped

    i have sent an image to myself as a test from microsoft pictures as an attachment three times and then it stopped

    try turing off imessage in settings login through the app then wait (for say 20 min) connected to wifi so that apple severs can verify and fully activate imessage if this dosent work please reply.

  • Sending Video over the wireless network

    I am considering capturing images from a IEEE 1394 camera and sending it over the Wireless network to another computer.  The reason we want to do that is to make the
    camera device light and portable by connecting it to a portable tablet computer.
    What kind of protocol is the best way to transfer the image. The TCP or UDP in labview convert data into string before the transmission which are very inefficient. I just want to streaming the raw image data, maybe with some protocol overhead.  Did National Instrument has any package to do that or any other software packages available?
    There might be another solution is to use the Ethernet cameras instead of 1394 cameras.
    Would it be possible for the Labview application on a remote desktop computer to acquire the Ethernet camera over a WiFi wireless connnetction in between ?
    Thanks
    Cindy

    Hello Cindy,
    If you want to transfer data across a
    network, TCP would be the most efficient method (wireless is typically not as
    successful as Ethernet due to the overhead).  There is actually a very useful knowledgebase
    document that discusses the various methods used to transfer image data across
    a network.  If you go to our main site http://www.ni.com and search using the keywords “Images
    Over Network”, the first link is entitled Streaming
    IMAQ Images Over a Network (or Internet) which gives brief descriptions if
    you choose to use TCP/IP, Datasocket, LabVIEW web server, or ActiveX.  Another very informative document results in
    that same search and is titled Transfer Images Over the Network
    which actually gives examples
    illustrating different ways to send images.  I hope this helps.  Please let us know if you would like further
    clarification or assistance regarding this issue.Vu D

  • Adding artwork over network

    I get a strange thing: my library (of pretty much 160 kbps AAC) is on a network drive; currently ~10mbps link. If I import to the library on that drive: all good.
    However if I then add artwork, then typically the smaller songs (2 minutes or less, although this is just a guide) become unplayable and I have to burn them again. If I import them locally, add artwork and then drag them over to the network drive later, everything's fine.
    Does anyone else get this? If not are you accessing your library over a 100mbps link or something similarly faster than mine?
    Cheers,
    Trystan

    I sort of answered my own quetion - artwork for shared music that is actually playing is displayed by clicking on the triangle in the bar above artwork box, but arwork is not shown for music that is simply selected. This is likely due to increased bandwidth of need to transfer images over network; may well disappear as higher-bandwidth home networks become more common. I hope this helps someone.
    -Bob

Maybe you are looking for

  • My iPod touch duplicated a playlist 1000's of times

    Happy New Year! I created a new playlist on my iPod touch 3rd generation at work yesterday.  I have done this numerous times before without any shenanigans.  I played the playlist with no problem.  This morning I went to listen to it again and found

  • Auto-close Preview when last document is closed?

    Is there some way to automatically close preview when all of the documents have been closed? I like to keep my active app space clear of clutter and there's no point to have a quick-loading app like Preview remain active if I've closed out everything

  • Pixma MX860 shows an error 9000

    Cannon MS860 printer shows an error 9000 on screen, I followed Instruction to turn it off then back on and get the same error.  The manual gives no help.  Any suggestions from out there?

  • Macbook Pro - no wireless interface

    I have a unibody macbook pro, trying to get the wireless to work but the wiki seems to have brought me to a dead end. According to this: $ lspci -vnn | grep 14e4 02:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme BCM5764M Gigabit Ethe

  • "Unknown error" when trying to save Flash Text

    I get the message "unkown error" every time I try to save flash text. Help topic in Dreamweaver 8 outlines the steps to take, but not what to do if it doesn't work. I followed a thread for this problem in the knowledge base, but it suddenly stopped w