I have a signal chain of cable STB -> colossus 2 -> jriver, if we ignore the sync issue described in
https://yabb.jriver.com/interact/index.php/topic,112495.0.html then this works fine. However I've noticed that jriver consistently hangs in the following situation
- STB is sleeping
- play the hdmi input in jriver
- wake up the STB
- stop playback in jriver
The STB comes out of sleep with a "waking up" message and then switches to whatever channel was last active. JRiver reacts to this by
- getting stuck on the previous view (the waking up message)
- hanging if you press stop at this point
jriver itself seems ok because an MC client in another room can initiate a connection and/or continue playback & panel still functions normally so it seems an MC client bug in handling this event in the capture stream.
Note that the hauppauge capture software does not have this problem, it can happily deal with this situation and tracks changes in the underlying stream without issue.
If I look in Process Explorer then I see MC has some borked child process wth PID 880, grepping the MC log for pid 880 I get
0280969: 880: Sharing Plugins: CHTTPListenerWorker::HandleConnection: Start
0280969: 880: Sharing Plugins: CHTTPListenerWorker::HandleRequest: UDP: 10.151.167.111: : http://127.0.0.1
0280969: 880: Sharing Plugins: CHTTPListenerWorker::HandleConnection: Finish (0 ms)
0465344: 880: Sharing Plugins: CHTTPListenerWorker::HandleConnection: Start
0465359: 880: Sharing Plugins: VHTTPMessage::ParseBody: Start
0465359: 880: Sharing Plugins: VHTTPMessage::ParseBody: Reading 2747 bytes from message body
0465359: 880: Sharing Plugins: VHTTPMessage::ParseBody: Finish (0 ms)
0465359: 880: Sharing Plugins: CHTTPListenerWorker::HandleRequest: TCP: 10.151.167.12: POST: http://10.151.167.29:63412/MCWS/v1/Library/Merge
0465359: 880: Sharing Plugins: CDLNADeviceServerWorker::ProcessPost: Start
0465359: 880: Sharing Plugins: CDLNADeviceServerWorker::ProcessPost: Finish (0 ms)
0465359: 880: Sharing Plugins: JRWebService::Process: Start
0465359: 880: Sharing Plugins: JRWebService::Process: URL: /MCWS/v1/Library/Merge
0465406: 880: Database: MCDB::MCDB: Start
0465406: 880: Database: MCDB::MCDB: Finish (0 ms)
0465406: 880: Database: MCDB::Load: Start
0465406: 880: Database: MCDB::Load: Loading (Type: 1, Path: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\, Key: , URL: , Name: Delta Library)
0465406: 880: Database: MCDB::Load: Unloading
0465406: 880: Database: MCDB::Unload: Start
0465406: 880: Database: MCDB::Unload: Stopping worker threads
0465406: 880: Database: MCDB::Unload: Getting database lock
0465406: 880: Database: MCDB::Unload: Starting unload
0465406: 880: Database: MCDB::Unload: Updating child objects after unload
0465406: 880: Database: MCDB::Unload: Resetting info
0465406: 880: Database: MCDB::Unload: Finish (0 ms)
0465406: 880: Database: MCDB::Load: Loading from path: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\
0465406: 880: General: CDatabaseRights::UpdateBeforeLoad: Start
0465406: 880: General: CDatabaseRights::UpdateBeforeLoad: Finish (0 ms)
0465406: 880: Database: MCDB::Load: Loading pieces
0465406: 880: Database: MCDB::GetRMDB: Creating object
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\removable.jmd
0465437: 880: Database: MCDB::GetPLDB: Creating object
0465437: 880: Database: CPlaylistsDB::Load: Start
0465437: 880: Database: CPlaylistsDB::Load: Clearing database
0465437: 880: Database: CPlaylistsDB::Load: Loading data file: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\playlistx.jmd
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\playlistx.jmd
0465437: 880: Database: CPlaylistsDB::Load: Loading 0 playlists
0465437: 880: Database: CPlaylistsDB::Load: Removing invalid items
0465437: 880: Database: CPlaylistsDB::Load: Pruning stale playlists
0465437: 880: Database: CPlaylistsDB::Load: Finish (0 ms)
0465437: 880: Database: MCDB::GetMFDB: Creating object
0465437: 880: Database: CMediaDatabase::CMediaDatabase: Start
0465437: 880: Database: CMediaDatabase::CMediaDatabase: Creating field array
0465437: 880: Database: CMediaDatabase::CMediaDatabase: Creating file map
0465437: 880: Database: CMediaDatabase::CMediaDatabase: Creating album analyzer
0465437: 880: Database: CMediaDatabase::CMediaDatabase: Initializing data
0465437: 880: Database: CMediaDatabase::CMediaDatabase: Finish (0 ms)
0465437: 880: Database: CMediaDatabase::Load: Start
0465437: 880: Database: CMediaDatabase::Load: Empty
0465437: 880: Database: CMediaDatabase::Load: Loading library file
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\mediafiles.jmd
0465437: 880: Database: CMediaDatabase::Load: Checking versions
0465437: 880: Database: CMediaDatabase::Load: Loading fields
0465437: 880: Database: CMediaDatabase::Load: Loading files
0465437: 880: Database: CMediaDatabase::Load: Success
0465437: 880: Database: CMediaDatabase::Load: Upgrading (if necessary)
0465437: 880: Database: CMediaDatabase::Load: Finish (0 ms)
0465437: 880: Database: MCDB::GetBSDB: Creating object
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\browser.jmd
0465437: 880: Database: MCDB::GetVSDB: Creating object
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\view state (index).jmd
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\view state temporary (index).jmd
0465437: 880: Database: CUserDB::Load: Start
0465437: 880: Database: CMediaFileIOLoad::Load: Loading: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Temp\Delta\user.jmd
0465437: 880: Database: CUserDB::Load: Finish (0 ms)
0465437: 880: Database: MCDB::Load: Success -- updating after load
0465437: 880: Database: MCDB::Save: Start
0465437: 880: Database: MCDB::Save: Saving (bCleanDB: 0, bForce: 0)
0465437: 880: Database: MCDB::Save: Finish (0 ms)
0465437: 880: Database: MCDB::Load: Finish (31 ms)
0465437: 880: Database: CDataHolder::Load: Field: Library Merge Info; Files: 1024; Pointer bytes: 1280; Data bytes: 16488; Elapsed ms: 0.202
0465437: 880: Database: CDataHolder::Load: Field: Bookmark; Files: 1024; Pointer bytes: 1280; Data bytes: 16488; Elapsed ms: 0.203
0465437: 880: Database: CDataHolder::Load: Field: Last Played; Files: 1024; Pointer bytes: 1280; Data bytes: 16488; Elapsed ms: 0.192
0465437: 880: Database: CDataHolder::Load: Field: Number Plays; Files: 1024; Pointer bytes: 1280; Data bytes: 16488; Elapsed ms: 0.196
0465437: 880: Database: MCDB::Save: Start
0465437: 880: Database: MCDB::Save: Saving (bCleanDB: 0, bForce: 0)
0465437: 880: Database: CMediaFileIOSave::Load: Saving: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Library\field (bookmark).jmd
0465453: 880: Database: CDataHolder::Save: Field: Bookmark; Elapsed ms: 15.755
0465453: 880: Database: CMediaFileIOSave::Load: Saving: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Library\field (last played).jmd
0465469: 880: Database: CDataHolder::Save: Field: Last Played; Elapsed ms: 5.777
0465469: 880: Database: CMediaFileIOSave::Load: Saving: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Library\field (number plays).jmd
0465469: 880: Database: CDataHolder::Save: Field: Number Plays; Elapsed ms: 5.103
0465469: 880: Database: CMediaFileIOSave::Load: Saving: C:\Users\Matt\AppData\Roaming\J River\Media Center 23\Library\playlistx.jmd
0465484: 880: Database: MCDB::Save: Finish (47 ms)
0465484: 880: Database: MCDB::Unload: Start
0465484: 880: Database: MCDB::Unload: Stopping worker threads
0465484: 880: Database: MCDB::Unload: Getting database lock
0465484: 880: Database: MCDB::Unload: Starting unload
0465484: 880: Database: MCDB::Unload: Stopping playback
0465484: 880: Database: MCDB::Unload: Waiting for tagging to finish
0465484: 880: Database: MCDB::Unload: Saving database
0465484: 880: Database: MCDB::Unload: Updating child objects after unload
0465484: 880: Database: MCDB::Unload: Resetting info
0465484: 880: Database: MCDB::Unload: Finish (0 ms)
0465484: 880: Sharing Plugins: JRWebService::Process: Finish (125 ms)
0465484: 880: Sharing Plugins: VHTTPMessage::Write: Wrote 170 bytes
0465484: 880: Sharing Plugins: CHTTPRequestMessage::ReadPreamble: Failed to read Method
0465484: 880: Sharing Plugins: CHTTPListenerWorker::HandleConnection: Finish (140 ms)
I suppose I can workaround this by not letting the STB sleep but that's not ideal from a power consumption point of view so would be nice to fix this.