Jump to content

BDMV folder playback broken in Emby Server 4.9.5.0 – BDMV directory is incorrectly opened as a regular file


Recommended Posts

Posted

Environment

  • Emby Server: 4.9.5.0
  • OS: Linux x64 / Docker
  • Host: UGREEN NAS / Debian-based Linux
  • .NET: 8.0.25
  • Blu-ray Folder Support / BlurayMounter: 1.0.5.0
  • Client: Infuse 8.4.8 on iPad
  • Also reproducible with Emby Web

Problem

BDMV/Blu-ray folder playback used to work normally, but now all BDMV folder movies fail to play.

In Infuse, playback fails with a "no compatible streams" type error.

This does not appear to be a media file, codec, Docker permission, or Infuse decoding issue. Emby correctly detects and analyzes the Blu-ray folder, including the video/audio/subtitle streams, but during actual playback the BDMV folder path appears to be passed to the normal static-file/progressive-streaming path as if the directory itself were a regular media file.

Important: Emby successfully detects the Blu-ray structure

The affected title is correctly detected as a Blu-ray source. Emby is able to obtain the runtime and identify the HEVC 2160p HDR10 video, TrueHD/DTS-HD MA audio and PGS subtitle streams.

Therefore, the BDMV structure itself is being recognized and parsed.

BlurayMounter 1.0.5.0 is also successfully loaded by Emby Server at startup:

 
File /config/plugins/BlurayMounter.dll has version 1.0.5.0
File /app/emby/system/plugins/BlurayMounter.dll has version 1.0.5.0

Loading BlurayMounter, Version=1.0.5.0
from /config/plugins/BlurayMounter.dll

Infuse Direct Play reproduction

When Infuse requests the movie, Emby first processes the PlaybackInfo request:

GetPostedPlaybackInfo request.
IsPlayback: true

Infuse then requests Direct Play/static streaming:

GET /Videos/25368/stream?
MediaSourceId=mediasource_25368
&Static=true

User-Agent=Infuse-Direct/8.4.8
Client="Infuse-Direct"
Device="iPad"
Version="8.4.8"

Emby then attempts to open the movie directory itself as a regular file:

System.UnauthorizedAccessException:
Access to the path
'/data/movies/Transformers Rise of the Beasts 2023 V2 ULTRAHD BluRay 2160p HEVC Atmos TrueHD7.1-sGnb@CHDBits'
is denied.

---> System.IO.IOException:
Permission denied

The stack trace shows the request going through the normal file/static progressive streaming path:

System.IO.FileStream..ctor(...)

Emby.Server.Implementations.IO.ManagedFileSystem.GetFileStream(...)

Emby.Server.Implementations.IO.IOManager.GetResponse(...)

Emby.Server.Implementations.HttpServer.HttpResultFactory.GetContent(...)

Emby.Server.Implementations.HttpServer.HttpResultFactory.GetStaticResult(...)

Emby.Server.MediaEncoding.Api.Progressive.BaseProgressiveStreamingService.ProcessRequest(...)

 

This does not appear to be an actual filesystem permission problem.

The path being passed to FileStream is a directory containing the BDMV structure, not a regular media file.

Emby already has sufficient access to this directory to scan the Blu-ray structure and obtain its media information.

Emby Web reproduction

The same underlying problem is also reproducible using Emby Web.

When Direct Play fails and Emby falls back to transcoding, the generated FFmpeg command uses the Blu-ray movie directory itself as the input:

-i "/data/movies/Transformers Rise of the Beasts 2023 V2 ULTRAHD BluRay 2160p HEVC Atmos TrueHD7.1-sGnb@CHDBits"

FFmpeg then immediately exits with:

/data/movies/Transformers Rise of the Beasts 2023 V2 ULTRAHD BluRay 2160p HEVC Atmos TrueHD7.1-sGnb@CHDBits:
Is a directory

EXIT

This appears to be the same underlying problem as the Infuse failure:

the BDMV directory path is being treated as a normal media file path during playback.

Observed behavior

BDMV folder
    ↓
Blu-ray structure is detected successfully
    ↓
Media streams/metadata are detected successfully
    ↓
PlaybackInfo / MediaSource
    ↓
BDMV directory path is treated as a regular file
    ↓
Infuse Direct Play:
FileStream(directory)
    ↓
UnauthorizedAccessException / Permission denied

OR

Emby Web transcoding:
ffmpeg -i "directory"
    ↓
"Is a directory"
 

Expected behavior

Emby should use the Blu-ray-specific media source / playlist handling provided by BlurayMounter and expose a valid playable Blu-ray media source to the client, rather than passing the BDMV parent directory to the regular static-file or FFmpeg input path.

Actual behavior

Emby appears to retain the Blu-ray directory as the MediaSource path and later treats that path as a normal file during Direct Play/transcoding.

As a result, both Direct Play and the transcoding fallback fail.

Why this appears to be a regression

The same BDMV library previously played correctly.

All BDMV folder titles are now affected rather than only one particular movie.

Regular media files are not affected.

There have also been previous reports of BDMV/Blu-ray Folder Support behavior changing between Emby 4.8.x and 4.9.x.

Steps to reproduce

  • Run Emby Server 4.9.5.0 with Bluray Folder Support 1.0.5.0.
  • Add a normal BDMV/UHD Blu-ray folder to a movie library.
  • Allow Emby to scan the title.
  • Verify that Emby correctly detects runtime, HEVC video, audio tracks and PGS subtitles.
  • Connect Infuse 8.4.8 to Emby.
  • Attempt to Direct Play the BDMV title.
  • Infuse playback fails.
  • Check embyserver.txt.
  • Emby attempts to open the BDMV movie directory through ManagedFileSystem.GetFileStream().
  • Alternatively, attempt playback using Emby Web.
  • FFmpeg receives the movie directory as -i and exits with Is a directory.

Additional troubleshooting already performed

  • BlurayMounter / Blu-ray Folder Support 1.0.5.0 is loaded successfully.
  • The Blu-ray media structure and streams can be analyzed successfully.
  • The problem affects multiple/all BDMV folders.
  • The problem is reproducible independently through Infuse and Emby Web.
  • Reinstalling Blu-ray Folder Support 1.0.5.0 does not resolve the problem.

Could you please check whether there is a regression in BDMV MediaSource / PlaybackInfo / DirectPlay handling in Emby Server 4.9.x, particularly the interaction between the server playback pipeline and BlurayMounter?

It looks like the Blu-ray-specific media source is correctly detected during library/media analysis, but that information is lost or not handled when the source enters the Direct Play / progressive streaming / transcoding pipeline.

ffmpeg-transcode-9f965bc7-27fa-41f3-bba8-0c0105e5012e_1.txt embyserver.txt

Posted

Hello Jar4tt,

** This is an auto reply **

Please wait for someone from staff support or our members to reply to you.

It's recommended to provide more info, as it explain in this thread:


Thank you.

Emby Team

Posted

Hi, yes this has been reported and we are looking into it. I think this is only affecting titles with certain characteristics, but not all.

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...