mastodon.xyz is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance, open to everyone, but mainly English and French speaking.

Administered by:

Server stats:

819
active users

#gstreamer

0 posts0 participants0 posts today
Continued thread

A first experiment in #gstreamer is quite promising - on the x220 it already makes Showtime (the future Gnome default player) outperform #mpv with 4k@30fps AV1 or VP9 playback - my hope is to get 4k@60fps work smoothly (SDR - bonus for HDR10, but the required shaders might end up being too heavy).

For those interested, you can find the code at gitlab.freedesktop.org/gstream

GitLabDraft: glupload: Implement udmabuf uploader PoC (!8540) · Merge requests · GStreamer / gstreamer · GitLabSimple proof-of-concept for an udmabuf based uploader that takes sysmem I420 as input - the usual format for many sw-decoders for 8bit - and copies it into...
Replied in thread
Subject: Easy backup of video DVD to ISO file

A Linux #CLI person can simply use the #Linux #Perl script linked below. No GUIs or heavy dependencies are needed. The script might also work under Windows 11 or above by way of WSL, but this hasn't been tested.

https://laclin.com/rjkbin/ocdvdtoiso.txt

The script, which we'll refer to as "ocdvdtoiso", backs up a video #DVD optical disc to an ISO data file.

"ocdvdtoiso" bypasses the usual DVD bad-blocks backup prevention mechanism. I wrote the script in the mid-2000s and have used it successfully on numerous DVDs. Note: Scratched DVDs require more advanced tools. That is a subject for another time.

The ISO output file will typically be 4 GB to 8 GB in size. So, it's recommended that you have at least 8 GB of free disk space available before you proceed.

Once you've backed up a DVD disc to an ISO file, you can do the following:

Use Handbrake or FFmpeg to convert the ISO to MKV
Play the MKV on a Smart TV by way of a USB3 stick
Play the MKV on a phone or laptop
Play the ISO on a laptop [this requires an ISO player]
Write the ISO back to a fresh optical disc

In short, you can exercise your unquestioned right to use data that you own as you see fit.

The screenshot further down shows Glide, a cross-platform video player, playing "Mr. Holmes", a portrait of Sherlock Holmes in his 90s. Note: Glide is written in #Rust and is based on #GStreamer and GTK.

The process that I used here was as follows:

Purchase the DVD from an Amazon seller
Use "ocdvdtoiso" to convert the DVD to ISO
Use FFmpeg to convert the ISO to MKV [with subtitles]
Use Glide to play the MKV
Use The GIMP to make the screenshot

"ocdvdtoiso" has 3 lightweight dependencies besides Perl. The dependencies are Linux packages named coreutils, lsdvd, and util-linux.

Everything but lsdvd is pre-installed in most Linux distros. So, it should be sufficient to install lsdvd. In a Debian distro, which includes Linux Mint, Ubuntu, WSL, and many others, the following commands should install the dependencies:

sudo apt-get update
sudo apt-get install coreutils lsdvd perl util-linux

It'll be analogous but different for Arch, Gentoo, RedHat, and other Linux distros.

The only other setup steps needed should be to rename the Perl script to "ocdvdtoiso" and to set execute permissions as follows:

chmod 755 ocdvdtoiso

Note: The "oc" stands for "OldCoder". I have quite a few "oc*" tools. I'll be releasing them as #FOSS as I move towards completion of my Linux distro (Laclin).

"ocdvdtoiso" is a "6 in 1" toolset. You can copy or symlink the file to any of the following 6 filenames. The copied or symlinked commands will serve the indicated purposes:

cdtoiso = Copy data CD to ISO file
ocdvdtoiso = Copy video DVD to ISO file
cdmd5 = Compute data CD MD5 sum
dvdmd5 = Compute video DVD MD5 sum
cdsha1 = Compute data CD SHA1 sum
dvdsha1 = Compute video DVD SHA1 sum

BluRay discs and music CDs aren't supported. I have other toolsets for those types of discs.

Enjoy.

Playing some tunes on soundcloud.com/aiobahn/popular I just realized that #SoundCloud does an automatic 100ms fade-in and fade-out when you hit the play/pause button. That feels so nice, especially for music!

I'm wondering if #GStreamer can do that easily, and if we could/should do that in the #GNOME multimedia apps like Amberol and Podcasts (maybe also Decibels and Showtime, though I'm not sure if that would be expected in those cases) 🤔

Continued thread

If any sw-decoder people (#dav1d, #ffmpeg, #vpx etc.) read this, do you know how feasible it would be to make decoders:
1. support output formats common for hw-decoders, like NV12, P010 etc.? Do some already do, do the #gstreamer implementions just miss something? Do I miss something?
2. support externally allocated buffers, crucially ones with stride != width?

Both points could help make things more performant - and together they could even allow zero-copy playback with common display engines.

Continued thread

Doing so would require wiring up various new DRM fourcss and support in #mesa drivers - i.e. quite a bit of work - but initial, totally unoptimized results are very promising and the approach leaves a lot of room for improvements and extensions, e.g. new dmabuf APIs for better upload performance to dedicated GPUs, optionally using heaps like CMA etc.

That's why I'd love to hear opinions from people in the field if they generally consider this a good idea.