darknebular / Wrapper_VideoStation

Synology VideoStation and DLNA FFmpeg Wrapper with AAC, DTS, EAC3 and TrueHD support via pipes (now with GStreamer support). It enables full hardware transcoding from Synology´s FFmpeg for video and transcoding DTS, EAC3, TrueHD and AAC from the SynoCommunity's FFmpeg only when necessary.
634 stars 70 forks source link

AAC video not playing and "Unknown encoder '' " error #35

Closed murphy2712 closed 1 year ago

murphy2712 commented 1 year ago

I'm trying to read video files with AAC 6 channels to a Chromecast.

image

Video Station doesn't seem to like AAC files (with more than 2 channels) so I installed this wrapper to try. Now when playing a video with AAC (6 channels) it doesn't play and stays at 00:00.

I'm using a DS923+ with the latest Video Station, AME, ffmpeg 6 and the advanced wrapper. I noticed that AME shows only HEVC but not AAC: image

Here are the logs I found:

2023-08-21 12:48:49 - FFM31507 - PROCESS START REV AME_12.4.2 DS923+ (r1000) PID 31507 2023-08-21 12:48:49 - FFM31507 - MOVIE = /volume1/Movies/_Films/movie.mp4 2023-08-21 12:48:49 - FFM31507 - VCODEC = h264 (High) 2023-08-21 12:48:49 - FFM31507 - ACODEC = aac 2023-08-21 12:48:49 - FFM31507 - PARAM_ORIG = 2023-08-21 12:48:49 - FFM31507 - = -ss 0.000 -i /volume1/Movies/_Films/movie.mp4 -threads 0 -vcodec copy -vsync 2 -vbsf h264_mp4toannexb=repeatheader 2023-08-21 12:48:49 - FFM31507 - = -acodec -ab 256k -ac 2 -f ssegment -segment_format mpegts -segment_list_type m3u8 -hls_seek_time 0 -segment_time 8 -seg 2023-08-21 12:48:49 - FFM31507 - = ment_time_delta 0.000 -segment_start_number 00000 -individual_header_trailer 0 -avoid_negative_ts 0 -break_non_keyframes 2023-08-21 12:48:49 - FFM31507 - = 1 -max_muxing_queue_size 1024 -map 0:0 -map 0:1 /tmp/VideoStation/HLS/3cb080849f5461b5c749567aea7bcb72_dTmy6EM7/slice-% 2023-08-21 12:48:49 - FFM31507 - = 05d.ts 2023-08-21 12:48:49 - FFM31507 - MODE = ORIG-VSMS 2023-08-21 12:48:49 - FFM31507 - FFMPEG = /var/packages/CodecPack/target/pack/bin/ffmpeg41.orig 2023-08-21 12:48:49 - FFM31507 - PARAM_WRAP = 2023-08-21 12:48:49 - FFM31507 - = -ss 0.000 -i /volume1/Movies/_Films/movie.mp4 -threads 0 -vcodec copy -vsync 2 -vbsf h264_mp4toannexb=repeatheader 2023-08-21 12:48:49 - FFM31507 - = -acodec -ab 256k -ac 2 -f ssegment -segment_format mpegts -segment_list_type m3u8 -hls_seek_time 0 -segment_time 8 -seg 2023-08-21 12:48:49 - FFM31507 - = ment_time_delta 0.000 -segment_start_number 00000 -individual_header_trailer 0 -avoid_negative_ts 0 -break_non_keyframes 2023-08-21 12:48:49 - FFM31507 - = 1 -max_muxing_queue_size 1024 -map 0:0 -map 0:1 /tmp/VideoStation/HLS/3cb080849f5461b5c749567aea7bcb72_dTmy6EM7/slice-% 2023-08-21 12:48:49 - FFM31507 - = 05d.ts 2023-08-21 12:48:49 - FFM31507 - CHILDPID = 31550 2023-08-21 12:48:49 - FFM31507 - STDOUT = 2023-08-21 12:48:49 - FFM31507 - = libavformat 58. 20.100 / 58. 20.100 2023-08-21 12:48:49 - FFM31507 - = libavdevice 58. 5.100 / 58. 5.100 2023-08-21 12:48:49 - FFM31507 - = libavfilter 7. 40.101 / 7. 40.101 2023-08-21 12:48:49 - FFM31507 - = libswscale 5. 3.100 / 5. 3.100 2023-08-21 12:48:49 - FFM31507 - = libswresample 3. 3.100 / 3. 3.100 2023-08-21 12:48:49 - FFM31507 - = libpostproc 55. 3.100 / 55. 3.100 2023-08-21 12:48:49 - FFM31507 - = Guessed Channel Layout for Input Stream #0.1 : 5.1 2023-08-21 12:48:49 - FFM31507 - = Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/volume1/Movies/_Films/movie.mp4': 2023-08-21 12:48:49 - FFM31507 - = Metadata: 2023-08-21 12:48:49 - FFM31507 - = major_brand : isom 2023-08-21 12:48:49 - FFM31507 - = minor_version : 512 2023-08-21 12:48:49 - FFM31507 - = compatible_brands: isomiso2avc1mp41 2023-08-21 12:48:49 - FFM31507 - = encoder : Lavf60.4.101 2023-08-21 12:48:49 - FFM31507 - = Duration: 02:10:15.48, start: 0.000000, bitrate: 2639 kb/s 2023-08-21 12:48:49 - FFM31507 - = Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x804 [SAR 1:1 DAR 160:67], 2249 kb/s, 23.98 f 2023-08-21 12:48:49 - FFM31507 - = ps, 23.98 tbr, 24k tbn, 47.95 tbc (default) 2023-08-21 12:48:49 - FFM31507 - = Metadata: 2023-08-21 12:48:49 - FFM31507 - = handler_name : VideoHandler 2023-08-21 12:48:49 - FFM31507 - = encoder : Lavc60.9.100 libx264 2023-08-21 12:48:49 - FFM31507 - = Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, 5.1, 384 kb/s (default) 2023-08-21 12:48:49 - FFM31507 - = Metadata: 2023-08-21 12:48:49 - FFM31507 - = handler_name : SoundHandler 2023-08-21 12:48:49 - FFM31507 - = Unknown encoder '' 2023-08-21 12:48:49 - FFM31507 - CHILD END 2023-08-21 12:48:49 - FFM31507 - PROCESS END

