News:

--

Main Menu

AV1 support

Started by rolandpisano, January 09, 2019, 09:04:02 PM

Previous topic - Next topic

eumagga0x2a

Thank you, I can reproduce the failure with your MKV, works with mine. The first thing which strikes me is that the video track in your MKV lacks extradata (decoder configuration), i.e. the MKV is indeed broken. Looking deeper into it.

eumagga0x2a

#32
In your MKV, according to mkvtoolnix:

Multiplexing application: Lavf58.12.100

This is FFmpeg 4.0, not FFmpeg 4.3.2, which would have libavformat (Lavf) 58.45.100. FFmpeg 4.0 seems to be really too old for AV1.

phaolo

Oh no, that's the worst case for me  :'(
 
But FFmpeg 4.0?? Where TF is youtube-dl getting it?
The PATH env variable is pointing to "C:\Program Files\ffmpeg\bin", exactly where I put the latest build..

eumagga0x2a

$PATH has usually not just a single entry, with the current directory being probably searched first on Windows, so you should look into the folder where youtube-dl binary is located.

phaolo

And there it is, an ancient ffmpeg executable next to youtubedl.
I've deleted it and now the program points to the correct one.
And the error stopped appearing.

Thank you for the help.
Now I'll have to redownload everything.. RIP.

eumagga0x2a

Alternatively, you can re-encode the audio track e.g. to AAC and save edited broken MKVs as MP4 in Avidemux. This works. Just the MKV muxer refuses to cope with extradata-less AV1 streams.

phaolo

#37
Eh, I'd prefer not to encode again files, to preserve their (youtube) quality.

Btw, how do you match the libavformat version to the FFmpeg one? Is there a list?
For example I see that OBS is still creating files with an old 58.20.100

Anyway, I hope that 58.12.100 didn't cause some other issues also with AVC or VP9.

eumagga0x2a

You don't need to re-encode video as long as you stick to MP4 container (AV1 is compatible with MP4, Opus not yet).

Regarding libavformat version, I just looked at the version.h file at https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/version.h and switched tags (click on "master" to expand the list) until I got to the value of LIBAVFORMAT_VERSION_MINOR matching yours.

phaolo

I see, thanks.
(I would have never found that lol)

phaolo

Btw, I think I managed to recover the files for cutting, by:
1- saving only the video part with Avidemux to .mp4 (gMKVExtractGUI failed instead)
2- extracting the opus audio with gMKVExtractGUI
3- join both again with MKVToolNix GUI
4- cut with Avidemux normally

eumagga0x2a

It is even simpler: just load the extradata-less source MKV in MKVToolNix and remux it, no intermediate steps necessary. This adds the missing extradata to the output file, making it fit for further editing with Avidemux.

phaolo

Ah true, that's way better.
But in any case, no need to redownload everything as I first though ;D

p0zitiv

#43
eumagga0x2a, please take a look at my file. It is also downloaded with yt-dlp, but library version Lavf59.9.102 (from ffmpeg version N-104708-g8a18db3ec6-20211201)
If you repack the file with mkvtoolnix the error disappears



https://drive.google.com/file/d/19xTA1_PXYqdPHUxUvbfbD2ga984XRSZm/view?usp=sharing