Comments (8)
I had the same problem.
The following patch (based on 10.8.10) resolve the issue. Didn't noticed any side effect.
--- a/Jellyfin.Api/Helpers/StreamingHelpers.cs
+++ b/Jellyfin.Api/Helpers/StreamingHelpers.cs
@@ -240,9 +240,20 @@ namespace Jellyfin.Api.Helpers
ApplyDeviceProfileSettings(state, dlnaManager, deviceManager, httpRequest, streamingRequest.DeviceProfileId, streamingRequest.Static);
var ext = string.IsNullOrWhiteSpace(state.OutputContainer)
? GetOutputFileExtension(state, mediaSource)
: ("." + state.OutputContainer);
+ ext = ext.AsSpan().LeftPart('?').ToString();
state.OutputFilePath = GetOutputFilePath(state, ext!, serverConfigurationManager, streamingRequest.DeviceId, streamingRequest.PlaySessionId);
from jellyfin-plugin-dlna.
@Reno4212 could you submit a PR with your patch please ?
from jellyfin-plugin-dlna.
Will the solution be integrated?
from jellyfin-plugin-dlna.
This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.
from jellyfin-plugin-dlna.
Same problem for me
Logs
[2023-05-06 05:40:22.284 +00:00] [INF] [21] Jellyfin.Api.Helpers.TranscodingJobHelper: "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 200M -fflags +genpts -f matroska,webm -i file:\"/sharefolder/Public/Serie/Solar Opposites/Saison 1/Solar.Opposites.S01E05.FRENCH.720p.WEB.H264-STRINGERBELL.mkv\" -map 0:0 -map 0:1 -map -0:s -codec:v:0 copy -map_metadata -1 -map_chapters -1 -threads 0 -codec:a:0 copy -y \"/config/transcodes/f7f696d28ccded902b2fc5b775f359ab.mkv?deviceprofileid=5810f6c1a0594936a7636665882ed623&deviceid=test&mediasourceid=b7552b46b77fc58be9d2cf26d3ece5b9&static=true&videocodec=h264&audiocodec=eac3&audiostreamindex=1&subtitlestreamindex=2&subtitlemethod=embed&tag=1c308a847125a59cfe227efcd40e1969&dlnaheaders=true\""
[2023-05-06 05:40:22.451 +00:00] [ERR] [26] Jellyfin.Api.Helpers.TranscodingJobHelper: FFmpeg exited with code 1
[2023-05-06 05:40:22.543 +00:00] [ERR] [26] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request. URL "GET" "/videos/b7552b46-b77f-c58b-e9d2-cf26d3ece5b9/stream.mkv%3FDeviceProfileId=5810f6c1a0594936a7636665882ed623&DeviceId=test&MediaSourceId=b7552b46b77fc58be9d2cf26d3ece5b9&Static=true&VideoCodec=h264&AudioCodec=eac3&AudioStreamIndex=1&SubtitleStreamIndex=2&SubtitleMethod=Embed&Tag=1c308a847125a59cfe227efcd40e1969&dlnaheaders=true".
MediaBrowser.Common.FfmpegException: FFmpeg exited with code 1
at Jellyfin.Api.Helpers.TranscodingJobHelper.StartFfMpeg(StreamState state, String outputPath, String commandLineArguments, HttpRequest request, TranscodingJobType transcodingJobType, CancellationTokenSource cancellationTokenSource, String workingDirectory)
at Jellyfin.Api.Helpers.FileStreamResponseHelpers.GetTranscodedFile(StreamState state, Boolean isHeadRequest, HttpContext httpContext, TranscodingJobHelper transcodingJobHelper, String ffmpegCommandLineArguments, TranscodingJobType transcodingJobType, CancellationTokenSource cancellationTokenSource)
at Jellyfin.Api.Controllers.VideosController.GetVideoStream(Guid itemId, String container, Nullable`1 static, String params, String tag, String deviceProfileId, String playSessionId, String segmentContainer, Nullable`1 segmentLength, Nullable`1 minSegments, String mediaSourceId, String deviceId, String audioCodec, Nullable`1 enableAutoStreamCopy, Nullable`1 allowVideoStreamCopy, Nullable`1 allowAudioStreamCopy, Nullable`1 breakOnNonKeyFrames, Nullable`1 audioSampleRate, Nullable`1 maxAudioBitDepth, Nullable`1 audioBitRate, Nullable`1 audioChannels, Nullable`1 maxAudioChannels, String profile, String level, Nullable`1 framerate, Nullable`1 maxFramerate, Nullable`1 copyTimestamps, Nullable`1 startTimeTicks, Nullable`1 width, Nullable`1 height, Nullable`1 maxWidth, Nullable`1 maxHeight, Nullable`1 videoBitRate, Nullable`1 subtitleStreamIndex, Nullable`1 subtitleMethod, Nullable`1 maxRefFrames, Nullable`1 maxVideoBitDepth, Nullable`1 requireAvc, Nullable`1 deInterlace, Nullable`1 requireNonAnamorphic, Nullable`1 transcodingMaxAudioChannels, Nullable`1 cpuCoreLimit, String liveStreamId, Nullable`1 enableMpegtsM2TsMode, String videoCodec, String subtitleCodec, String transcodeReasons, Nullable`1 audioStreamIndex, Nullable`1 videoStreamIndex, Nullable`1 context, Dictionary`2 streamOptions)
at lambda_method1704(Closure , Object )
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
at Jellyfin.Server.Middleware.ServerStartupMessageMiddleware.Invoke(HttpContext httpContext, IServerApplicationHost serverApplicationHost, ILocalizationManager localizationManager)
at Jellyfin.Server.Middleware.WebSocketHandlerMiddleware.Invoke(HttpContext httpContext, IWebSocketManager webSocketManager)
at Jellyfin.Server.Middleware.IpBasedAccessValidationMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager)
at Jellyfin.Server.Middleware.LanFilteringMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager, IServerConfigurationManager serverConfigurationManager)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Jellyfin.Server.Middleware.QueryStringDecodingMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.ReDoc.ReDocMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Jellyfin.Server.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
at Jellyfin.Server.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
at Jellyfin.Server.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
at Jellyfin.Server.Middleware.ExceptionMiddleware.Invoke(HttpContext context)
FFmpeg Logs
/videos/b7552b46-b77f-c58b-e9d2-cf26d3ece5b9/stream.mkv%3FDeviceProfileId=5810f6c1a0594936a7636665882ed623&DeviceId=test&MediaSourceId=b7552b46b77fc58be9d2cf26d3ece5b9&Static=true&VideoCodec=h264&AudioCodec=eac3&AudioStreamIndex=1&SubtitleStreamIndex=2&SubtitleMethod=Embed&Tag=1c308a847125a59cfe227efcd40e1969&dlnaheaders=true
{"Protocol":0,"Id":"b7552b46b77fc58be9d2cf26d3ece5b9","Path":"/sharefolder/Public/Serie/Solar Opposites/Saison 1/Solar.Opposites.S01E05.FRENCH.720p.WEB.H264-STRINGERBELL.mkv","EncoderPath":null,"EncoderProtocol":null,"Type":0,"Container":"mkv,webm","Size":497165395,"Name":"Solar.Opposites.S01E05.FRENCH.720p.WEB.H264-STRINGERBELL","IsRemote":false,"ETag":"1c308a847125a59cfe227efcd40e1969","RunTimeTicks":13610239999,"ReadAtNativeFramerate":false,"IgnoreDts":false,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"RequiresOpening":false,"OpenToken":null,"RequiresClosing":false,"LiveStreamId":null,"BufferMs":null,"RequiresLooping":false,"SupportsProbing":true,"VideoType":0,"IsoType":null,"Video3DFormat":null,"MediaStreams":[{"Codec":"h264","CodecTag":null,"Language":null,"ColorRange":null,"ColorSpace":"bt709","ColorTransfer":"bt709","ColorPrimaries":"bt709","DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":null,"VideoRange":"SDR","VideoRangeType":"SDR","VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"720p H264 SDR","NalLengthSize":"4","IsInterlaced":false,"IsAVC":true,"ChannelLayout":null,"BitRate":2922302,"BitDepth":8,"RefFrames":1,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":true,"IsForced":false,"Height":720,"Width":1280,"AverageFrameRate":23.976025,"RealFrameRate":23.976025,"Profile":"High","Type":1,"AspectRatio":"16:9","Index":0,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":"yuv420p","Level":31,"IsAnamorphic":null},{"Codec":"eac3","CodecTag":null,"Language":"fre","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":"French","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"French - Dolby Digital\u002B - 5.1 - Default","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":"5.1","BitRate":256000,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":6,"SampleRate":48000,"IsDefault":true,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":null,"Type":0,"AspectRatio":null,"Index":1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null},{"Codec":"subrip","CodecTag":null,"Language":"fre","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":"French (Forced)","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":"Non d\u00E9fini","LocalizedDefault":"Par d\u00E9faut","LocalizedForced":"Forc\u00E9","LocalizedExternal":"External","DisplayTitle":"French (Forced) - Par d\u00E9faut - Forc\u00E9 - SUBRIP","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":null,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":true,"IsForced":true,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":null,"Type":2,"AspectRatio":null,"Index":2,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":true,"SupportsExternalStream":true,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null},{"Codec":"subrip","CodecTag":null,"Language":"fre","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":"French","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":"Non d\u00E9fini","LocalizedDefault":"Par d\u00E9faut","LocalizedForced":"Forc\u00E9","LocalizedExternal":"External","DisplayTitle":"French - SUBRIP","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":null,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":false,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":null,"Type":2,"AspectRatio":null,"Index":3,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":true,"SupportsExternalStream":true,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null},{"Codec":"subrip","CodecTag":null,"Language":"eng","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":"English (SDH)","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":"Non d\u00E9fini","LocalizedDefault":"Par d\u00E9faut","LocalizedForced":"Forc\u00E9","LocalizedExternal":"External","DisplayTitle":"English (SDH) - SUBRIP","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":null,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":false,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":null,"Type":2,"AspectRatio":null,"Index":4,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":true,"SupportsExternalStream":true,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null}],"MediaAttachments":[],"Formats":[],"Bitrate":3178302,"Timestamp":null,"RequiredHttpHeaders":{},"TranscodingUrl":null,"TranscodingSubProtocol":null,"TranscodingContainer":null,"AnalyzeDurationMs":null,"DefaultAudioStreamIndex":null,"DefaultSubtitleStreamIndex":null}
/usr/lib/jellyfin-ffmpeg/ffmpeg -analyzeduration 200M -fflags +genpts -f matroska,webm -i file:"/sharefolder/Public/Serie/Solar Opposites/Saison 1/Solar.Opposites.S01E05.FRENCH.720p.WEB.H264-STRINGERBELL.mkv" -map 0:0 -map 0:1 -map -0:s -codec:v:0 copy -map_metadata -1 -map_chapters -1 -threads 0 -codec:a:0 copy -y "/config/transcodes/f7f696d28ccded902b2fc5b775f359ab.mkv?deviceprofileid=5810f6c1a0594936a7636665882ed623&deviceid=test&mediasourceid=b7552b46b77fc58be9d2cf26d3ece5b9&static=true&videocodec=h264&audiocodec=eac3&audiostreamindex=1&subtitlestreamindex=2&subtitlemethod=embed&tag=1c308a847125a59cfe227efcd40e1969&dlnaheaders=true"
ffmpeg version 5.1.3-Jellyfin Copyright (c) 2000-2022 the FFmpeg developers
built with gcc 10 (Debian 10.2.1-6)
configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-libs=-lfftw3f --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-static --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-shared --enable-gmp --enable-gnutls --enable-chromaprint --enable-libdrm --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libopenmpt --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=amd64 --enable-libsvtav1 --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libmfx --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
libavutil 57. 28.100 / 57. 28.100
libavcodec 59. 37.100 / 59. 37.100
libavformat 59. 27.100 / 59. 27.100
libavdevice 59. 7.100 / 59. 7.100
libavfilter 8. 44.100 / 8. 44.100
libswscale 6. 7.100 / 6. 7.100
libswresample 4. 7.100 / 4. 7.100
libpostproc 56. 6.100 / 56. 6.100
Input #0, matroska,webm, from 'file:/sharefolder/Public/Serie/Solar Opposites/Saison 1/Solar.Opposites.S01E05.FRENCH.720p.WEB.H264-STRINGERBELL.mkv':
Metadata:
encoder : libebml v1.4.2 + libmatroska v1.6.4
creation_time : 2021-03-12T12:23:24.000000Z
Duration: 00:22:41.02, start: 0.000000, bitrate: 2922 kb/s
Stream #0:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn (default)
Metadata:
BPS-eng : 2664755
DURATION-eng : 00:22:40.651000000
NUMBER_OF_FRAMES-eng: 32623
NUMBER_OF_BYTES-eng: 453225240
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-03-12 12:23:24
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:1(fre): Audio: eac3, 48000 Hz, 5.1(side), fltp, 256 kb/s (default)
Metadata:
title : French
BPS-eng : 256000
DURATION-eng : 00:22:41.024000000
NUMBER_OF_FRAMES-eng: 42532
NUMBER_OF_BYTES-eng: 43552768
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-03-12 12:23:24
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:2(fre): Subtitle: subrip (default) (forced)
Metadata:
title : French (Forced)
BPS-eng : 3
DURATION-eng : 00:21:33.500000000
NUMBER_OF_FRAMES-eng: 22
NUMBER_OF_BYTES-eng: 517
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-03-12 12:23:24
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:3(fre): Subtitle: subrip
Metadata:
title : French
BPS-eng : 120
DURATION-eng : 00:21:33.500000000
NUMBER_OF_FRAMES-eng: 470
NUMBER_OF_BYTES-eng: 19495
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-03-12 12:23:24
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:4(eng): Subtitle: subrip
Metadata:
title : English (SDH)
BPS-eng : 134
DURATION-eng : 00:21:28.955000000
NUMBER_OF_FRAMES-eng: 524
NUMBER_OF_BYTES-eng: 21647
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-03-12 12:23:24
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
[NULL @ 0x55b95268d980] Unable to find a suitable output format for '/config/transcodes/f7f696d28ccded902b2fc5b775f359ab.mkv?deviceprofileid=5810f6c1a0594936a7636665882ed623&deviceid=test&mediasourceid=b7552b46b77fc58be9d2cf26d3ece5b9&static=true&videocodec=h264&audiocodec=eac3&audiostreamindex=1&subtitlestreamindex=2&subtitlemethod=embed&tag=1c308a847125a59cfe227efcd40e1969&dlnaheaders=true'
/config/transcodes/f7f696d28ccded902b2fc5b775f359ab.mkv?deviceprofileid=5810f6c1a0594936a7636665882ed623&deviceid=test&mediasourceid=b7552b46b77fc58be9d2cf26d3ece5b9&static=true&videocodec=h264&audiocodec=eac3&audiostreamindex=1&subtitlestreamindex=2&subtitlemethod=embed&tag=1c308a847125a59cfe227efcd40e1969&dlnaheaders=true: Invalid argument
Server System (please complete the following information):
OS: Docker container : NAS Asustor
Jellyfin Version: 10.8.10
Client System (please complete the following information):
Device: Orange TV decoder
[Website]( - https://assistance.orange.fr/equipement/tv/decodeur-tv-uhd-sagemcom)
from jellyfin-plugin-dlna.
Hi,
Same here, I'm wondering if output path is intended
/config/data/transcodes/24490dceefadd431b6363dd415fa2166.avi?deviceprofileid=ee85865999fa41798528994a73646564&deviceid=test&mediasourceid=b72a45c
d1c1eced065db27fa88f33d94&static=true&videocodec=mpeg4&audiocodec=mp3&audiostreamindex=1&tag=ba11705917e0a414525bf8bc820b9a2c&dlnaheaders=true
Parameters seems inherited from xml sent by jellyfin:
<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item restricted="1" id="b72a45cd1c1eced065db27fa88f33d94" parentID="movies_f137a2dd21bbc1b99aa5c0f6bf02a805"><dc:title>blablabla</dc:title><upnp:class>object.item.videoItem.movie</upnp:class><dc:date>2002-02-19</dc:date><upnp:genre>Familial</upnp:genre><upnp:genre>Comédie</upnp:genre><upnp:publisher>Soyouz Films</upnp:publisher><upnp:publisher>StudioCanal</upnp:publisher><upnp:publisher>Canal+</upnp:publisher><upnp:publisher>Ciné+</upnp:publisher><dc:description>blablabla</dc:description><upnp:actor>blablabla</upnp:actor><upnp:actor>blablabla</upnp:actor><upnp:actor>blablabla</upnp:actor><upnp:actor>blablabla</upnp:actor><upnp:actor>blablabla</upnp:actor><upnp:actor>blablabla</upnp:actor><res duration="01:37:49.6155136" size="728963776" nrAudioChannels="2" resolution="720x304" sampleFrequency="48000" bitrate="987686" protocolInfo="http-get:*:video/x-msvideo:DLNA.ORG_PN=AVI;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=21D00000000000000000000000000000">http://192.168.1.5:8096/videos/b72a45cd-1c1e-ced0-65db-27fa88f33d94/stream.avi?DeviceProfileId=278eacb7caa14b249e044c312f41ed25&amp;DeviceId=test&amp;MediaSourceId=b72a45cd1c1eced065db27fa88f33d94&amp;Static=true&amp;VideoCodec=mpeg4&amp;AudioCodec=mp3&amp;AudioStreamIndex=1&amp;Tag=ba11705917e0a414525bf8bc820b9a2c&amp;dlnaheaders=true</res><upnp:albumArtURI...
Compared to minidlna:
<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/">
<item id="2$15$0$0$0" parentID="2$15$0$0" restricted="1" refID="64$0$0$0"><dc:title>blablabla</dc:title><upnp:class>object.item.videoItem</upnp:class><dc:creator>DiVX</dc:creator><dc:date>2023-05-10T18:05:33</dc:date><res size="728963746" duration="1:37:49.615" bitrate="124192" sampleFrequency="48000" nrAudioChannels="2" resolution="720x304" protocolInfo="http-get:*:video/avi:DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000">http://192.168.1.5:8200/MediaItems/23.avi</res></item></DIDL-Lite>
Why jellyfin add ?DeviceProfileId=278eacb7caa14b249e044c312f41ed25&amp;DeviceId=test&amp;MediaSourceId=b72a45cd1c1eced065db27fa88f33d94&amp;Static=true&amp;VideoCodec=mpeg4&amp;AudioCodec=mp3&amp;AudioStreamIndex=1&amp;Tag=ba11705917e0a414525bf8bc820b9a2c&amp;dlnaheaders=true
to media url ?
Best regards
from jellyfin-plugin-dlna.
Interesting, here is 2 GET:
VLC (working)
/videos/b72a45cd-1c1e-ced0-65db-27fa88f33d94/stream.avi?DeviceProfileId=7d342edc68304269831647a23b6785cd&DeviceId=test&MediaSourceId=b72a45cd1c1eced065db27fa88f33d94&Static=true&VideoCodec=mpeg4&AudioCodec=mp3&AudioStreamIndex=1&Tag=ba11705917e0a414525bf8bc820b9a2c&dlnaheaders=true
TV Decoder (doesn't work)
/videos/b72a45cd-1c1e-ced0-65db-27fa88f33d94/stream.avi%3FDeviceProfileId%3D278eacb7caa14b249e044c312f41ed25%26DeviceId%3Dtest%26MediaSourceId%3Db72a45cd1c1eced065db27fa88f33d94%26Static%3Dtrue%26VideoCodec%3Dmpeg4%26AudioCodec%3Dmp3%26AudioStreamIndex%3D1%26Tag%3Dba11705917e0a414525bf8bc820b9a2c%26dlnaheaders%3Dtrue
TV decoder is encoding url parameters. Is Jellyfin able to decode encoded url ?
from jellyfin-plugin-dlna.
Hi,
Same here, I try to create a dlna profile with this option:
I expect a DIDL with object.item.videoItem instead of object.item.videoItem.movie. Wrong class is used:
"<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/\" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/\">SOAP-ENV:Body<u:BrowseResponse xmlns:u="urn:schemas-upnp-org:service:ContentDirectory:1"><DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/\" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item restricted="1" id="b72a45cd1c1eced065db27fa88f33d94" parentID="movies_f137a2dd21bbc1b99aa5c0f6bf02a805"><dc:title>xxx</dc:title><upnp:class>object.item.videoItem.movie</upnp:class><dc:date>2020-02-19</dc:date><upnp:genre>Familial</upnp:genre><upnp:genre>Comédie</upnp:genre><...<res duration="01:37:49.6155136" size="728963776" nrAudioChannels="2" resolution="720x304" sampleFrequency="48000" bitrate="987686" protocolInfo="http-get:*:video/x-msvideo:DLNA.ORG_PN=AVI;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=21D00000000000000000000000000000">http://192.168.1.5:8096/videos/b72a45cd-1c1e-ced0-65db-27fa88f33d94/stream.avi?DeviceProfileId=d9373277a1cc489c9a867c33f3b73a09&amp;DeviceId=test&amp;MediaSourceId=b72a45cd1c1eced065db27fa88f33d94&amp;Static=true&amp;VideoCodec=mpeg4&amp;AudioCodec=mp3&amp;AudioStreamIndex=1&amp;Tag=ba11705917e0a414525bf8bc820b9a2c&amp;dlnaheaders=true</res><upnp:albumArtURI dlna:profileID="JPEG_SM">http://192.168.1.5:8096/Items/b72a45cd1c1eced065db27fa88f33d94/Images/Primary/0/03e271afe3db1f00fd877a9518730918/jpg/480/480/0/0</upnp:albumArtURI><upnp:icon>http://192.168.1.5:8096/Items/b72a45cd1c1eced065db27fa88f33d94/Images/Primary/0/03e271afe3db1f00fd877a9518730918/jpg/48/48/0/0</upnp:icon></item><item restricted="1" id="e704208811420e0b767253e6406931f5" parentID="movies_f137a2dd21bbc1b99aa5c0f6bf02a805"><
My profile is applied to my device:
[2023-05-28 22:22:52.417 +02:00] [DBG] [25] Emby.Dlna.Main.DlnaEntryPoint: Attempting to create PlayToController from location http://192.168.1.193:42300/description.xml
[2023-05-28 22:22:52.568 +02:00] [DBG] [51] Emby.Dlna.Main.DlnaEntryPoint: Dlna Device.Start
[2023-05-28 22:22:52.581 +02:00] [DBG] [51] Emby.Dlna.DlnaManager: Found matching device profile: "Décodeur TV UHD"
[2023-05-28 22:22:52.584 +02:00] [INF] [51] Emby.Dlna.Main.DlnaEntryPoint: DLNA Session created for "Décodeur TV UHD" - "SoftAtHome Media Renderer"
I see an error on GetCurrentConnectionIDs reception:
[2023-05-28 22:23:03.814 +02:00] [DBG] [99] Emby.Dlna.ConnectionManager.ConnectionManagerService: Received control request "GetCurrentConnectionIDs", params: []
[2023-05-28 22:23:03.816 +02:00] [ERR] [99] Emby.Dlna.ConnectionManager.ConnectionManagerService: Error processing control request
MediaBrowser.Common.Extensions.ResourceNotFoundException: Unexpected control request name: GetCurrentConnectionIDs
at Emby.Dlna.ConnectionManager.ControlHandler.WriteResult(String methodName, IReadOnlyDictionary`2 methodParams, XmlWriter xmlWriter)
at Emby.Dlna.Service.BaseControlHandler.CreateControlResponse(ControlRequestInfo requestInfo)
at Emby.Dlna.Service.BaseControlHandler.ProcessControlRequestInternalAsync(ControlRequest request)
at Emby.Dlna.Service.BaseControlHandler.ProcessControlRequestAsync(ControlRequest request)
On movie listing:
[2023-05-28 22:23:25.437 +02:00] [DBG] [84] Emby.Dlna.ContentDirectory.ContentDirectoryService: Received control request "Browse", params: [("ObjectID": "movies_f137a2dd21bbc1b99aa5c0f6bf02a805"), ("BrowseFlag": "BrowseDirectChildren"), ("Filter": "*"), ("StartingIndex": "0"), ("RequestedCount": "20"), ("SortCriteria": "+upnp:class,+dc:title")]
[2023-05-28 22:23:25.749 +02:00] [DBG] [84] Emby.Dlna.ContentDirectory.ContentDirectoryService: Profile: "Generic Device", Path: "/data/movies/xxx.avi", isEligibleForDirectPlay: True, isEligibleForDirectStream: True
[2023-05-28 22:23:25.925 +02:00] [DBG] [84] Emby.Dlna.ContentDirectory.ContentDirectoryService: DirectPlay Result for Profile: "Generic Device", Path: "/data/movies/xxx.avi", PlayMethod: DirectPlay, AudioStreamIndex: 1, SubtitleStreamIndex: null, Reasons: 0
[2023-05-28 22:23:26.039 +02:00] [INF] [84] Emby.Dlna.ContentDirectory.ContentDirectoryService: StreamBuilder.BuildVideoItem( Profile="Generic Device", Path="/data/movies/xxx.avi", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "media:/videos/b72a45cd-1c1e-ced0-65db-27fa88f33d94/stream.avi?MediaSourceId=b72a45cd1c1eced065db27fa88f33d94&Static=true&VideoCodec=mpeg4&AudioCodec=mp3&AudioStreamIndex=1&api_key=&Tag=ba11705917e0a414525bf8bc820b9a2c"
[2023-05-28 22:23:26.140 +02:00] [DBG] [84] Emby.Dlna.ContentDirectory.ContentDirectoryService: Profile: "Generic Device", Path: "/data/movies/xxx.avi", isEligibleForDirectPlay: True, isEligibleForDirectStream: True
from jellyfin-plugin-dlna.
Related Issues (20)
- [Issue]: DLNA no longer works HOT 9
- [Issue]: Nothing plays on 10.8 dlna on old TV HOT 2
- [Issue]: Multi Part Movies are not supportted in DLNA server HOT 5
- No external subtitles (.srt) on 10.8.0 using DLNA Samsung j5200 HOT 11
- [Issue]: Can't DLNA on SONY KDL-40WE663 HOT 12
- [Issue]: DLNA server chooses not to transcode even though AudioCodecNotSupported HOT 10
- [Issue]: DLNA Play To 404 on client that works with Universal Media Server HOT 5
- DLNA Play On remote is broken for Bose Soundtouch 300 HOT 7
- [issue]: Media seeking not possible in some cases over DLNA HOT 11
- DLNA will not transcode audio HOT 3
- [Issue]: Samsung TV (pre-Tizen, DLNA only) is not showing subtitles from Jellyfin 10.8.11 HOT 6
- [Issue]: DLNA service / announcement seems to not like bind-address being configured HOT 3
- Additional logging for DLNA device info before matching with a profile HOT 1
- [Issue]: Can't play album (Compilation, Various Artists) on DLNA HOT 1
- [Issue]: Not all file shows. HOT 6
- LG OLED C9 (2019) - File works via USB playback but not via DLNA playback HOT 2
- PS4 Media Player does not list files with uncompatible video or audio format HOT 2
- [Issue]: Jellyfin requesting 404 resources causing play-to feature to fail HOT 2
- Support search functionality in DLNA browser HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jellyfin-plugin-dlna.