I don't quite understand the config, maybe there's a setting to fix this? Or I should transcode before playing? ( I tried without success)

Thanks for the help!

darknebular commented 1 year ago

Please use a MKV not a MP4. The AVC1 (video's codec) is not fully compatible with your NAS.

Have you got others wrappers installed in your system?

I just tested and is working fine:

image image

Regards.

darknebular commented 1 year ago

if you're getting that error, that's because you used my Wrapper but it looks like you didn't use my installer or you have an error produced by another wrapper's installer...

Could you to ensure that the entire system is clean, uninstall AME and VIDEOSTATION and reinstall everything, this time using my installer on the clean system?

Regards.

murphy2712 commented 1 year ago

So it seems the avc1 codec is the issue, not the aac audio? I have no other wrapper, I already reinstalled a couple of times but I will retry. Uninstall the wrapper, AME, Video Station, then reinstall...

darknebular commented 1 year ago

So it seems the avc1 codec is the issue, not the aac audio?

Probably YES!!

Best regards.

murphy2712 commented 1 year ago

I reinstalled but have the same Unknown encoder issue. I can play the movies on the web videostation on my computer, but cannot cast those on Chromecast.

I have the same issue on hevc videos, but still having 5.1 aac audio:

023-08-21 14:36:51 - FFM31767 - = libavformat 58. 20.100 / 58. 20.100 2023-08-21 14:36:51 - FFM31767 - = libavdevice 58. 5.100 / 58. 5.100 2023-08-21 14:36:51 - FFM31767 - = libavfilter 7. 40.101 / 7. 40.101 2023-08-21 14:36:51 - FFM31767 - = libswscale 5. 3.100 / 5. 3.100 2023-08-21 14:36:51 - FFM31767 - = libswresample 3. 3.100 / 3. 3.100 2023-08-21 14:36:51 - FFM31767 - = libpostproc 55. 3.100 / 55. 3.100 2023-08-21 14:36:51 - FFM31767 - = Guessed Channel Layout for Input Stream #0.1 : 5.1 2023-08-21 14:36:51 - FFM31767 - = Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/volume1/Movies/_Animés/movie.mp4': 2023-08-21 14:36:51 - FFM31767 - = Metadata: 2023-08-21 14:36:51 - FFM31767 - = major_brand : isom 2023-08-21 14:36:51 - FFM31767 - = minor_version : 512 2023-08-21 14:36:51 - FFM31767 - = compatible_brands: isomiso2mp41 2023-08-21 14:36:51 - FFM31767 - = encoder : Lavf60.6.100 2023-08-21 14:36:51 - FFM31767 - = Duration: 00:39:03.68, start: 0.000000, bitrate: 2387 kb/s 2023-08-21 14:36:51 - FFM31767 - = Stream #0:0(und): Video: hevc (Main 10) (hev1 / 0x31766568), yuv420p10le(tv, bt709, progressive), 1920x960 [SAR 1:1 2023-08-21 14:36:51 - FFM31767 - = DAR 2:1], 1998 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 23.98 tbc (default) 2023-08-21 14:36:51 - FFM31767 - = Metadata: 2023-08-21 14:36:51 - FFM31767 - = handler_name : VideoHandler 2023-08-21 14:36:51 - FFM31767 - = encoder : Lavc60.16.101 libx265 2023-08-21 14:36:51 - FFM31767 - = Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, 5.1, 384 kb/s (default) 2023-08-21 14:36:51 - FFM31767 - = Metadata: 2023-08-21 14:36:51 - FFM31767 - = handler_name : SoundHandler 2023-08-21 14:36:51 - FFM31767 - = Unknown encoder '' 2023-08-21 14:36:51 - FFM31767 - CHILD END

Also from a h264 file/aac 5.1. Maybe my uninstall/reinstall is not working? I'm uninstalling the wrapper, AME, Videostation, then install videostation, AME, the wrapper advanced. Is this the way to reinstall? I didn't reinstall ffmpeg (keeping v6).

Am I missing something?

Regards

darknebular commented 1 year ago

I will replay to you, asap. Thanks for the Anydesk Code, I could to fix It.

murphy2712 commented 1 year ago

Strings to add in ffmpeg41 l.400, l.428 and l.453: " || grep "Unknown encoder" /tmp/ffmpeg-${streamid}.stderr "

darknebular commented 1 year ago

Yes, I remember the changes and the lines. Thanks for your time, finally was due to your DSM Version and not to AAC 5.1.

I Will do This change in the Next minor release.

darknebular commented 1 year ago

I am glad that finally works fine for you.

BEST regards.

darknebular commented 1 year ago

Don't forget the star jejeje 😝

murphy2712 commented 1 year ago

Thank you for the assistance! I'm also glad we fixed my casting issue and found a patch for the wrapper.