Changeset 3578


Ignore:
Timestamp:
Mar 25, 2013 2:38:21 PM (11 years ago)
Author:
ldelgass
Message:

Send error if ffmpeg doesn't return any data. This should be a user-visible
error, but we haven't set up to send those from nanovis yet.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/packages/vizservers/nanovis/FlowCmd.cpp

    r3577 r3578  
    18131813            FFMPEG, tmpFileName, Tcl_GetString(switchesPtr->formatObjPtr),
    18141814            switchesPtr->bitRate, switchesPtr->frameRate);
    1815     TRACE("MakeMovie %s", cmd);
     1815    TRACE("Enter: %s", cmd);
    18161816    FILE *f;
    18171817    f = popen(cmd, "r");
     
    18331833        }
    18341834        if (numRead < 0) {              // Error
    1835             ERROR("MakeMovie: can't read movie data: %s",
     1835            ERROR("Can't read movie data: %s",
    18361836                  Tcl_PosixError(interp));
    18371837            Tcl_AppendResult(interp, "can't read movie data: ",
     
    18401840        }
    18411841        if (!data.append(buffer, numRead)) {
    1842             ERROR("MakeMovie: can't append movie data to buffer %d bytes",
     1842            ERROR("Can't append movie data to buffer %d bytes",
    18431843                  numRead);
    18441844            Tcl_AppendResult(interp, "can't append movie data to buffer",
     
    18471847        }
    18481848    }
    1849     sprintf(cmd,"nv>image -type movie -token \"%s\" -bytes %lu\n",
    1850             token, (unsigned long)data.size());
    1851     NanoVis::sendDataToClient(cmd, data.bytes(), data.size());
    1852     return TCL_OK;
     1849    if (data.size() == 0) {
     1850        ERROR("ffmpeg returned 0 bytes");
     1851        Tcl_AppendResult(interp, "Couldn't create movie file",
     1852                         (char *)NULL);
     1853        return TCL_ERROR;
     1854    } else {
     1855        sprintf(cmd,"nv>image -type movie -token \"%s\" -bytes %lu\n",
     1856                token, (unsigned long)data.size());
     1857        NanoVis::sendDataToClient(cmd, data.bytes(), data.size());
     1858        return TCL_OK;
     1859    }
    18531860}
    18541861
Note: See TracChangeset for help on using the changeset viewer.