jwplayer / jwplatform-node

:green_square: Node.js library for the JW Platform API
https://developer.jwplayer.com/jw-platform/
Apache License 2.0
30 stars 13 forks source link

I can't upload video with large .m4 #18

Closed WoraponU closed 4 years ago

WoraponU commented 4 years ago

it will successful when i'm uploaded the small size of video .mp4. but it found problem when i upload video with 1.4gb.

Version "jwplatform": "0.0.5",

Error log

{ RequestError: Error: write EPIPE
    at new RequestError (/Users/woraponprathuangthip/backend-baan-doctor/node_modules/request-promise-core/lib/errors.js:14:15)
    at Request.plumbing.callback (/Users/woraponprathuangthip/backend-baan-doctor/node_modules/request-promise-core/lib/plumbing.js:87:29)
    at Request.RP$callback [as _callback] (/Users/woraponprathuangthip/backend-baan-doctor/node_modules/request-promise-core/lib/plumbing.js:46:31)
    at self.callback (/Users/woraponprathuangthip/backend-baan-doctor/node_modules/request/request.js:185:22)
    at Request.emit (events.js:203:15)
    at Request.EventEmitter.emit (domain.js:448:20)
    at Request.onRequestError (/Users/woraponprathuangthip/backend-baan-doctor/node_modules/request/request.js:877:8)
    at ClientRequest.emit (events.js:198:13)
    at ClientRequest.EventEmitter.emit (domain.js:448:20)
    at Socket.socketErrorListener (_http_client.js:401:9)
    at Socket.emit (events.js:198:13)
    at Socket.EventEmitter.emit (domain.js:448:20)
    at errorOrDestroy (internal/streams/destroy.js:107:12)
    at onwriteError (_stream_writable.js:436:5)
    at onwrite (_stream_writable.js:461:5)
    at _destroy (internal/streams/destroy.js:49:7)
    at Socket._destroy (net.js:614:3)
    at Socket.destroy (internal/streams/destroy.js:37:8)
    at WriteWrap.afterWrite (net.js:791:10)
  name: 'RequestError',
  message: 'Error: write EPIPE',
  cause:
   { Error: write EPIPE
       at WriteWrap.afterWrite (net.js:789:14) errno: 'EPIPE', code: 'EPIPE', syscall: 'write' },
  error:
   { Error: write EPIPE
       at WriteWrap.afterWrite (net.js:789:14) errno: 'EPIPE', code: 'EPIPE', syscall: 'write' },
  options:
   { method: 'POST',
     uri: 'http://upload.jwplatform.com/v1/videos/upload',
     json: true,
     formData: { file: [ReadStream] },
     qs:
      { key: 'b1vJ7OXR',
        token: '84d0721dc16653e0ba4b318541c549f2786f371ec40',
        api_format: 'json' },
     callback: [Function: RP$callback],
     transform: undefined,
     simple: true,
     resolveWithFullResponse: false,
     transform2xxOnly: false },
  response: undefined }

packages

"dependencies": {
        "aws-sdk": "^2.736.0",
        "bcryptjs": "^2.4.3",
        "body-parser": "^1.19.0",
        "compression": "^1.7.4",
        "connect-timeout": "^1.9.0",
        "cors": "^2.8.5",
        "dotenv": "^8.2.0",
        "express": "^4.17.1",
        "fs": "0.0.1-security",
        "jwplatform": "0.0.5",
        "jwt-simple": "^0.5.6",
        "lodash.countby": "^4.6.0",
        "mjml": "^4.7.0",
        "mkdirp": "^1.0.4",
        "multer": "^1.4.2",
        "multer-s3": "^2.9.0",
        "nodemailer": "^6.4.11",
        "passport": "^0.4.1",
        "passport-jwt": "^4.0.0",
        "path": "^0.12.7",
        "pg": "^8.3.0",
        "sequelize": "^6.3.4"
    },
    "devDependencies": {
        "@babel/cli": "^7.10.4",
        "@babel/core": "^7.10.4",
        "@babel/node": "^7.10.4",
        "@babel/plugin-transform-runtime": "^7.10.4",
        "@babel/preset-env": "^7.10.4",
        "babel-eslint": "^10.1.0",
        "eslint": "^7.4.0",
        "nodemon": "^2.0.4"
    }

How i fix it? set time out or set some option? it will fail when upload until 4 minute.

image

WoraponU commented 4 years ago

i found a solution. it is fail because server timeout. pls close issue. thank you.