These 56 commits are when the Protocol Buffers files have changed:
Commit: | e8586ea | |
---|---|---|
Author: | hasezoey |
style(tui): add some notes why a function is called twice
The documentation is generated from this commit.
Commit: | 6ab5eda | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(lib::player): modify "ShufflePlaylist" to not return the new state, but event "PlaylistShuffled" does simplifies keeping track what has been updated and what not on which client. re https://github.com/tramhao/termusic/pull/429#issuecomment-2682645660
Commit: | 5993dd7 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(lib::player): add PlaylistShuffle event as a event for when shuffling happened was still missing. Note that this implementation currently gets / requests the playlist after a shuffle twice.
Commit: | 4e30e51 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: remove the now unused "ReloadPlaylist" command
Commit: | a06a060 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: move deleting non-existent tracks from the playlist to the server now nothing in the TUI touches "playlist.log" or message "ReloadPlaylist" anymore
Commit: | 550d17d | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: remove "PlaySelected" and introduce "PlaySpecific" refactor cryptic "PlaySelected" to a "PlaySpecific" message with index. This make understanding the function and behavior easier. Now the last thing that touches "playlist.log" / sends "ReloadPlaylist" is removing deleted items from the playlist.
Commit: | 1130f6c | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: move shuffling of the playlist to the server re #152
Commit: | 6c91b54 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: get the initial playlist values from the server No more "load" from "playlist.log" on tui initial playlist load re #152
Commit: | 3fe6f1d | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: let the server handle swapping in the playlist now the tui does not swap in playlist anymore. Though the TUI still shuffles & searches for random tracks. re #152
Commit: | ddee0a2 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: also send playlist loop-mode change via event This way, future multiple clients can change a mode and it is populated to all clients, instead of just the calling one.
Commit: | 299e302 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: change playlist removal to also handle clearing
Commit: | 8a8292f | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: let the server handle removing from the playlist now the tui does not remove from playlist anymore. Though the TUI still shuffles & searched for random tracks. re #152
Commit: | 07a353f | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: let the server handle adding to the playlist now the tui does not append the playlist anymore. Though the TUI still shuffles & removes. re #152
Commit: | 3683c18 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
refactor(player.proto): "CycleLoop" return the new mode and move the tui logic to set from that returned mode.
Commit: | 456705d | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
style(lib::proto::player): document some "UpdateTrackChanged" fields
Commit: | 014e79d | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(lib::proto::player): change "index" fields to be u64
Commit: | a3cf1f6 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(lib::proto::player): stream "gapless state" updates even though it is already returned with the "ToggleGapless" function.
Commit: | 6421280 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
refactor(lib::proto::player): rename "ToggleGaplessReply" to "GaplessState" and document it
Commit: | a6d2d12 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
refactor(lib::proto::player): rename "TogglePauseResponse" to "PlayState" and document it
Commit: | f106811 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
style(lib::proto::player): rename and relocate "EmptyReply" -> "Empty"
Commit: | 84de546 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
refactor(lib::proto::player): remove extra Empty message types and use "Empty" instead
Commit: | 34f2fe4 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
style(lib::proto::player): sort rpcs
Commit: | 13a22ab | |
---|---|---|
Author: | hasezoey |
fix(protobuf): update definition to be compatible with pre-protobuf 3.15 because ubuntu 22.04 still uses protobuf 3.12 and 3.15 added non-experimental "option" keyword
Commit: | d86ed54 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: impl stream update for track change
Commit: | 9f5e9d1 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: impl stream update for missed events This way it is easier to indicate to the client that a "Lagged" event happened, instead of returning a error as it is not actually fatal (in this use-case).
Commit: | 4db7edf | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: impl stream update for play status
Commit: | 2345869 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: impl stream update for speed
Commit: | b48931d | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: initial Protobuf server event streaming for now only a placeholder client implementation (printing events). also only one event for initial commit.
Commit: | 487237b | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
style(player.proto): consistent style
Commit: | 37853b5 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
style(player.proto): remove commented-out old duration implementation
Commit: | 8937ecf | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat: move protobuf from "playback" to "lib"
Commit: | fad7e21 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(playback::proto): transfer "volume" as a "uint32" a signed value is unnecessary, and protobuf does not support sizes lower than 32
Commit: | dbc6aa2 | |
---|---|---|
Author: | hasezoey |
fix(playback::proto): remove usage of "optional" as in the CI's systems it is still experimental
Commit: | 45524fa | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(playback::proto): transfer duration instead of i64 seconds for "GetProgressResponse" more granularity in the tui
Commit: | 9455491 | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
refactor(playback::proto): change to use own message type for player-time
Commit: | 8dcbfcb | |
---|---|---|
Author: | hasezoey | |
Committer: | hasezoey |
feat(playback::proto): transfer duration instead of i64 seconds for Seek replies
Commit: | 16f3fcd | |
---|---|---|
Author: | hasezoey |
Revert "Merge pull request #154 from GaelicGabe/refactor-daemon" This reverts commit 8c3cd5684c3fb03e91c24eb37c90d3067943dce4, reversing changes made to f34d1b446a3c82944f8aa487bde3368a0cae616e.
Commit: | f20df54 | |
---|---|---|
Author: | user |
Refactor daemon play-track feature and surrounding The play-selected-track flow was highly confusing, it involved 3 PlayerCmd's and 1 file write and 1 file read from the TUI and daemon respectively. This commit refactors this flow into 1 PlayerCmd and 0 file interaction. This PR also tries to simplify some other daemon flows by for example removing Eos signals sent by the daemon to itself when the next track should be played. Instead this is accomplished by just calling a function for playing the next track. The function that plays the next track is also completely reworked and renamed. It is now called `play_next_track` rather than `start_play`. This PR also makes sure that the daemon internal state is actually accurately representing what is going on in the application, previously the music player may play a track but the `current_track` would not point to this track. This commit also gets rid of 2 fields in the GeneralPlayer struct that turned out to not be necessary after the refactor. This commit also does some preporatory work for moving towards a model where playing tracks not in the playlist is possible. For example playing a track directly from the library. Finally this commit creates several comments for TODOs and thoughts about future improvements for the code.
Commit: | 5a2e7c3 | |
---|---|---|
Author: | user |
Refactor Playlist next track logic and cleanup Remove unecessary function abstractions in the playlist logic. Improve next track selection by replacing the function with an iterator. This allows us to not have duplicate songs in the random list (or if we want the random list to have duplicate songs then that's trivial). On top of that encode possibility of not having a current track in type logic. Cleanup and reformat project.
Commit: | accc3b4 | |
---|---|---|
Author: | user | |
Committer: | user |
Update playlist ui on track change The UI now changes which track is marked as playing when the daemon sends a track changed update. UI is no longer updating on track change via polling the progress, instead it updates properly on daemon update track change events. Also reverting a bug introduced by having u64 in the proto file rather than u32.
Commit: | 5f8a1e9 | |
---|---|---|
Author: | user | |
Committer: | user |
Large refactor types, daemon-update subscribers This large refactor commit moves the proto description to lib::types, it starts placing From and TryFrom implementations in lib::types for gRPC types. It also implements a server-to-client gRPC interface where the UI can subscribe to events from the daemon. This will hopefully make it easier for the UI to update itself when important events happen in the daemon for example when the playing track is changed.
Commit: | 212696b | |
---|---|---|
Author: | tramhao |
radio info is updated in lyric form
Commit: | b485563 | |
---|---|---|
Author: | tramhao |
start working on current track
Commit: | fa1c1cd | |
---|---|---|
Author: | tramhao |
skip previous and play selected works
Commit: | cd4bdd2 | |
---|---|---|
Author: | tramhao |
reload config and reload playlist works
Commit: | 0d514f3 | |
---|---|---|
Author: | tramhao |
seek forward/backword works
Commit: | bfeba54 | |
---|---|---|
Author: | tramhao |
toggle pause improve the display on progress title
Commit: | 2562238 | |
---|---|---|
Author: | tramhao |
toggle gapless works
Commit: | 738c2b3 | |
---|---|---|
Author: | tramhao |
speed change works
Commit: | 27db3b4 | |
---|---|---|
Author: | tramhao |
cycle loop mode works
Commit: | 82e3bfe | |
---|---|---|
Author: | tramhao |
volume works
Commit: | adc4824 | |
---|---|---|
Author: | tramhao |
volume up/down works but the first press is not working
Commit: | 56cf3b2 | |
---|---|---|
Author: | tramhao |
status works
Commit: | 3335b41 | |
---|---|---|
Author: | tramhao |
start working on get progress
Commit: | b86f7ab | |
---|---|---|
Author: | tramhao |
start working on next
Commit: | ad3dafd | |
---|---|---|
Author: | tramhao |
start working on grpc solution