INTERACT FORUM
More => Old Versions => JRiver Media Center 23 for Windows => Topic started by: mwillems on August 26, 2017, 09:01:17 am
-
I have a JRiver server on a windows box, and four or five linux clients scattered around the house. Many of the clients are on wifi or have limited bandwidth, so I have the media network client options set to convert video to MPEG-TS 720p auto-frame rate. Until recently this worked great. I hadn't used one of these satelite systems to watch a video in a few weeks, but suddenly got a "something went wrong with playback" no matter what I tried to play. Audio works fine, and if I change the client video conversion setting to any of the H264 options it works fine. If I transfer over the original video file, it plays fine. I tested a few more conversion options and all of the MPEG based ones seem to fail. I'm not sure if the issue is on the windows server side, or the linux client side, but I wanted to ask if this is a known issue or if anyone else has observed it. I could setup a windows client for testing if that would be helpful.
I haven't bisected to see which version this first appeared, but it worked with the early MC23 builds. I've tested 23.0.36 and 23.0.41 on the windows server, and 23.0.36 and 23.0.21 on the linux clients and all combinations of those builds exhibit the issue. I can try and go farther back if that would be helpful.
-
I just noticed a similar problem with a 41 windows server talking to a 36 linux client, in my case the client is using H264-TS 1080p and switching to H264-TS 1080p AutoFPS was enough to get it working. The former option definitely used to work a few weeks ago. Your option (MPEG-TS 720p auto) works fine for me atm.
-
Weird. I wonder what could be going on with that? Do you have a windows client to test whether it works there?
-
no errors in any of those options with a 42 windows client
-
no errors in any of those options with a 42 windows client
So it's probably linux client related and may be related to the new streaming refinements
-
All builds of 23 have the new internet reader.
If you could pin down a specific build when you started seeing issues it would help.
-
I would be very surprised if the AutoFPS variant of a format plays, but the fixed-fps variant doesn't. They are practically identical otherwise.
-
I assume you are connecting with a linux client using library server to a windows server and setting the conversion in the linux client options?
-
No luck reproducing this with the latest builds of MC 23 for linux and windows. All of the MPEG-TS video conversions and H264-TS conversions I try work fine.
-
I assume you are connecting with a linux client using library server to a windows server and setting the conversion in the linux client options?
yes
-
Here are two logs, one illustrating the failed mpeg-ts autofps playback (17-46-00) and one showing about 10 seconds of successful playback via h264 auto-fps (17-49-52)
-
Bob is probably out for the rest of the week. Thanks for the logs.
-
Still works for me with your exact conversion from the Log.
Looking at the log you sent, it looks like the conversion is failing.
Does the windows machine have an internet connection so it can download the converter?
What is the file source format (look at the compression field on the server).
-
Still works for me with your exact conversion from the Log.
Looking at the log you sent, it looks like the conversion is failing.
Does the windows machine have an internet connection so it can download the converter?
What is the file source format (look at the compression field on the server).
The source file is MPEG-2/AAC, and it plays perfectly on the windows machine. The windows machine also has an internet connection, so I'm not sure what the issue could be. I'll keep experimenting and see if I can find something weird going on.
Also, not sure if this is related, but all attempts to play video in the new panel video player also fail (attempting to use the server as the panel host), so that's consistent with some kind of issue with the server failing to transcode.
EDIT: Ok I just tried to directly convert a file on the server to mpeg2-ts and the conversion failed instantly. Here's a fresh minimal log that shows the server failing:
0003187: 10136: General: CMCResourceHelper::GetIsModalPopupShowing: Menu showing
0003203: 10136: General: CMainUIWnd::Resize: Start
0003218: 10136: General: CMainUIWnd::Resize: Finish (15 ms)
0004468: 4320: Database: CDataHolder::Load: Field: Playback Info; Files: 301956; Pointer bytes: 38348; Data bytes: 16440; Elapsed ms: 0.430
0004468: 4320: Encoders: CVideoConverterDX::OpenFile: Start
0004468: 4320: Encoders: CVideoConverterDX::OpenFile: Finish (0 ms)
0004468: 10136: General: CMainUIWnd::Resize: Start
0004484: 10136: General: CMainUIWnd::Resize: Finish (16 ms)
0004515: 10136: General: CMainUIWnd::Resize: Start
0004515: 10136: General: CMainUIWnd::Resize: Finish (0 ms)
0004531: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: Start
0004531: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: UI Mode: -999; Playing: 0
0004531: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: Finish (result: 0) (0 ms)
0004562: 804: Encoders: 0x324 CVideoConverterDX::Thread: Start
0004578: 804: Encoders: CVideoConverterDX::BuildGraph: Start
0004578: 804: Playback: DShowVideoGraph::Render: Start
0004578: 804: Playback: DShowVideoGraph::ConnectSourceAndSplitter: Start
0004593: 804: Playback: DShowVideoGraph::ConnectSourceAndSplitter: Finish (15 ms)
0004593: 804: Playback: CStreamSelectionList::FindStreams: Start
0004593: 804: Playback: CStreamSelectionList::UpdateStreamsList: Start
0004593: 804: Playback: CStreamSelectionList::UpdateStreamsList: Number of streams: 2
0004593: 804: Playback: CStreamSelectionList::UpdateStreamsList: Stream 0, Name V: mpeg2 main, yuv420p, 704x480 [default], Group 0, flag 3, lcid 0x0, hr = 0x0
0004609: 804: Playback: CStreamSelectionList::UpdateStreamsList: Stream 1, Name A: ac3, 48000 Hz, stereo, 192 kb/s [default], Group 1, flag 3, lcid 0x0, hr = 0x0
0004609: 804: Playback: CStreamSelectionList::UpdateStreamsList: Finish (16 ms)
0004609: 804: Playback: CStreamSelectionList::FindStreams: Finish (16 ms)
0004609: 804: Playback: DShowVideoGraph::ConnectDecoders: Start
0004609: 804: Playback: DShowVideoGraph::ConnectAudioDecoder: Start
0004609: 804: Playback: DShowVideoGraph::ConnectAudioDecoder: Added LAV audio decoder: 1554BD6C
0004609: 804: Playback: DShowVideoGraph::ConnectDecoder: Start
0004609: 804: Playback: DShowVideoGraph::ConnectDecoder: Output pin 1: 098F5644; Output pin 2: 00000000; Decoder: 1554BD6C; Media type: Audio
0004609: 804: Playback: DShowVideoGraph::ConnectDecoderPin: Start
0004609: 804: Playback: DShowVideoGraph::ConnectDecoderPin: Success
0004609: 804: Playback: DShowVideoGraph::ConnectDecoderPin: Finish (0 ms)
0004609: 804: Playback: DShowVideoGraph::ConnectDecoder: Finish (0 ms)
0004609: 804: Playback: DShowVideoGraph::ConnectAudioDecoder: Finish (0 ms)
0004609: 804: Playback: DShowVideoGraph::ConnectVideoDecoder: Start
0004609: 804: Playback: CSubtitleEngine::CSubtitleEngine: Start
0004609: 804: Playback: CSubtitleEngine::CSubtitleEngine: Finish (0 ms)
0004609: 804: Playback: DShowVideoGraph::ConnectVideoDecoder: Added LAV video decoder: 133C30D4
0004609: 804: Playback: DShowVideoGraph::ConnectDecoder: Start
0004609: 804: Playback: DShowVideoGraph::ConnectDecoder: Output pin 1: 098F7B74; Output pin 2: 00000000; Decoder: 133C30D4; Media type: Video
0004609: 804: Playback: DShowVideoGraph::ConnectDecoderPin: Start
0004609: 804: Playback: DShowFilterConf::InternalEnableAcceleration: Start
0004703: 804: Playback: DShowFilterConf::InternalEnableAcceleration: Enable DXVA2 Copy Back (result: 1)
0004703: 804: Playback: DShowFilterConf::InternalEnableAcceleration: Finish (94 ms)
0004734: 804: Playback: DShowFilterConf::InternalEnableAcceleration: Start
0004750: 804: Playback: DShowFilterConf::InternalEnableAcceleration: Enable DXVA2 Copy Back (result: 1)
0004750: 804: Playback: DShowFilterConf::InternalEnableAcceleration: Finish (16 ms)
0004750: 804: Playback: DShowVideoGraph::ConnectDecoderPin: Success
0004750: 804: Playback: DShowVideoGraph::ConnectDecoderPin: Finish (141 ms)
0004750: 804: Playback: DShowVideoGraph::ConnectDecoder: Finish (141 ms)
0004750: 804: Playback: DShowVideoGraph::ConnectVideoDecoder: Finish (141 ms)
0004750: 804: Playback: DShowVideoGraph::ConnectDecoders: Finish (141 ms)
0004750: 804: Playback: DShowVideoGraph::RenderForTranscoding: Start
0004750: 804: Encoders: CEncoderFilter::CEncoderFilter: Start
0004750: 804: Encoders: CEncoderFilter::CEncoderFilter: Finish (0 ms)
0004750: 804: Encoders: CFFmpegTranscoder::SetInputVideoFormat: Input Video Format changed to 704x480 (1.333 AR)
0004750: 804: Encoders: CEncoderFilter::Open: Start
0004750: 804: Encoders: CFFmpegTranscoder::Open: Start
0004750: 804: Encoders: CFFmpegTranscoder::CreateOutputFormat: Start
0004750: 804: Encoders: CFFmpegTranscoder::CreateOutputFormat: Finish (0 ms)
0004750: 804: Encoders: CFFmpegTranscoder::CreateVideoStream: Start
0004750: 804: Encoders: CFFmpegTranscoder::AVLog: [mpeg2video @ 1E482520] removing common factors from framerate
0004750: 804: Encoders: CFFmpegTranscoder::AVLog: [mpeg2video @ 1E482520] MPEG1/2 does not support 25000/417 fps
0004750: 804: Encoders: CFFmpegTranscoder::CreateVideoStream: Opening video codec failed
0004750: 804: Encoders: CFFmpegTranscoder::CreateVideoStream: Finish (0 ms)
0004750: 804: Encoders: CFFmpegTranscoder::Open: Creating video stream failed
0004750: 804: Encoders: CFFmpegTranscoder::Open: Finish (0 ms)
0004750: 804: Encoders: CEncoderFilter::Open: Result:
0004750: 804: Encoders: CEncoderFilter::Open: Finish (0 ms)
0004750: 804: Playback: DShowVideoGraph::RenderForTranscoding: Finish (0 ms)
0004750: 804: Playback: DShowVideoGraph::Render: Rendering success: 0
0004750: 804: Playback: DShowVideoGraph::Render: Finish (172 ms)
0004750: 804: Encoders: CVideoConverterDX::BuildGraph: Rendering transcoding graph failed.
0004750: 804: Encoders: CVideoConverterDX::BuildGraph: Finish (172 ms)
0004859: 804: Encoders: CEncoderFilter::~CEncoderFilter: Start
0004859: 804: Encoders: CEncoderFilter::~CEncoderFilter: Finish (0 ms)
0004859: 804: Encoders: CFFmpegTranscoder::~CFFmpegTranscoder: Start
0004859: 804: Encoders: CFFmpegTranscoder::~CFFmpegTranscoder: Closing video stream
0004859: 804: Encoders: CFFmpegTranscoder::~CFFmpegTranscoder: Closing audio stream
0004859: 804: Encoders: CFFmpegTranscoder::~CFFmpegTranscoder: Closing file
0004859: 804: Encoders: CFFmpegTranscoder::~CFFmpegTranscoder: Closing context
0004859: 804: Encoders: CFFmpegTranscoder::~CFFmpegTranscoder: Finish (0 ms)
0004859: 804: Playback: CSubtitleEngineDX::~CSubtitleEngineDX: Start
0004859: 804: Playback: CSubtitleEngineDX::~CSubtitleEngineDX: Finish (0 ms)
0004859: 804: Encoders: 0x324 CVideoConverterDX::Thread: Finish (297 ms)
0004968: 4320: Encoders: MFTranscoder::Shutdown: Start
0004968: 4320: Encoders: MFTranscoder::Shutdown: Finish (0 ms)
0004984: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: Start
0004984: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: UI Mode: -999; Playing: 0
0004984: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: Finish (result: 0) (0 ms)
0006250: 10136: General: CMainUIWnd::Resize: Start
0006250: 10136: General: CMainUIWnd::Resize: Finish (0 ms)
0007171: 10136: TV: CTVRecordingManager::Process: Start
0007171: 10136: TV: CTVRecordingDatabase::GetActions: returning 0 actions
0007171: 10136: TV: CTVRecordingManager::PerformBackgroundTasks: checking program cleanup timer. Last cleanup 0.0416649053087914 hours ago
0007171: 10136: TV: CTVRecordingManager::Process: returning because TV device list has not been initialized, and there are no recording actions
0007171: 10136: TV: CTVRecordingManager::Process: Finish (0 ms)
0007484: 10136: General: CMCResourceHelper::GetIsModalPopupShowing: Menu showing
0008843: 10136: General: CMCResourceHelper::GetIsModalPopupShowing: Menu showing
0010093: 10136: General: CMCResourceHelper::GetIsModalPopupShowing: Main window disabled
0010828: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: Start
0010828: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: UI Mode: -999; Playing: 0
0010828: 10136: General: CMCUICore::SystemPowerManager_UpdateActions: Finish (result: 0) (0 ms)
-
The source file is MPEG-2/AAC, and it plays perfectly on the windows machine. The windows machine also has an internet connection, so I'm not sure what the issue could be. I'll keep experimenting and see if I can find something weird going on.
Also, not sure if this is related, but all attempts to play video in the new panel video player also fail (attempting to use the server as the panel host), so that's consistent with some kind of issue with the server failing to transcode.
I'll check that format tomorrow.
As for Panel, it's not currently doing any transcoding for video.
-
I just did some more testing (see my edit above). The server is just failing to convert anything to MPEG-TS regardless of source, even when doing a local conversion, so it's 100% a server-side issue. I just can't figure out why its failing now all of a sudden.
-
I use transcoding to MPEG-TS on a daily basis from a Windows server (to stream to my bedroom tablet), so its definitely still working in general.
Not sure what could cause this to break.
It seems to be complaining about the framerate in autofps mode, which seems a bit odd. 25000/417, or 59.95 fps. Maybe it should be trying to round the framerates to something more "standard" if that codec is limited to those.
-
Sure, here's a minimal server log reproducing it with a local conversion failure :
I can't find any mpeg or ts files on the server that won't play, but all video files I've tried fail conversion to mpeg-ts for some reason.
-
I use transcoding to MPEG-TS on a daily basis from a Windows server (to stream to my bedroom tablet), so its definitely still working in general.
Not sure what could cause this to break.
It seems to be complaining about the framerate in autofps mode, which seems a bit odd. 25000/417, or 59.95 fps. Maybe it should be trying to round the framerates to something more "standard" if that codec is limited to those.
H264 auto-fps works fine FWIW, it's just mpeg-ts auto-FPS that's borked here. I also noticed that the server has plain MP4 conversion options under convert format, but the client on the fly converstion options don't include MP4 for some reason? Not related to this problem, just noticed and thought it was odd.
-
This particular failure should be fixed in the next build, we'll now match the framerates to the ones supported by the mpeg2 encoder (which in this case was just a small inaccuracy, but I reckon it could also be entirely unsupported).