Jump to content

Streaming sometimes closes/reopens constantly


bfir3

Recommended Posts

@@Luke, great!

Hopefully that'll be the last of it! :)

 

You can already fix it now via a setting under subtitles to make them burn in. Depending on the percentage of your ass/ssa subtitles you are having a problem with, that may or may not be a better way than leaving it to the failure + automatic switch. When we do the automatic switch we kind of go into this safe mode where everything transcodes in order to make sure it plays. The video will already be transcoding due to subtitle burn in but you may see some unnecessary audio transcoding. The setting I mentioned will avoid that but at the cost of making all your ass/ssa subtitles burn in.

Link to comment
Share on other sites

You can already fix it now via a setting under subtitles to make them burn in. Depending on the percentage of your ass/ssa subtitles you are having a problem with, that may or may not be a better way than leaving it to the failure + automatic switch. When we do the automatic switch we kind of go into this safe mode where everything transcodes in order to make sure it plays. The video will already be transcoding due to subtitle burn in but you may see some unnecessary audio transcoding. The setting I mentioned will avoid that but at the cost of making all your ass/ssa subtitles burn in.

 

Thanks!

I assume you're talking about the Skip if the video already contains embedded subtitles option?

 

I'm actually going to look into why the libjass library is saying my subs are malformed in the first place, tackle the problem at the root.

I really don't see how the formatting could be wrong so I suspect a bug in the library.

I'll keep you posted in any case!

Edited by ownerer
Link to comment
Share on other sites

Update in case you're interested:

I figured out what the problem is.

 

This is my subtitle's script info section:

[Script Info]
Title: <untitled>
Original Script: <unknown>
Script Type: v4.00+
Collisions: 0
WrapStyle: 0
PlayResY: 2160
PlayDepth: 32
Timer: 100

Note there is only the "PlayResY" property, no "PlayResX".

 

