PackageTrack
Sign in Get early access

github.com/qnkhuat/tstream

v1.3.3 #3042 most downloaded on Go modules qnkhuat/tstream

What this package is like to depend on

Last release 4 years ago

no release in 18 months

Ships unpredictably

gaps range from 9 days to 10 months

Nearly every release is documented

notes for 8 of 8 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

29 releases · first in 2021

0 releases in the last 12 months

see the full history below

Release timeline

29 releases · Jul 2021 to Jul 2022
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 29
  1. v1.3.3 01 Jul 2022
    Release notes

    Changelog

    0c472b3 Merge pull request #54 from qnkhuat/move-to-xyz
    337698b add an overlay to terminal in room to prevent input mode when touch on terminal
    cf9238a moving from tstream.club to tstream.xyz

    Open source →
    Release notes

    v1.3.3 Latest

    Latest

    Compare

    Choose a tag to compare

    Open source →
  2. v1.3.3-0.20210831111027-337698b5ed65 31 Aug 2021 pre-release

    Nothing published for this version

  3. v1.3.2 30 Aug 2021
    Release notes

    Changelog

    Added private session with tstream -private

    PR: #52

    Open source →
    Release notes

    v1.3.2

    Compare

    Choose a tag to compare

    Open source →
  4. v1.3.1 08 Aug 2021
    Release notes

    Changelog

    This is a patch for the last version to fix a bug relating to terminal resizing.

    In the last version because we sent data by block, but those data don't contain winsize messages => there will be a mismatch in timing.

    In this version we include those winsize messages and also saving a cached winsize message on the server.

    Open source →
    Release notes

    v1.3.1

    Compare

    Choose a tag to compare

    Open source →
  5. v1.3.1-0.20210808131745-7cd3e192e11b 08 Aug 2021 pre-release

    Nothing published for this version

  6. v1.3.0 08 Aug 2021
    Release notes

    Changelog

    PR

    TL;DR:

    • we stream data in block( contains many write requests in one block )
    • Now users watching the stream will be delayed with the actual stream
    • Much smoother and less lagging for both streamer and viewer

    Technical note

    In the previous version, any single change on the streamer's terminal is sent to the viewer. There are some problems with this approach:

    • Many changes are very small ( I.e: newline ) => inefficient use of request
    • In a short period of time we have many changes => too many requests
      With this version, we send messages by block. Each block is all messages generated in a period. This block is also being gzipped before being sent. This way we have some advantages:
    • fewer requests since we send a block of data every x (3) seconds.
    • By gzipped we reduced the message's size by around 7 folds. also, gzip is very fast so it's not a problem.

    But this prevents users from watching the stream in super near real-time.

    But I think 3 seconds lag is fine, it's how youtube and twitch works anw.

    2f4c2bf client now read from blcok of data and schedule message according to offset
    794dddb fix bug timing in message offset time
    8dfa944 home page auto refresh every 15 seconds
    b03f53d increase streampreview load time
    38477bb smaller chat text on mobile
    e780eb5 terminal are now exchanging block of message

    Open source →
    Release notes

    v1.3.0

    Compare

    Choose a tag to compare

    Open source →
  7. v1.2.1-0.20210808024018-6c94231fc673 08 Aug 2021 pre-release

    Nothing published for this version

  8. v1.2.1-0.20210731052515-6aa57865b04d 31 Jul 2021 pre-release

    Nothing published for this version

  9. v1.2.1-0.20210725123759-607132d1dfb3 25 Jul 2021 pre-release

    Nothing published for this version

  10. v1.2.0 25 Jul 2021
    Release notes

    Important

    All tstream client has to upgrade to v1.2.0 to be able to stream

    Server

    • Add an SFU voice server. Currently only allow one producer for one room ( still has some bug with syncPeers )
    • Changed all the messages to using JSON (used text on the previous version) => this affects all components

    TStream client

    • Add voice command /unmute and /mute
    • Allow 3 chars roomname

    Viewer UI

    • Add simple search for live stream in home page
    • Add volume control in room
    • Responsive for mobile

    Doc

    • Add discord server in README

    Changelog

    8c95aa6 Add CGO build
    de5198a Add noti when failed to start voice service instead of turn off chat
    2d05f25 Add peer connection to chat
    62e2691 Add toggle voicce server
    0c408d6 add chat response to client ping
    3824649 add client activity check
    637fe91 add search for UI and improve responsiveness in room
    18e2641 added mute button and testsed all feature. seems to work well
    0397674 all messages going through websocket now are in JSON format. our life are much easier now
    ef0c013 fix bug failed to adjust volume on viewer side
    489430c fix bug failed to start chat rightat first session
    5b121a2 got an ugly version of sfu that's runnign though
    c5fb68e hot fix sfu sync peers and add document for tstream chat
    8d4f125 stream audio using ffmpeg + rtp
    abcca67 useable voice streaming. client can change volume level and reconnection with audio whever streamer turn audio on. Need a bit fine tune to make it totatlly smooth
    f72a065 we have our own mediadevices build for darwin arm64 now

    Open source →
    Release notes

    v1.2.0

    Compare

    Choose a tag to compare

    Open source →
  11. v1.1.0 14 Jul 2021
    Release notes

    TUI chat

    • Start with command tstream -chat. It'll auto-detect streaming session to open chat

    CHAT

    • UI refactor a bit. but still needs a lot more work
    • UI add /name command so viewers can change their name
    • server => refactor message packaging

    Improves and secures streamer - server connectivity

    • Add authorization for streamer connection.
      • Streamer connecting flow:
        • Send a POST API to the server to request create room. this request contains a secret that'll be used as the room's secret
        • Initialize a WebSocket connection
          • Send a secret
          • server verifies. if match with room secret => authorize connection

    Changelog

    d017818 Add route for streamer chat
    a491c21 Increase version and add how to use TUI Chat
    fb96ade add change name commnad for chat
    eccc230 add config command for chat TUI
    00ee692 base layout for chat
    f4ee862 fix chat msg flow
    25614bc server add mechanism to verify websocket connection from streamer

    Open source →
    Release notes

    v1.1.0

    Compare

    Choose a tag to compare

    Open source →
  12. v1.0.0 12 Jul 2021
    Release notes

    Server

    • add boltDB : Currently, it only stores room info.
    • There is a coroutine to periodically sync state from RAM to DB
    • added a new api: POST /api/room : streamer must call this to request create room before connecting via WebSocket. This API performs some checks:
      • version checking of TStream. if the version is not compatible => return 426 to streamer
      • In case streamer requests to add a room already existed => user wants to reconnect, or maybe the room is taken by someone else. The server then checks the secret of the request with the room's Secret => if match then allows users to proceed

    TStream

    • Add check if the user starts TStream inside a TStream session: using TSTREAM_SESSION env
    • When TStream is started it will generate a config at ~/.tstream.conf. Currently store: secret, and username
    • Version checking, display message require the user to upgrade if fails

    Viewer

    • Add show recent streams on home page
    • Improve room state checking to display the right status
    • Improve responsiveness
    Open source →
    Release notes

    v1.0.0

    Compare

    Choose a tag to compare

    Open source →
  13. v0.1.0 07 Jul 2021
    Release notes

    First release

    • Basic tstream package for streamer
    • Webapp for Viewers
    • Center server for broadcasting

    Features:

    • 1 Streamer multiple viewers
    • Chatting
    Open source →
    Release notes

    v0.1.0

    Compare

    Choose a tag to compare

    Open source →
  14. v0.0.0-20220701043843-928b7cc203d0 01 Jul 2022 pre-release

    Nothing published for this version

  15. v0.0.0-20210821140147-34fc52f7fbb2 21 Aug 2021 pre-release

    Nothing published for this version

  16. v0.0.0-20210813141012-a47b9eeb0caa 13 Aug 2021 pre-release

    Nothing published for this version

  17. v0.0.0-20210809093257-0c18818fc225 09 Aug 2021 pre-release

    Nothing published for this version

  18. v0.0.0-20210808131745-7cd3e192e11b 08 Aug 2021 pre-release

    Nothing published for this version

  19. v0.0.0-20210808091251-3c2a05d8b58f 08 Aug 2021 pre-release

    Nothing published for this version

  20. v0.0.0-20210808024018-6c94231fc673 08 Aug 2021 pre-release

    Nothing published for this version

  21. v0.0.0-20210803081426-4c5a1160958b 03 Aug 2021 pre-release

    Nothing published for this version

  22. v0.0.0-20210803080023-4ec06f2e20f5 03 Aug 2021 pre-release

    Nothing published for this version

  23. v0.0.0-20210731052515-6aa57865b04d 31 Jul 2021 pre-release

    Nothing published for this version

  24. v0.0.0-20210731045648-0abcd40d0810 31 Jul 2021 pre-release

    Nothing published for this version

  25. v0.0.0-20210731040534-14a99ffa4131 31 Jul 2021 pre-release

    Nothing published for this version

  26. v0.0.0-20210729043508-b2d1b103bcd9 29 Jul 2021 pre-release

    Nothing published for this version

  27. v0.0.0-20210727002603-7113273f930d 27 Jul 2021 pre-release

    Nothing published for this version

  28. v0.0.0-20210707095516-211a7a05862e 07 Jul 2021 pre-release

    Nothing published for this version

  29. v0.0.0-20210707080036-a41a4530687d 07 Jul 2021 pre-release

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive