Am running Ubuntu 20.04 server (fresh install) on a computer on my home network. After some effort (adding renderer: Network Manager to /etc/netplan/00-installer-config.yaml) I was able to share media files using the setting app in the GUI. Now my Hisense 32K3110W TV can see my server and access my Videos directory. Unfortunately it appears Rygel does not share my .mpg files, the format most of my movies are in. Only the .avi and .mov files are visable to the TV. I know it's not a problem at the TV end because when I copy the .mpg files to a usb device and plug it directly into the TV it both sees them and plays them perfectly. My current rygel.conf file is:
[general] upnp-enabled=true enable-transcoding=true video-upload-folder=@VIDEOS@ music-upload-folder=@MUSIC@ picture-upload-folder=@PICTURES@ media-engine=librygel-media-engine-gst.so interface= port=0 log-level=*:4 allow-upload=true allow-deletion=true acl-fallback-policy=true
[GstMediaEngine] transcoders=mp3;lpcm;mp2ts;wmv;aac;avc
[Renderer] image-timeout = 15
[Tracker] enabled=true only-export-from=@MUSIC@;@VIDEOS@;@PICTURES@ share-pictures=true share-videos=true share-music=true strict-sharing=false title=@REALNAME@'s media on @PRETTY_HOSTNAME@
[LMS] enabled=false title=@REALNAME@'s media on @PRETTY_HOSTNAME@
[MediaExport] enabled=false title=@REALNAME@'s media on @PRETTY_HOSTNAME@ uris=@MUSIC@;@VIDEOS@;@PICTURES@ extract-metadata=true monitor-changes=true monitor-grace-timeout=5 virtual-folders=true
[Playbin] enabled=true title=Audio/Video playback on @PRETTY_HOSTNAME@ #audio-sink=autoaudiosink #video-sink=fakesink
[GstLaunch] enabled=false launch-items=audiotestsrc;videotestsrc;videotestoverlay audiotestsrc-title=Audiotestsrc audiotestsrc-mime=audio/x-wav audiotestsrc-launch=audiotestsrc ! wavenc videotestsrc-title=Videotestsrc videotestsrc-mime=video/mpeg videotestsrc-launch=videotestsrc ! avenc_mpeg2video ! mpegtsmux videotestoverlay-title=Videotestsrc with timeoverlay 2 videotestoverlay-mime=video/mpeg videotestoverlay-launch=videotestsrc ! timeoverlay ! avenc_mpeg2video ! mpegtsmux
[Test] enabled=false
[ExampleServerPluginVala] enabled=false
[ExampleServerPluginC] enabled=false
[ExampleRendererPluginVala] enabled=false
[ExampleRendererPluginC] enabled=false
[MPRIS] enabled=false
[External] enabled=false
[Ruih] enabled=false title=Rygel Remote UI Server
I am a newbie at Ubuntu in particular and Linux in general. There is most likely something obvious I have missed. I have spent some hours trying to find a solution online without a result. I would be greatfull if someone competant could help me out.
I think it's unlikely that anyone will answer, so I will post my eventual solution, such that it is, in case it helps someone else in the future. Firstly, something I learned that wasn't relevant in the end but handy to know. The rygel.conf file relevant to media sharing when using the settings app in the GUI is in ~/.config. As far as I can see the other rygel.conf doesn't matter unless you enable media sharing from the command line.
My sharing issue was the result of Rygel blacklisting all the .mpg files. The database ~/.cache/rygel/media-export.db shows the blacklist clearly. I found several places online where the "boss" of the Rygel project, [email protected], suggested using a gnome script he had written, mx-info, to unblacklist files. Unfortunately I am nowhere near as clever as [email protected] so I couldn't make it work. If you are clever I suggest investigating this further. If you are "challenged" like me you may have to follow my eventual, half arsed solution described below.
In the end I simply used ffmpeg to convert all the .mpg files to .avi files then deleted the original .mpg to conserve disk space.I used the Winff GUI front end because it was easy to process large numbers of files in batches. I had to leave the conversion running in the background for about four days but now I can watch videos from my Ubuntu server on my TV. I had already shared my Videos folder accross the network using Samba (after enabling SMB2) so all the Windows & Chrome OS machines on our home network could already play all the movies in the mpeg2 format, successfully sharing to the smart TV was the final piece of the puzzle.