This is the piece of code (beautified, I didn't bother with the source) from the "libjass" library that throws the malformed error:

if (null !== this.y && (this.f.addAttachment(this.y), this.y = null), this.v === n.ScriptInfo && e !== n.ScriptInfo && this.d.resolve(this.f), e === n.EOF) {
    var t = this.f.properties;
    void 0 === t.resolutionX || void 0 === t.resolutionY ? (this.d.reject("Malformed ASS script."), this._.reject("Malformed ASS script.")) : (this.d.resolve(this.f), this._.resolve(this.f))
}

Note that if either "resolutionX" or "resolutionY" is undefined, the error is thrown.

So it makes sense my subtitles fail, since the "PlayResX" property is missing in the script info section.

 

However, I think the "libjass" library is not following the Substation Alpha specs!

I quote the wiki:

  • PlaResX & PlayResY (useful for graphics and subtitle positioning. If only one present, the other is calculated with real video proportions)

Clearly this library does not calculate the other if only one is present, it just breaks.

 

Straight from matroska.org:

The first, "[script Info]" contains some information about the subtitle file, such as it's title, who created it, type of script and a very important one : "PlayResY". Be carefull of this value, everything in your script (font size, positioning) is scaled by it. Sub Station Alpha uses your desktops Y resolution to write this value, so if a friend with a large monitor and a high screen resolution gives you an edited script, you can mess everything up by saving the script in SSA with your low-cost monitor.

They explicitly talk about "PlayResY", but never about "PlayResX", the examples also never include it.

 

This leads me to conclude that it is in fact a bug in the "libjass" library as they are not respecting the standard.

 

@@Luke, thoughts?

 

Edit: I'm just going to hardcode the calculation based on a 16:9 AR in the javascript file as a temp fix so I can play all my old content without having to force transcoding.

Edited by ownerer
Link to comment
Share on other sites

Had the issue again. Played for 12 minutes then stopped.

 

Here's a snippet from the console:

embyRouter - processing path request /web/itemdetails.html
router.js?v=3.2.19.0.01:1 embyRouter - user is authenticated
router.js?v=3.2.19.0.01:1 embyRouter - proceeding to /web/itemdetails.html
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Users/9bd5a3fc96674233877b5e43b0c0df26/Items/0c3000549fbcd520e983b508f790e808
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Episodes?userId=9bd5a3fc96674233877b5e43b0c0df26&Fields=ItemCounts%2CPrimaryImageAspectRatio%2CBasicSyncInfo%2CCanDelete%2CParentPrimaryImageTag
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/0c3000549fbcd520e983b508f790e808/ThemeMedia?userId=9bd5a3fc96674233877b5e43b0c0df26&InheritFromParent=true
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Seasons?userId=9bd5a3fc96674233877b5e43b0c0df26&AdjacentTo=0c3000549fbcd520e983b508f790e808
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/0c3000549fbcd520e983b508f790e808/ThemeMedia?userId=9bd5a3fc96674233877b5e43b0c0df26&InheritFromParent=true
router.js?v=3.2.19.0.01:1 embyRouter - processing path request /web/itemdetails.html
router.js?v=3.2.19.0.01:1 embyRouter - user is authenticated
router.js?v=3.2.19.0.01:1 embyRouter - proceeding to /web/itemdetails.html
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Users/9bd5a3fc96674233877b5e43b0c0df26/Items/60f0a9014db13bcff9219480a6d4d56f
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Episodes?seasonId=0c3000549fbcd520e983b508f790e808&userId=9bd5a3fc96674233877b5e43b0c0df26&Fields=ItemCounts%2CPrimaryImageAspectRatio%2CBasicSyncInfo%2CCanDelete%2CParentPrimaryImageTag
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/60f0a9014db13bcff9219480a6d4d56f/ThemeMedia?userId=9bd5a3fc96674233877b5e43b0c0df26&InheritFromParent=true
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Episodes?seasonId=0c3000549fbcd520e983b508f790e808&userId=9bd5a3fc96674233877b5e43b0c0df26&AdjacentTo=60f0a9014db13bcff9219480a6d4d56f
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/60f0a9014db13bcff9219480a6d4d56f/ThemeMedia?userId=9bd5a3fc96674233877b5e43b0c0df26&InheritFromParent=true
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Episodes?IsVirtualUnaired=false&IsMissing=false&UserId=9bd5a3fc96674233877b5e43b0c0df26&Fields=MediaSources%2CChapters
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Users/9bd5a3fc96674233877b5e43b0c0df26/Items/60f0a9014db13bcff9219480a6d4d56f/Intros
registrationservices.js?v=3.2.19.0.01:69 validateFeature: playback
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/System/Endpoint
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Playback/BitrateTest?Size=500000
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Playback/BitrateTest?Size=1000000
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Playback/BitrateTest?Size=3000000
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/60f0a9014db13bcff9219480a6d4d56f/PlaybackInfo?UserId=9bd5a3fc96674233877b5e43b0c0df26&StartTimeTicks=0&ForceDirectPlayRemoteMediaSource=true&MaxStreamingBitrate=240000000
plugin.js?v=3.2.19.0.01:1 playing url: http://server/emby/Videos/60f0a9014db13bcff9219480a6d4d56f/stream.mp4?Static=true&mediaSourceId=60f0a9014db13bcff9219480a6d4d56f&deviceId=93b69ccbb2c89455cef1b49c2856d94df192fbb5&api_key=4370fb74926c4fb3a553e91012130639&Tag=00b8df37d1ac7727605a478b2efaa8c6
2plugin.js?v=3.2.19.0.01:1 Setting new text track index to: -1
router.js?v=3.2.19.0.01:1 embyRouter - processing path request /web/videoosd.html
router.js?v=3.2.19.0.01:1 embyRouter - user is authenticated
router.js?v=3.2.19.0.01:1 embyRouter - proceeding to /web/videoosd.html
playbackmanager.js?v=3.2.19.0.01:329 Active player: {"name":"Html Video Player","id":"htmlvideoplayer","playerName":"Html Video Player","playableMediaTypes":[false,true,false,false,false],"isLocalPlayer":true,"supportedCommands":["GoHome","GoToSettings","VolumeUp","VolumeDown","Mute","Unmute","ToggleMute","SetVolume","SetAudioStreamIndex","SetSubtitleStreamIndex","SetMaxStreamingBitrate","DisplayContent","GoToSearch","DisplayMessage","SetRepeatMode","ToggleFullscreen","SetBrightness"]}
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Sessions/Playing
82apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Sessions/Playing/Progress
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Sessions/Playing/Stopped
videoosd.js?v=3.2.19.0.01:281 nowplaying event: playbackstop
router.js?v=3.2.19.0.01:1 embyRouter - processing path request /web/itemdetails.html
router.js?v=3.2.19.0.01:1 embyRouter - user is authenticated
router.js?v=3.2.19.0.01:1 embyRouter - proceeding to /web/itemdetails.html
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Users/9bd5a3fc96674233877b5e43b0c0df26/Items/60f0a9014db13bcff9219480a6d4d56f
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Episodes?seasonId=0c3000549fbcd520e983b508f790e808&userId=9bd5a3fc96674233877b5e43b0c0df26&Fields=ItemCounts%2CPrimaryImageAspectRatio%2CBasicSyncInfo%2CCanDelete%2CParentPrimaryImageTag
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/60f0a9014db13bcff9219480a6d4d56f/ThemeMedia?userId=9bd5a3fc96674233877b5e43b0c0df26&InheritFromParent=true
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Shows/f751983b10070bfb22b6c4b10516e6a5/Episodes?seasonId=0c3000549fbcd520e983b508f790e808&userId=9bd5a3fc96674233877b5e43b0c0df26&AdjacentTo=60f0a9014db13bcff9219480a6d4d56f
apiclient.js?v=3.2.19.0.01:276 Requesting url without automatic networking: http://server/emby/Items/60f0a9014db13bcff9219480a6d4d56f/ThemeMedia?userId=9bd5a3fc96674233877b5e43b0c0df26&InheritFromParent=true

And the log is attached.

server-63638611200.zip

Link to comment
Share on other sites

This is killing me. Two users reported this problem to me today and one said it's affecting him so much that it's not even worth watching movies because they stop and lose progress so often.

 

Please help me troubleshoot this. I'm willing to take whatever action you'd like, I just want to get to the bottom of this issue. Please @@Luke, help me!

Link to comment
Share on other sites

Can you provide a sample video for testing? And you're saying this is always direct play and you're not willing to drop the bitrate a little?

Link to comment
Share on other sites

It is probably worth pointing you to this thread here:

 

https://emby.media/community/index.php?/topic/49927-playback-loads-infinite-loop-web-app

 

His issue is that he was convinced of an Emby problem, however the problem turned out to be the Chrome video player having a problem with one of his files. Not only did the browser have a problem with the file, but it never trigger an error that the web app could respond to, which left no possibility to recover from. Your issue is obviously not the same I understand, I am only bringing it up to point out that sometimes there are problems that happen that aren't in our control.

 

You said earlier it plays fine when ffmpeg is involved, therefore it is in the realm of possibility that there is some client-side playback error that goes away once the server converts the file.

Link to comment
Share on other sites

It's always direct play, I'm not sure if it has occurred while transcoding (but it may have). It's not that I'm not willing to drop the bitrate, it's that this issue exists. I shouldn't need a workaround to watch my content. This issue occurs on any media, and is very inconvenient for a user. I would say more than 50% of the time the issue will occur for any given media playback, and that is a very conservative estimate. I would say it's closer to 70%+ of the time that I encounter the issue when playing a file.

 

I will upload the file that was referenced in the last log I posted. Here is the link: https://drive.google.com/open?id=0BxyqsJJPOYtueGpQM0lnWjBiT3c

 

Let me know if there's any issue with that link.

Link to comment
Share on other sites

I can try other players, but this has occurred across Chrome on several different machines, as well as iPad and iPhone web browsers (non-chrome) and the PS4 browser. I will see if I can reproduce the issue on my end using other players. Thanks for the thought.

Link to comment
Share on other sites

I believe the ones who have reported the issue are using Auto. I can test this file with transcoding to see if I can get the issue to occur. So far I've been running it without transcoding, 3 times now, and all 3 times it has stopped playback. If I can make it through playback 100% without the issue like 5 times, I'll say transcoding is fine.

Link to comment
Share on other sites

Transcoding enabled, just made it through the entire episode without playback issues. Continuing to test this about 4 more times to see if I can encounter the issue. If not, I will try without transcoding right after just for argument's sake. After that, I will attempt a different browser or playback device.

 

edit1: One time successful while transcoding.

edit2: Two times successful while transcoding.

edit3: Three times successful while transcoding.

edit4: Four times successful while transcoding.

Edited by bfir3
Link to comment
Share on other sites

It is possible that Auto is choosing a bitrate that might be too high for the connection, and thus a drop is occurring causing playback to stop.

Link to comment
Share on other sites

That would be an interesting bug. Do you know which update would have introduced this? Just wondering if I could roll back until a fix is made if this is the issue. 

 

By the way, I ran it 5 times with transcoding without issues. Running it without transcoding now.

Edited by bfir3
Link to comment
Share on other sites

We haven't changed the algorithm in a long time, it's just something is subject to fluctuate based on network conditions at the exact moment that we perform the tests. It's just always been that way.

Link to comment
Share on other sites

And it just happened again on my very first attempt with no transcoding. I don't know if it's worth noting that this has been happening at around 16 minutes for all of these tests.

Edited by bfir3
Link to comment
Share on other sites

It's always direct play, I'm not sure if it has occurred while transcoding (but it may have). It's not that I'm not willing to drop the bitrate, it's that this issue exists. I shouldn't need a workaround to watch my content. This issue occurs on any media, and is very inconvenient for a user. I would say more than 50% of the time the issue will occur for any given media playback, and that is a very conservative estimate. I would say it's closer to 70%+ of the time that I encounter the issue when playing a file.

 

I will upload the file that was referenced in the last log I posted. Here is the link: https://drive.google.com/open?id=0BxyqsJJPOYtueGpQM0lnWjBiT3c

 

Let me know if there's any issue with that link.

 

From where did you play this file with no transcoding?

Link to comment
Share on other sites

From where did you play this file with no transcoding?

 

I've been using the Chrome browser. I'm on my PC running Windows 7. I am on the same local network as the server. I'm using the default web client, not the app.emby.media or the tv.emby.media.

Edited by bfir3
Link to comment
Share on other sites

Ok because chrome does not support ac3 audio so it could not have direct played. did you verify the problem occurred with the sample? I just played the full 34 seconds without any problems.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...