Changelog

v0.22.0 (2020-05-22)

Full Changelog

Improvements:

  • youtube: add expiration of cached search results #742

  • Add more useful info into tizonia --debug #740

  • SoundCloud: Add fuzzy matching to ‘–soundcloud-user-playlist’ command #733

  • Add additional keyboard shortcuts #731

  • Add ability to list the contents of the play queue using a keyboard shortcut #730

  • Add ability to jump to arbitrary playlist items using keyboard shortcuts #728

  • Spotify: add options to play Spotify recommendations using an artist name #727

  • Binaries for Ubuntu 20.04 (Focal) #726

  • Spotify: add access to private lists in the user’s library #724

  • [Feature Request] Pressing “?” during playback should bring up –help commands #641

  • Support for spotify Songs playlist (https://open.spotify.com/collection/tracks) #600

  • [Feature Request] Add iHeartRadio #597

Fixed bugs:

  • google play music: no informative error message when ‘–gmusic-unlimited-promoted-tracks’ fails due to lack of subscription #739

  • google play music: ‘–gmusic-unlimited-artist’ does not yield the obvious best choice #738

  • ‘boost/timer.hpp’ and ‘boost/progress.hpp’ are deprecated #715

  • tizyoutubeproxy enqueue_audio_search “query” undefined bug #706

  • Return of tiz_urltrans_start assertion failures in 0.21.0 #702

  • youtube-audio-mix-search not playing song mentioned in search string #581

Closed issues:

  • Tizonia only runs YouTube streams at 160k #741

  • Play icecast stream or play from mounted hard drive #729

  • Soundcloud: Playlist is not found. #719

  • ModuleNotFoundError: No module named ‘tizsoundcloudproxy’ #718

  • error in mint tricia when spotify commands are ran #708

  • OMX_ErrorInsufficientResources on LXDE and Raspbian 10 #704

  • Config file not being read #703

  • Tizonia 0.21.0-1 fails to build #700

  • release v0.22.0 #735

Merged pull requests:

v0.21.0 (2020-03-08)

Full Changelog

Improvements:

  • youtube: add caching of requests to minimize quota issues #697

  • youtube: allow users to specify API keys to avoid quota issues #696

  • Youtube Error 403: The request cannot be completed because you have exceeded your quota #695

  • google music: display genre and album art info if available #694

Fixed bugs:

  • [YouTube] (GdataError) : Youtube Error 403: Access Not Configured. YouTube Data API has not been used in project 422897895433 before or it is disabled #689

  • Potential ASCII conversion regression in v0.19 #652

  • player: ‘segmentation fault (core dumped)’ while exiting the command-line application by pressing ‘q’ #317

  • Plex audio cuts out after 18 seconds on Arch distro #679

  • [Google Play Music] (RuntimeError) : maximum recursion depth exceeded in cmp #646

  • Google Music Free Radio Stations Load Queued Items List But Nothing Happens. #596

  • soundcloud-users-likes: OMX.Aratelia.audio_source.http:port:0 #576

Closed issues:

  • spotify: ‘connection refused’ (playlist displayed but music not streaming) #693

  • release v0.21.0 #699

v0.20.2 (2020-02-21)

Full Changelog

v0.20.1 (2020-02-21)

Full Changelog

Merged pull requests:

v0.20.0 (2020-02-19)

Full Changelog

Improvements:

  • Man page #655

  • Colored output options? #586

  • Build system: enhance existing configuration options to allow minimal dependencies #541

  • New build system based on Meson (phase I) #685

  • Add support for TuneIn Internet radios #684

  • tizonia-remote: publish in debian packages #683

Fixed bugs:

  • passwords in clear text in config file: add warnings to advise users to restrict access #678

  • Improve tizonia.org security by using HTTPS/SSL #672

  • Mopidy APT source is dead (404) #670

  • libtizplatform: allow options and comments in the same line of the config file #667

  • Not able to cast from penguin terminal to chromecast #639

Closed issues:

  • release v0.20.0 #682

  • Display Current Playing / RC.Local output via SSH #654

  • Using Tizonia in Cron jobs #651

  • --without-libspotify does not seem to work #648

  • AttributeError: module ‘importlib’ has no attribute ‘util’ #647

  • Error 404 on bintray raspbian buster 0.19 #645

  • Python modules ‘spotifyapi’ or ‘fuzzywuzzy’ not found. #644

  • docs: document Spotify authentication options #539

  • [news] gst-omx now makes use of non-pre-announce buffer mode for OMX_UseBuffer #416

  • docs: Google Play Music authentication methods #394

Merged pull requests:

v0.19.0 (2019-12-13)

Full Changelog

Improvements:

  • Support Debian Bullseye #632

  • install.sh: add support for Linux Mint 19.2 Tina #629

  • Raspbian Buster not supported #621

  • PulseAudio volume customized #620

  • Python3 support #614

  • Spotify: allow configuration of preferred bitrate settings #613

  • Plex: allow music section name other than ‘Music’ #610

  • spotify: global playlist search #589

Fixed bugs:

  • Spotify: tizonia should exit and display an error when used with a non-premium Spotify account #634

  • Dirble not accessible (Dirble removal) #624

  • –plex-audio-playlist <arg> returns “A playlist type must be specified.” #605

  • YouTube: Shuffle option does not work #592

  • Plex: (UnicodeDecodeError) : ‘ascii’ codec can’t decode byte #580

  • Segmentation fault with spotify #575

  • [SoundCloud] (UnicodeDecodeError) : ‘ascii’ codec can’t decode byte 0xc3 in position 0: ordinal not in range(128) #574

Closed issues:

  • Unable to locate package tizonia-all #640

  • Tizonia complains over unsufficient resources #622

  • OMX_ErrorInsufficientResources when using gmusic #617

  • gmusic: Could not retrieve the song url! (403: Forbidden) #615

  • Update command failed #611

  • Tizonia [runs very slow] on Mint 18.3 #595

  • Can’t install Tizonia on ARMHF hardware #594

  • Cannot render audio on linux mint #588

  • OMX_ErrorInsufficientResources - Speicherzugriffsfehler #587

  • [Suggestion] Shuffle option #585

  • YouTube Audio Steam Token Parameter #584

  • Advise adding a requirement to run script as normal user #573

  • release v0.19.0 #643

Merged pull requests:

v0.18.0 (2019-03-13)

Full Changelog

Improvements:

  • various graphs : add rewind, fast-forward functionality #125

  • Spotify: config option to allow/disallow ‘explicit’ tracks #568

  • Spotify: smarter ‘–spotify-artist’ search #538

Fixed bugs:

  • Arch User Repository: ‘tizonia-all’ builds sometimes break during upgrades #485

  • Spotify: core dumped with ‘tizonia –spotify-album “living on a prayer” #569

  • Google Play Music. Artist Not Found #565

  • tizonia fails with MALLOC_PERTURB_ set #563

  • Spotify: tizonia repeats the first track #560

  • dbus-cplusplus: fix no return in non void function #555

  • Google Play music intermittently cutting songs short #547

Closed issues:

  • release v0.18.0 #572

  • configure error #540

  • docs: document Tizonia’s configuration system #368

  • docs: document player shortcuts #570

v0.17.0 (2019-01-17)

Full Changelog

Fixed bugs:

  • tizgmusicproxy.py: Keep on getting a syntax error (Non-ASCII character ‘\xe2’) #542

  • Spotify: “unable to login offline: no such user” #531

  • tizonia: cannot handle whitespaces in its config file #468

Closed issues:

  • release v0.17.0 #550

Merged pull requests:

  • README: arch install notes #549 (sjugge)

  • Fixed the fetching of user likes & stream on soundcloud #548 (seifane)

v0.16.0 (2018-12-03)

Full Changelog

Improvements:

  • Spotify: add options to play Spotify recommendations using a track id, artist id, or genre name as seeds #536

  • Spotify: URIs for track, artist, and album displayed on terminal #535

  • Spotify: add option to force playing the next song after token is lost #534

  • Spotify: add option to play an album from Spotify’s new releases list #532

  • Spotify: add option to search and play a featured playlist #529

  • Spotify: add option to play top tracks from a number of similar artists #528

  • Spotify: add options for playback by Spotify ID, URI, or URL #527

  • Spotify: add fuzzy search capability to –spotify-artist #526

  • Spotify: hide spotify debug messages #525

  • Kali Linux support #510

Fixed bugs:

  • Spotify: tizonia does not exit when the Spotify login attempt fails #533

  • Spotify: –spotify-artist ‘Mötley Crüe’ returns Artist not found #524

  • ‘–help config’: information provided is outdated (and confuses people) #523

  • Google Music: ‘–gmusic-unlimited-station’: random station playing #522

  • Using –gmusic-playlist exits with error ‘maximum recursion depth exceeded in cmp’ #519

  • –gmusic-unlimited-playlist doesn’t work (key not found) whereas –gmusic-playlist does (and finds the list) #515

  • Linux Mint 18 Sarah: installation issue via install.sh script #508

  • –gmusic-unlimited-activity plays same playlist for activity every time #507

  • Google Music: playback stops at the end of a song with ‘gnutls_handshake() failed: An unexpected TLS packet was received.’ #500

Closed issues:

  • Updating Instructions threw an unhandled exception, seems like a syntax error #520

  • Tizonia Snap exits with OMX_ErrorInsufficientResources error #513

  • Tizonia can’t find my Spotify playlists #506

  • googlemusic settings help #505

  • tizonia-all-git not found in AUR #504

  • Gmusic-Unlimited Aratelia.audio_source.http:port0 OMX_ErrorInsufficientResources #503

  • OMX_ErrorInsufficientResources #501

  • release v0.16.0 #537

v0.15.0 (2018-06-15)

Full Changelog

Improvements:

  • player: improved Spotify search capabilities (tracks, artist, album, and playlists) #495

  • spotify_source: use Spotify Web APIs for search functions #494

  • clients: Spotify Web API client library #493

  • clients: Spotify Web API proxy/wrapper Python module #492

  • Spotify Playlists with Single Quotes in Name Can’t Be Found #486

  • spotify: unable to play some playlists #471

Fixed bugs:

  • Spotify: tizonia stalls when trying to open a playlist #490

  • Google Music: playback stops at the end of a song and playlist stalls #489

  • player: Spotify playlist search stalls sometimes #487

  • AUR install depends on python2-eventlet-git which fails to build, instead of python2-eventlet which is in the default repository #484

  • player: ‘segmentation fault’ while trying to get metadata of a track #433

Closed issues:

  • release v0.15.0 #497

v0.14.0 (2018-04-20)

Full Changelog

Improvements:

  • YouTube Channels support - channel playlist search #476

  • YouTube Channels support - channel uploads #475

  • Debian Testing/Buster (10) not available #474

  • google music: support for free radio stations #473

  • google music: add option to play the entire user library #470

Fixed bugs:

  • RSS Feed in official Website is broken #480

  • segmentation fault with snap and spotify #479

  • google music: Playlist shows 0 tracks in Tizonia, has tracks on Google Play web interface #478

  • httprsrv.c:857:3: note: ‘snprintf’ output between 11 and 138 bytes into a destination of size 128 #477

  • google music: tiz_urltrans_on_buffers_ready: assertion #472

  • player: symbol lookup error: lib/tizonia0-plugins12/libtizhttpsrc.so.0.0.13: undefined symbol: tiz_str_util_to_lower #464

  • Google Music: track downloading is interrupted seemingly randomly #349

Closed issues:

  • python modules _soundcloud_ and _fuzzywuzzy_ were missing #469

  • how to fix “FATAL. Could not init OpenMAX IL : OMX_ErrorInsufficientResources” #466

  • Bionic install from repository: libspotify12 missing #465

  • release v0.14.0 #482

v0.13.0 (2018-03-11)

Full Changelog

Improvements:

  • libtizplatform: need API to configure connection timeout in tizurltransfer.h #453

  • dirble: m3u files are not parsed #451

  • soundcloud: improve the matching of search results #446

  • google music: improve the matching of search results #445

  • player: add progress display #444

  • Client request: Plex Media Server #387

Fixed bugs:

  • Lots of ChannelError messages during Spotify playback #443

  • aac_decoder: ‘OMX_ErrorInsuficientResources’ is sometimes returned instead of ‘OMX_ErrorStreamCorruptFatal’ #459

  • dirble: can’t play radio stations - ‘Content-Length’ header comparison should be case-insensitive #458

  • dirble: error ‘Unable to override decoder/renderer sampling rates’ #457

  • dirble: buffer underruns in some radio stations (specially with FlumotionHTTPServer) #456

  • dirble: can’t play radio stations if url contains mixed-case ‘http’ prefix #455

  • player: can’t play radio stations if url contains mixed-case ‘http’ prefix #454

  • dirble: connection timeout is currently too long (20 s) #452

  • player: no local files played if the playlist contains unicode file names #449

  • soundcloud: UnicodeDecodeError ‘ascii’ codec can’t decode byte 0xf0 in position 13 #432

  • Building tizonia on Ubuntu 17.10 Artful #421

Closed issues:

  • There is no tizonia.conf file #447

  • Most CD ripper programs rip within a newly created folder representing the CD’s name and artist, yet Tizonia appears to be oblivious to all nested folders in ~/Music. #442

  • Installer script doesn’t copy tizonia.conf file #441

  • Unable to run on Solus OS #434

  • release v0.13.0 #460

Merged pull requests:

  • Fixed path to default config file for standard install #448 (nlwstein)

v0.12.0 (2018-02-11)

Full Changelog

Improvements:

  • snap: move snapcraft.yaml to its own repo #431

  • libtizplatform: allow expansion of environment variables in tizonia configuration file #429

  • tizonia-config: Default configuration files should be installed to $sysconfdir/xdg/subdir/filename with $sysconfdir defaulting to /etc. #427

  • build system: update ax_boost*.m4 macros with latest version from autoconf-archive #426

  • build system: Tizonia snap package #309

  • clients: add a ‘tizchromecastproxy’ Python module #298

  • Chromecast support #296

Fixed bugs:

  • Use of deprecated gethostbyname() #425

Closed issues:

  • Spotify playlist fails #435

  • release v0.12.0 #436

Merged pull requests:

v0.11.0 (2017-12-17)

Full Changelog

Improvements:

  • libtizplatform: use $XDG_CONFIG_HOME and $XDG_CONFIG_DIRS to locate tizonia.conf #428

  • 3rdparty: embed pkgw/dbus-cplusplus #413

  • http_source: youtubeprc - increase the amount of data emitted by the output port #411

  • webm_demuxer: catch up internal nestegg with kinetiknz/nestegg master #405

  • build system: top-level ‘configure’ option to enable/disable the ‘alsa’ omx component #402

  • build system: top-level ‘configure’ option to enable/disable ‘spotify_source’ omx component build #396

  • tizonia-player: bash completion file distributed in debian package #385

  • tizonia-player: zsh completion file distributed in debian package #384

  • tizonia-player: bash completion file #307

  • clients: add a ‘libtizchromecast’ binding library #297

Fixed bugs:

  • player: youtube crash with webm/vorbis stream #420

  • release v0.11.0 #419

  • player: garbage on the screen after ‘tizonia’ exits on error #418

  • player: audio playback from local files is broken for most formats #417

  • webm_demuxer: dmuxfltprc - allow nestegg initialisation to fail while buffering input data #412

  • libtizplatform: tizurltransfer needs to work correctly when copying to an omx buffer that already contains data #410

  • webm_demuxer: not enough input data results in the nestegg object not initializing correctly #408

  • webm_demuxer: allocation of the nestegg object fails silently with some streams #407

  • youtube: console informational element ‘stream #’ appears garbled #406

  • install.sh: make sure pip2 is used on systems that have pip3 as its default pip installation #404

  • Crashes on yt livestreams #403

  • Ogg Vorbis decoding is slow and static-y #386

Closed issues:

  • Building on 17.10 hangs #414

  • aac decoder: pcmmode.eEndian should be set to OMX_EndianLittle instead of OMX_EndianBig . #409

  • No such file or directory (youtube). #401

  • Can’t install on Ubuntu 14.04 trusty #398

  • .config reload #397

  • Ubuntu 18.04 support #393

  • Binary for Ubuntu 17.10 #389

  • Can´t autoreconf -ifs #388

Merged pull requests:

v0.10.0 (2017-10-22)

Full Changelog

Improvements:

  • distribution: raspbian stretch #370

  • build system : top-level ‘configure’ option to enable/disable ‘player’ compilation #249

  • CI: Migrate to Travis’ new infrastructure #124

  • player: dirble graph’s default sampling rate should be 44100 instead of 48000 #382

  • dirble: update country search to accept country names in addition to country ISO 3166 codes #381

  • youtube: add APIs to query the playback queue progress (e.g. currently playing stream 5 or 17) #380

  • arch pl0x #335

Fixed bugs:

  • Coverity Scan (CID 1087260) [/libtizplatform/src/avl/avl.c:avl_iterate_index_range] : Dereference null return value #205

  • Coverity Scan (CID 1352377) [/plugins/http_renderer/src/httprsrv.c:httpr_srv_set_mp3_settings] : Result is not floating-point #196

  • Coverity Scan (CID 1352358) [/libtizonia/src/tizuricfgport.c:uri_cfgport_GetParameter] : Array compared against 0 #192

  • Coverity Scan (CID 1352332) [/plugins/http_renderer/src/httprsrv.c:srv_get_socket_buffer_size] : Unchecked return value from library #174

  • Coverity Scan (CID 1352331) [/plugins/http_renderer/src/httprsrv.c:srv_send_http_error] : Unchecked return value from library #173

  • Coverity Scan (CID 1352330) [/plugins/http_renderer/src/httprsrv.c:srv_create_server_socket] : Unchecked return value from library #172

  • Coverity Scan (CID 1352329) [/plugins/http_source/src/httpsrctrans.c:start_curl] : Unchecked return value #171

  • Coverity Scan (CID 1352328) [/plugins/http_source/src/scloudprc.c:update_metadata] : Unchecked return value #170

  • Coverity Scan (CID 1352340) [/plugins/http_renderer/src/httprsrv.c:srv_accept_connection] : Logically dead code #167

  • Coverity Scan (CID 1352339) [/plugins/http_renderer/src/httprsrv.c:srv_accept_connection] : Logically dead code #166

  • youtube: URLs are permanently deleted from the playback queue in the presence of temporary communication errors #379

  • pcm_renderer_alsa: OMX_ErrorInsufficientResources on Raspberry Pi (one-channel playback through FiiO USB DAC) #378

  • ‘tizonia –youtube-audio-mix-search’ fails with ‘TypeError: sequence item 9: expected string or Unicode, dict found’ #377

  • Build failure on Arch Linux #376

  • Current AUR build is broken on at least two levels #375

  • player: OMX_ErrorInsufficientResources while pausing on Raspberry PI (using alsa renderer) #374

  • “Illegal instrunction” on “2017-07-05-raspbian-jessie-lite.img” #372

  • http_renderer: ‘tizonia –server’ hangs after the first song #371

  • player: the terminal is occasionally left in an inconsistent state when the application fails #369

  • Various warnings while building with gcc 7.1.1 (Manjaro Linux) #367

  • docs: doc builds fail due to Breathe defect #343

  • Issues with Google Music : –gmusic-playlist #328

  • tizonia: pulsearprc.c:592: init_pulseaudio_stream: Assertion `ap_prc->p_pa_context_’ failed. Aborted (core dumped) #301

Closed issues:

  • tools/install.sh still does not work for ubuntu-16.04 #373

  • The PKGBUILD installs config files to /usr/etc instead of /etc #366

  • release v0.10.0 #383

Merged pull requests:

  • PKGBUILD: Fix style inconsistencies #365 (sylveon)

  • vp8_decoder: add inport_SetParameter to set nBufferSize #363 (CapOM)

v0.9.0 (2017-08-04)

Full Changelog

Improvements:

  • libtizonia: OMX_IndexParamVideoQuantization not supported #351

Fixed bugs:

  • release v0.9.0 #361

  • tizdeezerproxy: removal due to copyright issues #360

  • libtizonia: nBufferSize is not updated on video output port #358

  • vp8_decoder: the flush handler should not discard the codec config, only the stored stream data #354

  • libtizonia: tizscheduler.c::set_thread_name crashes if there is no “third” dot in the component name #353

  • libtizonia: port hooks (both alloc and eglimage validation) are not restored and get lost after the component’s role is changed or reset #348

  • aac_decoder: aacdecprc.c:transform_buffer:436 — [OMX_ErrorInsufficientResources] : Unable to store all the data. #346

  • libtizonia: a port that does not support OMX_UseEGLImage should return OMX_ErrorNotImplemented #345

Closed issues:

  • libtizonia: allow registration of different egl validation hooks for different component roles #350

  • support mesa/gallium #116

v0.8.0 (2017-06-25)

Full Changelog

Improvements:

  • tizonia-player: oh-my-zsh plugin #336

  • Google Music : add a ‘–gmusic-podcast’ option #334

  • Google Music : add a ‘–gmusic-tracks’ option #333

  • Google Music : add a ‘–gmusic-unlimited-playlist’ #332

  • webm_demuxer: update ‘nestegg’ library to latest #323

  • webm_demuxer: implement VP8/VP9 video demuxing in ‘filter’ role #322

  • vp8_decoder: add support for raw streams #314

  • build system: debian packaging of YUV renderer component #313

  • build system: debian packaging of VP8 decoder component #312

  • tizonia-player: zsh completion file #306

  • clients: add a ‘tizdeezerproxy’ Python module #300

  • clients: add a ‘libtizdeezer’ binding library #299

  • player: add ‘–youtube-audio-mix-search’ option #295

  • Add support for Deezer #294

Fixed bugs:

  • release v0.8.0 #339

  • libtizonia: IL 1.2 slaving behavior needs to be applied to both ports (input and output) if the port settings changed is triggered internally #338

  • Issues with Google Music : player stalls if connection is lost (libcurl SSL error with errno 104) #337

  • Issues with Google Music : –gmusic-unlimited-station incorrect “not found” message (minor issue) #331

  • Issues with Google Music : –gmusic-unlimited-activity sometimes does not return any results #330

  • yuv_renderer: ‘sdlivr_prc_buffers_ready’ last few buffers in the stream sometime are not processed #329

  • libtizonia: tizvideoport needs to override ‘SetParameter_internal’ #327

  • yuv_renderer: add port enable/disable functionality #326

  • Issues with Google Music : –gmusic-unlimited-tracks #325

  • libtizonia: ‘videoport’ base class has no ‘tiz_port_set_portdef_format’ override #321

  • tizyoutubeproxy: allow for retries as a workaround for SSLEOFErrors while retrieving youtube stream URLs #315

  • libtizplatform: can’t locate the global tizonia.conf configuration file (@sysconfdir@) when the user’s config file is not present #311

  • tizonia.conf: Debian installation puts it under /etc/tizonia/tizonia.conf instead of /etc/tizonia #310

  • player: command line argument processing is broken on systems with boost 1.59 or greater #308

  • tools/install.sh: script does not support installation on Ubuntu-based LinuxMint OSes #303

  • tools/install.sh: script does not support installation on 16.04-based Elementary OS 0.4 Loki #302

Closed issues:

  • Can’t find a supported Debian or Ubuntu-based distribution. #304

v0.7.0 (2017-03-02)

Full Changelog

Improvements:

  • clients-youtube: skipping to a new song takes too long the first time, faster after that #291

Fixed bugs:

  • Coverity Scan (CID 1087243) [/libtizcore/src/tizcore.c:instantiate_comp_lib] : Copy into fixed size buffer #234

  • Coverity Scan (CID 1087305) [/libtizcore/src/tizcore.c:get_core] : Logically dead code #164

  • Coverity Scan (CID 1087304) [/libtizplatform/src/tizrc.c:tiz_rcfile_init] : Logically dead code #163

  • release v0.7.0 #293

  • player: tizonia ‘–youtube-audio-playlist’ always returns “Playlist not found” #292

  • tizonia: application crashes if option values are not provided #290

  • googlemusic: –gmusic-artist outputs dictionary contents instead of artist name #289

  • Coverity Scan (CID 1352370) [/usr/include/boost/msm/back/dispatch_table.hpp:dispatch_table] : Uninitialized pointer field #237

  • Coverity Scan (CID 1352368) [/usr/include/boost/msm/back/state_machine.hpp:state_machine] : Uninitialized scalar field #235

  • Coverity Scan (CID 1352350) [/player/src/tizgraphmgrops.cpp:deinit] : Double lock #216

  • Coverity Scan (CID 993663) [/libtizplatform/src/ev/ev.c:infy_cb] : Untrusted array index read #197

  • Coverity Scan (CID 1087266) [/libtizonia/src/tizutils.c:tiz_fsm_state_to_str] : Mixing enum types #175

v0.6.0 (2017-01-16)

Full Changelog

Improvements:

  • libtizplatform: update utarray to v2.0.1 #288

  • libtizplatform: update http-parser to v2.7.1 #287

  • vorbis_decoder: stream metadata retrieval #281

  • opus_decoder: stream metadata retrieval #280

  • vorbis_decoder: handling of port flush, enable and disable events #278

  • libtizplatform: add ‘tiz_audio_coding_to_str’ utility function #277

  • spotify_source: play a random playlist when one cannot be found in the user library #274

  • libtizplatform: fix and clean up ‘tiz_check_xxx’ utilities #269

  • libtizonia: add a muxer port #268

  • libtizonia: add an ogg port #267

  • libtizonia: add a webm port #266

  • libtizonia: rename ‘tiz_buffer_overwrite_mode’ as ‘tiz_buffer_seek_mode’ #265

  • libtizplatform: add ‘tiz_buffer_seek’, ‘tiz_buffer_offset’ and ‘tiz_buffer_overwrite_mode’ apis #264

  • libtizplatform: remove ‘tiz_buffer_t’ apis that were deprecated in version 0.2.0 #263

  • libtizcore: avoid reading non-shared object entries during directory scanning #262

  • libtizonia: add port disabled/enabled accessors in ‘tiz_filter_prc_t’ #261

  • libtizonia: ‘tiz_filter_prc_t’ needs to support components with multiple input and output ports #260

  • tizonia/gmusic: graph’s default sampling rate should be 44100 instead of 48000 #259

  • libtizplatform: fix clang-tidy-3.8 warnings #258

  • libtizonia: fix clang-tidy-3.8 warnings #257

  • tizplatform: libcurl-based data transfer utility #254

  • clients: youtube audio streaming proxy Python module #253

  • clients: youtube audio streaming client library #252

  • player: youtube audio streaming graph #251

  • plugins: webm demuxer component #250

Fixed bugs:

  • Coverity Scan (CID 1352364) [/libtizplatform/src/tizrc.c:get_node] : Resource leak #232

  • Coverity Scan (CID 1087255) [/libtizplatform/src/tizhttp.c:insert_kv_pair] : Resource leak #228

  • Coverity Scan (CID 1087245) [/libtizplatform/src/tizrc.c:tiz_rcfile_init] : Resource leak #221

  • Coverity Scan (CID 1087244) [/libtizplatform/src/tizvector.c:tiz_vector_init] : Resource leak #220

  • Coverity Scan (CID 1352353) [/libtizplatform/src/tizev.c:enqueue_timer_msg] : Missing unlock #219

  • Coverity Scan (CID 1352352) [/libtizplatform/src/tizev.c:enqueue_io_msg] : Missing unlock #218

  • Coverity Scan (CID 1352351) [/libtizplatform/src/tizev.c:enqueue_stat_msg] : Missing unlock #217

  • Coverity Scan (CID 1352357) [/plugins/http_renderer/src/httprsrv.c:srv_write_omx_buffer] : Macro compares unsigned to 0 #202

  • Coverity Scan (CID 1352356) [/plugins/vorbis_decoder/src/vorbisdprc.c:transform_buffer] : Macro compares unsigned to 0 #201

  • Coverity Scan (CID 1352334) [/plugins/spotify_source/src/spfysrcprc.c:send_port_auto_detect_events] : Constant expression result #200

  • Coverity Scan (CID 1352333) [/plugins/pcm_renderer_pa/src/pulsearprc.c:init_pulseaudio_stream] : Operands don’t affect result #199

  • Coverity Scan (CID 1352349) [/player/src/tizplayapp.cpp:getch_] : Overflowed return value #198

  • Coverity Scan (CID 1352354) [/libtizonia/src/tizservant.c:srv_issue_trans_event] : Mixing enum types #190

  • Coverity Scan (CID 1352337) [/libtizplatform/src/tizev.c:ev_io_msg_dequeue] : Same on both sides #189

  • Coverity Scan (CID 1352336) [/libtizplatform/src/tizev.c:ev_timer_msg_dequeue] : Same on both sides #188

  • Coverity Scan (CID 1352335) [/libtizplatform/src/tizev.c:ev_stat_msg_dequeue] : Same on both sides #187

  • Coverity Scan (CID 1087279) [/libtizonia/src/tizfsm.c:fsm_complete_transition] : Mixing enum types #186

  • Coverity Scan (CID 1087277) [/libtizonia/src/tizidletoexecuting.c:idletoexecuting_trans_complete] : Mixing enum types #185

  • Coverity Scan (CID 1087276) [/libtizonia/src/tizidletoloaded.c:idletoloaded_trans_complete] : Mixing enum types #184

  • Coverity Scan (CID 1087275) [/libtizonia/src/tizloadedtoidle.c:loadedtoidle_trans_complete] : Mixing enum types #183

  • Coverity Scan (CID 1087274) [/libtizonia/src/tizwaitforresources.c:waitforresources_trans_complete] : Mixing enum types #182

  • Coverity Scan (CID 1087272) [/libtizonia/src/tizstate.c:state_trans_complete] : Mixing enum types #181

  • Coverity Scan (CID 1087271) [/libtizonia/src/tizpause.c:pause_trans_complete] : Mixing enum types #180

  • Coverity Scan (CID 1087270) [/libtizonia/src/tizloaded.c:loaded_trans_complete] : Mixing enum types #179

  • Coverity Scan (CID 1087269) [/libtizonia/src/tizexecuting.c:executing_trans_complete] : Mixing enum types #178

  • Coverity Scan (CID 1087268) [/libtizonia/src/tizexecutingtoidle.c:executingtoidle_trans_complete] : Mixing enum types #177

  • Coverity Scan (CID 1087267) [/libtizonia/src/tizpausetoidle.c:pausetoidle_trans_complete] : Mixing enum types #176

  • Coverity Scan (CID 1352327) [/player/src/tizplayapp.cpp:getch_] : Truncated stdio return value #162

  • release v0.6.0 #286

  • vorbis_decoder: handling port settings changes is missing #285

  • libtizplatform: tiz_vector_clear should not crash if passed a null pointer #284

  • pcm_renderer_pa: audio is muted after the component is destroyed and then recreated #283

  • opus_decoder: handling port settings changes is missing #282

  • opus_decoder: disable -> enable sequence is broken #279

  • player: spotify playback won’t start after the spotify storage area has been cleaned (or on a first install) #276

  • spotify_source: per-user and per-account spotify cache locations #275

  • player: spotify playback won’t start if playlist name is not a perfect match AND “invalid” playlists exist in the container #273

  • player: oggopusgraph renders PCM at the original sampling rate instead of at the decoders rate #271

  • opus_decoder: opus decoder expects a comment header at beginning of stream (which may or may not be there) #270

  • dirble: ‘AttributeError’ while processing station stream dictionaries that have no ‘content_type’ key #256

  • spotify: playlist processing stalls when a track is not available in Spotify #255

Closed issues:

  • Spotify connection problem. Error 410 #272

  • No pluginsdir variable in pkg-config file. #248

v0.5.0 (2016-06-17)

Full Changelog

Improvements:

  • release 0.5.0 #247

  • tizgmusic: play a random item from the user library or Google Music catalogue when search results are empty #246

  • tizgmusic: add “situations” search support #245

Fixed bugs:

  • tizgmusic: broken after ‘gmusicapi’ renamed the search method #244

Closed issues:

  • release v0.4.0 #159

v0.4.0 (2016-05-04)

Full Changelog

Improvements:

  • release v0.4.0 #243

  • tizgmusicproxy: station search : If no suitable station is found in the user’s library, then search google play unlimited for a potential match #158

  • tizonia-player: add Dirble support #123

  • plugins: Dirble open radio source component #122

Fixed bugs:

  • Coverity Scan (CID 1352374) [/player/src/services/dirble/tizdirblegraphops.cpp:dirbleops] : Uninitialized scalar field #241

  • Coverity Scan (CID 1352373) [/player/src/services/googlemusic/tizgmusicgraphops.cpp:gmusicops] : Uninitialized scalar field #240

  • Coverity Scan (CID 1352372) [/player/src/services/soundcloud/tizscloudgraphops.cpp:scloudops] : Uninitialized scalar field #239

  • Coverity Scan (CID 1352371) [/player/src/services/spotify/tizspotifygraphops.cpp:spotifyops] : Uninitialized scalar field #238

  • Coverity Scan (CID 1352369) [/player/src/tizprobe.cpp:probe] : Uninitialized scalar field #236

  • Coverity Scan (CID 1352365) [/player/src/tizdaemon.cpp:daemonize] : Resource leak #233

  • Coverity Scan (CID 1352363) [/libtizplatform/src/tizev.c:init_event_loop_thread] : Resource leak #231

  • Coverity Scan (CID 1352362) [/player/src/tizgraphutil.cpp:set_content_uri] : Resource leak #230

  • Coverity Scan (CID 1352361) [/plugins/http_renderer/src/httprsrv.c:srv_accept_socket] : Resource leak #229

  • Coverity Scan (CID 1087251) [/libtizplatform/src/tizsync.c:tiz_cond_init] : Resource leak #227

  • Coverity Scan (CID 1087250) [/libtizplatform/src/tizsync.c:tiz_mutex_init] : Resource leak #226

  • Coverity Scan (CID 1087249) [/libtizplatform/src/tizsync.c:tiz_sem_init] : Resource leak #225

  • Coverity Scan (CID 1087248) [/libtizcore/src/tizcore.c:find_component_paths] : Resource leak #224

  • Coverity Scan (CID 1087247) [/libtizcore/src/tizcore.c:scan_component_folders] : Resource leak #223

  • Coverity Scan (CID 1087246) [/libtizcore/src/tizcore.c:instantiate_component] : Resource leak #222

  • Coverity Scan (CID 1352366) [/plugins/pcm_renderer_pa/src/pulsearprc.c:pulseaudio_stream_state_cback_handler] : Dereference before null check #214

  • Coverity Scan (CID 1352348) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #213

  • Coverity Scan (CID 1352347) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #212

  • Coverity Scan (CID 1352346) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #211

  • Coverity Scan (CID 1352345) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #210

  • Coverity Scan (CID 1352344) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #209

  • Coverity Scan (CID 1352343) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #208

  • Coverity Scan (CID 1352342) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #207

  • Coverity Scan (CID 1352341) [/player/src/httpserv/tizhttpservgraphfsm.hpp:operator ()] : Unchecked dynamic_cast #206

  • Coverity Scan (CID 1352378) [/player/src/tizgraphcmd.cpp:c_str] : Wrapper object use after free #204

  • Coverity Scan (CID 1352359) [/player/src/tizgraphutil.cpp:set_role] : Out-of-bounds write #203

  • Coverity Scan (CID 1352355) [/player/src/tizgraph.cpp:omx_evt] : Inferred misuse of enum #191

  • http_renderer: Google Music, SoundClound playback does not work in Ubuntu 16.04 #242

  • tizmp3dec: OMX_EventPortSettingsChanged not signalled correclty with mono streams #157

v0.3.0 (2015-12-24)

Full Changelog

Improvements:

  • release v0.3.0 #156

  • libtizplatform: add ‘tiz_event_timer_is_repeat’ to know if a timer is repeat or not #153

Fixed bugs:

  • pcm_renderer_alsa: EOS should be signalled after all frames in the last buffer are consumed by ALSA #155

  • tizmp3dec: component does not always report EOS #154

  • libtizonia: non-repeat timers are not removed from the tizservant’s watcher map #152

  • tizhttpsrc: soundcloud gapless playback #151

  • tizhttpsrc: google play music gapless playback #150

  • tizspotifysrc: playback stalls when ‘container_loaded’ is called by spotify #149

  • tizspotifysrc: playlists are not found in the user library #148

v0.2.0 (2015-12-14)

Full Changelog

Improvements:

  • tizspotifysrc: playlist name matching improvements #146

  • alsa_renderer: set a custom ALSA error handler to dump error info to tizonia’s log file #145

  • release v0.2.0 #141

  • Simplybuilt website #140

  • CI: migrate to Travis’ Ubuntu 14.04 image #138

  • libtizplatform: update http-parser to v2.6.0 #137

  • libtizplatform: update utarray to v1.9.9 #136

  • tools: add a dev build script #133

  • google music: support logging in via an auth token #132

  • docs: update Sphinx config to integrate ‘breathe’ and allow Doxygen output in Read the Docs #127

  • tizonia-player: add SoundCloud support #121

  • libtizonia: support for OMX_UseEGLImage #118

  • Improved, more straightforward command line ‘–help’ option #117

  • tizonia-player: improve compile times by firewalling the decoder graph fsm #115

  • SoundCloud streaming source component #111

Fixed bugs:

  • mp3_decoder: output buffer size is too small and causes too many exchanges with the renderer #110

  • http_source sometimes stalls when curl instructs to unregister the socket #109

  • tizplatform: tiz_queue uses internally TIZ_QUEUE_MAX_ITEMS instead of the ‘capacity’ argument provided #144

  • tizspotifysrc: don’t allow the component’s main event queue get full (which leads to component stalling or crashing) #143

  • tizspotifysrc: fix various race conditions causing cracking sound problems #142

  • build system: remove warnings #139

  • libtizplatform: rework tizev to dispatch event start/stop/destroy from the async watcher callback #135

  • libtizplatform: increase line limit in config file parser utility #134

  • tizgmusicproxy: (UnicodeEncodeError) : ‘ascii’ codec can’t encode character in ‘tizonia –gmusic-unlimited-album’ “Las 100 mejores canciones del Rock español” #130

  • tizgmusicproxy: tizonia –gmusic-unlimited-album : IndexError: list index out of range #129

  • docs: fix build system under ‘docs’ folder to properly build doxygen docs #126

  • google play music: replace references to ‘All-access’ with ‘Unlimited’ #120

  • tizgmusicproxy: unicode to ASCII without errors #119

* This Changelog was automatically generated by github_changelog_generator