| Summary: | Enable samba support | ||
|---|---|---|---|
| Product: | Fedora | Reporter: | Yaroslav Syrytsia <me> |
| Component: | ffmpeg | Assignee: | Dominik 'Rathann' Mierzejewski <dominik> |
| Status: | CLOSED FIXED | ||
| Severity: | enhancement | CC: | belegdol, kwizart, leigh123linux, vascom2 |
| Priority: | P1 | ||
| Version: | f33 | ||
| Hardware: | All | ||
| OS: | GNU/Linux | ||
| namespace: | |||
|
Description
Yaroslav Syrytsia
2020-12-26 14:08:20 CET
mpv removed samba support and I don't intend to enable in ffmpeg. I think we could provide an alternative build of ffmpeg with "more" features using "modules" As this bug is concerned, smb support could be achieved by gvfs and alikes, so we don't need to enable support for any remote/network filesystem is any player... What is the reason to not enable smb support in ffmpeg? It seems good for user experience. >I don't intend to enable in ffmpeg. @Leigh Scott do you have any specific reason for that ? Here is my use case on my laptop with f33 (kde), which I use to watch some movies: - Open NAS via dolphin (just type in the address bar: smb://nas) - Select some file to watch * Drag&Drop file name onto konsole (you will have URL like smb://nas/share/example.mkv) * Start mpv with that URL - OR directly open the file via dolphin (it will call smplayer with mpv backend) That workflow worked just fine in f31, and now in f33 I need to deal with gvfs somehow or even download the whole file (10GB+) into the local storage just to watch a movie. It makes me sad. >I think we could provide an alternative build of ffmpeg with "more" features using "modules" @Nicolas Chauvet, it's okay for me also. But honestly, there are just a few modules that can be enabled (in package build), and I don't think that invested time/work will worth it. There is the same issue for opensuse[1] which was fixed by building ffmpeg with SMB support enabled. [1] - https://forums.opensuse.org/showthread.php/539418-tumbleweed-update-no-longer-can-play-videos-from-smb-share (In reply to Vasiliy Glazov from comment #3) > What is the reason to not enable smb support in ffmpeg? > It seems good for user experience. mpd and mpv dropped smb support because it is unstable, now mpv expects ffmpeg to provide it. TBH I don't see why users can't mount their samba shares using cifs and play as a local file. (In reply to Yaroslav Syrytsia from comment #4) ... > That workflow worked just fine in f31, and now in f33 I need to deal with > gvfs somehow or even download the whole file (10GB+) into the local storage > just to watch a movie. It makes me sad. What's the problem with gvfs ? The more feature are enabled in ffmpeg the bigger the binary is and more dependencies needs to be installed, even when one wants to keep the build minimal. This has security consequences, one needs to maintain and trust the code that enable smbclient support (here in ffmpeg). I would prefer to defer this to gvfs instead, so we won't have to bother for remote network filesystem (smb/nfs/etc) Even if I usually trust ffmpeg maintenance... IIRC, the reason why smb feature is a with conditional is because it's GPLv3+.(which we might already have enabled) So it would turn our ffmpeg build as GPLv3+ (instead of GPLv2+) which might have licensing issue with one or another dependency. This reason might not hold nowadays... Needs to be evaluated. Ok, so with Leigh, we agreed that enabling smb in ffmpeg worth a try. So it's done for f33+ But the more libraries are enabled, the more chances for a symbol version mismatch can occur. This occurs when a project is built with another compat version of a library and not another. This concern either ffmpeg library dependencies or "users" (such as video players, etc). If such issue arise, we will have to revert back to minimize the dependency set of ffmpeg as we won't be able to workaround the issue in our side. (In reply to Nicolas Chauvet from comment #8) > Ok, so with Leigh, we agreed that enabling smb in ffmpeg worth a try. > So it's done for f33+ That's awesome. Thank you :) It seems my smb fears are starting to materialize. https://bugzilla.rpmfusion.org/show_bug.cgi?id=5897 (In reply to leigh scott from comment #10) > It seems my smb fears are starting to materialize. > > https://bugzilla.rpmfusion.org/show_bug.cgi?id=5897 Are you sure that #5897 is related to ffmpeg ? /usr/lib64/samba/libkrb5samba-samba4.so belongs to samba-client-libs-4.13.3-0.fc33.x86_64 (on my f33 system) It might be a samba bug but with the increased number of dependencies ffmpeg users are getting affected - apparently even if their use case has nothing to do with the dependency. (In reply to Yaroslav Syrytsia from comment #11) > (In reply to leigh scott from comment #10) > > It seems my smb fears are starting to materialize. > > > > https://bugzilla.rpmfusion.org/show_bug.cgi?id=5897 > > Are you sure that #5897 is related to ffmpeg ? > /usr/lib64/samba/libkrb5samba-samba4.so belongs to > samba-client-libs-4.13.3-0.fc33.x86_64 (on my f33 system) ffmpeg with smb support uses libsmbclient.so.0()(64bit) libsmbclient.so.0(SMBCLIENT_0.1.0)(64bit) $ rpm -qf /usr/lib64/libsmbclient.so.0 libsmbclient-4.13.3-0.fc33.x86_64 $ ldd /usr/lib64/libsmbclient.so.0 |grep libkrb5samba-samba4 libkrb5samba-samba4.so => /usr/lib64/samba/libkrb5samba-samba4.so (0x00007f1033c21000) |