Skip to content

Transcoding fail for mp4 with multiple aac audio channels #1630

@TommasoCostanzo

Description

@TommasoCostanzo

Describe the bug

I am using the latest nextcloud-aio with the go-vod (external memories transcoder) activated and properly working for the majority of files. However, the transcoding is failing for ripped DVD files that are in mp4 container, 1 h264 video and multiple aac audio channels. While opening the file in a browser reports at the top "audio append of xxxxxxx failed for segment #0 in playlist 0-480.m3u8". Nothing is obvious in the logs of the external decoder container. I tried to run the same command inside the container to produce a file and ffprobe on the produced file report:
Not detecting m3u8/hls with non standard extension and non standard mime type
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x559e023ef640] Format mov,mp4,m4a,3gp,3g2,mj2 detected only with low score of 1, misdetection possible!
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x559e023ef640] moov atom not found
/tmp/Test.mp4: Invalid data found when processing input

In the past there were no problems with the same file, and also if I run inside the container a minimalized ffmpeg command it works without any problem.
this are the flags present in the original command used by memories after the input file path that are not working:
-copyts -fflags +genpts -vf "format=nv12|vaapi,hwupload,scale_vaapi=force_original_aspect_ratio=decrease:format=nv12" -map "0:v:0" "-c:v" h264_vaapi -global_quality 24 -map "0:a:0?" "-c:a" aac -start_number 0 -avoid_negative_ts disabled -f hls -hls_flags split_by_time -hls_time 3 -hls_segment_type mpegts -hls_segment_filename /tmp/go-vod/4e0r5b8m0i80-485858818/max-%06d.ts -force_key_frames "expr:gte(t,n_forced*3)" test_out.mp4

When I reduced to just this:
-copyts -fflags +genpts -vf "format=nv12|vaapi,hwupload,scale_vaapi=force_original_aspect_ratio=decrease:format=nv12" -map "0:v:0" "-c:v" h264_vaapi -global_quality 24 -map "0:a:0?" "-c:a" aac test_out.mp4
The output file has no problem, and ffprobe reports no issues.

Unfortunately, I am not an expert of all these hls flags used in ffmpeg, but I guess they cannot be used in files with more then 1 audio channel.

I also take the opportunity to thank you for the amazing memories app!
I hope this can be easily fixed.
Best

Steps To Reproduce

No response

Platform

- OS:Arch Linux
- Browser:Firefox
- Memories Version: 7.8.2
- Nextcloud Version:32.0.6 (nextcloud-aio)
- PHP Version:

Screenshots

No response

Additional context

  • Any errors in the JS console?
  • Any errors in the Nextcloud server logs?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions