Coder Social home page Coder Social logo

screen_streamer's Introduction

ScreenStreamer

Small process for streaming bytestreamed data via an RTMP stream.

Debugging

Some tips for debugging issues.

Step 1

If you uncomment the param.psz_dump_yuv parameter, the raw video stream will be dumped to file so that you can check the output for corruption or errors.

The resulting file will be playable using YAY (http://freecode.com/projects/yay). You may also need to install the sdl libs (brew install sdl) beforehand. After install is complete, run:

yay -s [screen width]x[screen height] /tmp/dump.y4m

Step 2

Once the app opens, use key 'p' to play, and 'r' to rewind and view. See the YAY README for more details.

Because we're using a bytestream go-between, we have the ability to record a sequence of events and then play them back at will if needed. In order to do this, have a tpl-encoded bytestream recording available. Simply uncomment the case 'f' statement and add a 'f:' option to the getopt function. Uncomment the FILE *stream line and make sure that fileno() is getting the file handle for stream instead of stdin. Then simply run the screen_streamer binary from the command line with all the appropriate options. For example:

./screen_streamer -urtmp://example.com:1935/screenshare/roomId -rroomId -w1440 -h900 -frunnableStream.tpl

This will play back the stream file and actually stream the recorded events to the fms server and/or dump to the dump.y4m file if the dump param is uncommented (see above).

Dependencies

  • libx264 - ./configure --enable-static --disable-cli --enable-debug --enable-pic
  • librtmp

License

Both libx264 and librtmp are both licensed under GPL2.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.