Closed ChickenSupreme closed 1 year ago
I did some more testing today and this is still a problem with Firefox 90.0.2 and Jellyfin 10.7.6. I also tested with Chromium 90.0.4430.85 and had the same issue except the stall point was at 4m20s instead. It seems like the buffer is a different size in different browsers.
I also noticed that it was more intermittent this time around. Some files would work at first then stop working later then start working again, as long as I switched tracks between playbacks.
I think the bufferFullError is a red herring and that the relevant message in the first screenshot is actually the "FFmpeg audio error:-1313558101" which according to a google search is a generic unknown error. There's something wrong with the audio data being streamed to the browser which is causing it to fail to decode it.
I grabbed all the *.ts files out of the transcode directory during a failed playback and was able to play each one in a standalone player back to back. I also ran ffprobe on each of them and didn't get any errors so I don't think there's anything wrong with the transcode itself.
My best guess is that the audio data is sometimes getting corrupted when appending to a previously full buffer but I'm not sure how to troubleshoot further from here.
I wanted to try to compare the browser's buffered audio data with the transcoded *.ts files but I don't know how to get the browser to dump the buffer. In the meantime I captured this log from the Chromium media console when the issue occurs:
For anyone else who comes across this in the future I gave up and just converted all my AIFF's to FLAC. Turns out Firefox natively supports FLAC so now there's no transcoding and no problem. As an upside I get higher quality audio as well!
Has anyone tested this on unstable recently? I believe there was a change merged that increases the buffer size.
Getting this with video files (ripped straight from CD with makemkv, direct playback video, AAC transcoded audio) on Chromium (well, Vivaldi). This is on Jellyfin 10.7.7. Haven't tried the 10.8 alpha yet.
Vivaldi | 4.4.2490.3 (Official Build) snapshot (64-bit)
OS | Linux
JavaScript | V8 9.6.180.12
User Agent | Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.51 Safari/537.36
Happened with a couple files already, but this was the first time I saw the error because there's nothing in the Terminal jellyfin is running in. On the server side it looks like the stream is still running. The is the end of the log:
[05:22:46] [INF] [55] Jellyfin.Api.Helpers.TranscodingJobHelper: /usr/bin/ffmpeg -fflags +genpts -f matroska,webm -i file:"/home/tarulia/Videos/TV Shows/House MD/Season 1/S01E22.mkv" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 copy -start_at_zero -vsync -1 -codec:a:0 aac -ac 6 -ab 640000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 6 -hls_segment_type mpegts -start_number 0 -hls_segment_filename "/home/tarulia/.local/share/jellyfin/transcodes/2736478714312c5199628114b0489e8d%d.ts" -hls_playlist_type vod -hls_list_size 0 -y "/home/tarulia/.local/share/jellyfin/transcodes/2736478714312c5199628114b0489e8d.m3u8"
[05:22:47] [INF] [55] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: Starting User Changes Sync...
[05:22:47] [INF] [55] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: "USERSYNC" User 1fddb11a788c450a9e0e247866ad63d5(Tarulia) posted 2 Updates: fb691fca5b42e0c25b7e24cab2168d12,73551cb8e8974cbceb22c855f311c430
[05:22:47] [INF] [55] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: User Changes Sync Finished Taking 00:00:00.0430824
[05:22:47] [WRN] [114] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://localhost:8096/videos/2efe962e-9545-7c8f-b1d8-dde4cae3b40c/hls1/main/0.ts?DeviceId=TW96aWxsYS81LjAgKFgxMTsgTGludXggeDg2XzY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTIuMC40NTE1Ljc2IFNhZmFyaS81MzcuMzZ8MTYyNzI2NDU5MzkzNw11&MediaSourceId=2efe962e95457c8fb1d8dde4cae3b40c&VideoCodec=h264&AudioCodec=aac,mp3&AudioStreamIndex=1&VideoBitrate=139360000&AudioBitrate=640000&PlaySessionId=a942c75242984b7fbfb572e0a6f1c740&api_key=fa5719ea36d648de803efac7dffaeddf&TranscodingMaxAudioChannels=6&RequireAvc=false&Tag=09d848cbaa4a67b6470619a8edff7023&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=True&h264-profile=high,main,baseline,constrainedbaseline,high10&h264-level=51&h264-deinterlace=true&TranscodeReasons=VideoCodecNotSupported,AudioCodecNotSupported to 127.0.0.1 in 0:00:00.8003417 with Status Code 200
[05:22:48] [INF] [64] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: Starting User Changes Sync...
[05:22:48] [INF] [64] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: "USERSYNC" User 1fddb11a788c450a9e0e247866ad63d5(Tarulia) posted 2 Updates: 2efe962e95457c8fb1d8dde4cae3b40c,73551cb8e8974cbceb22c855f311c430
[05:22:48] [INF] [64] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: User Changes Sync Finished Taking 00:00:00.0115071
[05:22:49] [INF] [60] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app Jellyfin Web 10.7.6 playing Three Stories. Stopped at 2643093 ms
[05:22:49] [WRN] [60] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://localhost:8096/Sessions/Playing/Stopped to 127.0.0.1 in 0:00:02.3699694 with Status Code 204
[05:22:49] [INF] [64] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: Starting User Changes Sync...
[05:22:49] [INF] [64] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: "USERSYNC" User 1fddb11a788c450a9e0e247866ad63d5(Tarulia) posted 2 Updates: fb691fca5b42e0c25b7e24cab2168d12,73551cb8e8974cbceb22c855f311c430
[05:22:49] [INF] [64] Jellyfin.Plugin.KodiSyncQueue.EntryPoints.UserSyncNotification: User Changes Sync Finished Taking 00:00:00.0189054
[05:24:51] [INF] [118] Jellyfin.Api.Helpers.TranscodingJobHelper: FFmpeg exited with code 0
Here's an ffprobe and mediainfo on the file in question:
% ffprobe S01E22.mkv
ffprobe version 4.3.3 Copyright (c) 2007-2021 the FFmpeg developers
built with gcc 10 (GCC)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --docdir=/usr/share/doc/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' --extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ' --extra-cflags=' -I/usr/include/rav1e' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-crystalhd --enable-fontconfig --enable-frei0r --enable-gcrypt --enable-gnutls --enable-ladspa --enable-libaom --enable-libdav1d --enable-libass --enable-libbluray --enable-libcdio --enable-libdrm --enable-libjack --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-liblensfun --enable-libmp3lame --enable-libmysofa --enable-nvenc --enable-openal --enable-opencl --enable-opengl --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librav1e --enable-libsmbclient --enable-version3 --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-version3 --enable-vapoursynth --enable-libvpx --enable-vulkan --enable-libglslang --enable-libx264 --enable-libx265 --enable-libxvid --enable-libxml2 --enable-libzimg --enable-libzvbi --enable-lv2 --enable-avfilter --enable-avresample --enable-libmodplug --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-lto --enable-libmfx --enable-runtime-cpudetect
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
Input #0, matroska,webm, from 'S01E22.mkv':
Metadata:
title : House - Season 1 Disc 5
encoder : libmakemkv v1.16.5 (1.3.10/1.5.2) x86_64-redhat-linux
creation_time : 2021-11-21T08:34:32.000000Z
Duration: 00:44:11.07, start: 0.000000, bitrate: 30644 kb/s
Chapter #0:0: start 0.000000, end 205.371833
Metadata:
title : Chapter 01
Chapter #0:1: start 205.371833, end 666.082083
Metadata:
title : Chapter 02
Chapter #0:2: start 666.082083, end 1197.154292
Metadata:
title : Chapter 03
Chapter #0:3: start 1197.154292, end 1667.457458
Metadata:
title : Chapter 04
Chapter #0:4: start 1667.457458, end 2614.028083
Metadata:
title : Chapter 05
Chapter #0:5: start 2614.028083, end 2651.065083
Metadata:
title : Chapter 06
Stream #0:0(eng): Video: h264 (High), yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc
Metadata:
BPS-eng : 29807705
DURATION-eng : 00:44:11.065083333
NUMBER_OF_FRAMES-eng: 63562
NUMBER_OF_BYTES-eng: 9877770619
SOURCE_ID-eng : 001011
_STATISTICS_WRITING_APP-eng: MakeMKV v1.16.5 linux(x64-release)
_STATISTICS_WRITING_DATE_UTC-eng: 2021-11-21 08:34:32
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID
Stream #0:1(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), fltp, 768 kb/s (default)
Metadata:
title : Surround 5.1
BPS-eng : 768000
DURATION-eng : 00:44:11.072000000
NUMBER_OF_FRAMES-eng: 248538
NUMBER_OF_BYTES-eng: 254502912
SOURCE_ID-eng : 001101
_STATISTICS_WRITING_APP-eng: MakeMKV v1.16.5 linux(x64-release)
_STATISTICS_WRITING_DATE_UTC-eng: 2021-11-21 08:34:32
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID
Stream #0:2(eng): Subtitle: hdmv_pgs_subtitle, 1920x1080
Metadata:
BPS-eng : 69335
DURATION-eng : 00:41:57.535854166
NUMBER_OF_FRAMES-eng: 1341
NUMBER_OF_BYTES-eng: 21819355
SOURCE_ID-eng : 001201
_STATISTICS_WRITING_APP-eng: MakeMKV v1.16.5 linux(x64-release)
_STATISTICS_WRITING_DATE_UTC-eng: 2021-11-21 08:34:32
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID
% mediainfo S01E22.mkv
General
Unique ID : 324368442425620230799512442529945254122 (0xF40716F1DF4008527C3113F31E0C78EA)
Complete name : S01E22.mkv
Format : Matroska
Format version : Version 2
File size : 9.46 GiB
Duration : 44 min 11 s
Overall bit rate mode : Variable
Overall bit rate : 30.6 Mb/s
Movie name : House - Season 1 Disc 5
Encoded date : UTC 2021-11-21 08:34:32
Writing application : MakeMKV v1.16.5 linux(x64-release)
Writing library : libmakemkv v1.16.5 (1.3.10/1.5.2) x86_64-redhat-linux
Video
ID : 1
ID in the original source medium : 4113 (0x1011)
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.1
Format settings : CABAC / 4 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 4 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 44 min 11 s
Bit rate mode : Variable
Bit rate : 29.8 Mb/s
Maximum bit rate : 33.0 Mb/s
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 (24000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.600
Stream size : 9.20 GiB (97%)
Language : English
Default : No
Forced : No
Original source medium : Blu-ray
Audio
ID : 2
ID in the original source medium : 4353 (0x1101)
Format : DTS
Format/Info : Digital Theater Systems
Codec ID : A_DTS
Duration : 44 min 11 s
Bit rate mode : Constant
Bit rate : 768 kb/s
Channel(s) : 6 channels
Channel layout : C L R Ls Rs LFE
Sampling rate : 48.0 kHz
Frame rate : 93.750 FPS (512 SPF)
Bit depth : 16 bits
Compression mode : Lossy
Stream size : 243 MiB (3%)
Title : Surround 5.1
Language : English
Default : Yes
Forced : No
Original source medium : Blu-ray
Text
ID : 3
ID in the original source medium : 4609 (0x1201)
Format : PGS
Codec ID : S_HDMV/PGS
Codec ID/Info : Picture based subtitle format used on BDs/HD-DVDs
Duration : 41 min 57 s
Bit rate : 69.3 kb/s
Count of elements : 1341
Stream size : 20.8 MiB (0%)
Language : English
Default : No
Forced : No
Original source medium : Blu-ray
Menu
00:00:00.000 : en:Chapter 01
00:03:25.371 : en:Chapter 02
00:11:06.082 : en:Chapter 03
00:19:57.154 : en:Chapter 04
00:27:47.457 : en:Chapter 05
00:43:34.028 : en:Chapter 06
And Media console gets me this:
ChunkDemuxer
Effective playback rate changed from 0 to 1
Selected FFmpegAudioDecoder for audio decoding, config: codec: aac, profile: unknown, bytes_per_channel: 2, channel_layout: 5.1_BACK, channels: 6, samples_per_second: 48000, sample_format: Signed 16-bit, bytes_per_frame: 12, seek_preroll: 0us, codec_delay: 0, has extra data: false, encryption scheme: Unencrypted, discard decoder delay: false, target_output_channel_layout: STEREO, has aac extra data: true
Failed to initialize DecryptingVideoDecoder
Failed to initialize VpxVideoDecoder
Failed to initialize Dav1dVideoDecoder
Selected FFmpegVideoDecoder for video decoding, config: codec: h264, profile: h264 high, level: not available, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
(Log limit reached. Further similar entries may be suppressed): ISO-BMFF container metadata for video frame indicates that the frame is a keyframe, but the video frame contents indicate the opposite.
Selected video track: []
Selected video track: [18]
Selected FFmpegAudioDecoder for audio decoding, config: codec: aac, profile: unknown, bytes_per_channel: 2, channel_layout: 5.1_BACK, channels: 6, samples_per_second: 48000, sample_format: Signed 16-bit, bytes_per_frame: 12, seek_preroll: 0us, codec_delay: 0, has extra data: false, encryption scheme: Unencrypted, discard decoder delay: false, target_output_channel_layout: STEREO, has aac extra data: true
Failed to initialize DecryptingVideoDecoder
Failed to initialize VpxVideoDecoder
Failed to initialize Dav1dVideoDecoder
Selected FFmpegVideoDecoder for video decoding, config: codec: h264, profile: h264 high, level: not available, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}
Should also be noted this was reported before:
And thought to be fixed:
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.
There was no new release, so still valid
Just tested on 10.8.0~beta2, and it's still happening.
Although there seems to be an improvement. When the video stops and the error shows up, I can just click play again. It will restart the stream and while it drops out every couple seconds, it is functioning..(-ish). Refreshing the page sends me back to home and I can just resume from where it stopped and it's playing fine.
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.
Describe The Bug
When playing back some lossless AIFF music tracks on Firefox the progress bar initially loads up to 5m29s. As playback approaches this point or upon seeking to a point just before it, the progress bar finishes loading the track. However, when playback reaches 5m29s the music stalls and no further seeking, pausing, or resuming will restart the music. The only fix is to skip to a different track.
Media Information
transcode.txt
Screenshots
System (please complete the following information):
Additional Context
This has been a problem for awhile (probably months, I'm not sure exactly when I first noticed it).
Jellyfin is running in Docker with the official jellyfin/jellyfin image behind an nginx reverse proxy.
The track is being transcoded by Jellyfin. I've attached the transcode log above.
Only lossless AIFF's are affected (MP3's work properly) but oddly enough some AIFF's work properly as well. If a track has this issue then it will always have it and if a track doesn't then it will always work properly.
It's possible to work around this issue by seeking to a point after 5m29s then seeking to a point before it. Then playback will no longer stall (for this particular playback).