Those are explained here: https://www.raspberrypi.org/documentation/configuration/config-txt/video.md
There is also this: https://www.raspberrypi.org/documentation/configuration/hdmi-config.md -- But if the group 1, mode 16 as above works, you don't have to worry about all that.
It is a hardware decoder.1 2 No hardware encoder is present.
No, as of 17-July-2019 the necessary patches are not in upstream, but exist as an downstream fork of ffmpeg. 3 LibreELEC ("Just enough OS for Kodi") uses it already.
No, the cost is included in the price already.
Here's the relevant part of the official docs.
Min and max:
GPU memory in megabytes, sets the memory split between the CPU and GPU; the CPU gets the remaining memory. The minimum value is 16; the technical maximum value 944 [for the RPi 4]. The default value is 64, values above 512 will not provide increased performance and should not be used.
There are at least 5 different combinations of TRRS cable that are wired differently. You need to make sure you get the correct one.
Best option is to buy a cable from a Pi supplier that stated Raspberry Pi compatible.
How to test a cable:
Make the RPi connected to the audio system essentially a bluetooth speaker. Stream the audio from the RPi that's playing back the video. Most video player apps have sound delay/advance configurable. - once the audio delay/advance is set for a particular video it should hold audio sync throughout playback pretty well.
From tutorial at Raspberrypi.org forum ...
Sony IMX219PQ , can be configured as master slave and thus frame synchronized, there is even a sony app note about it.
I have used this on a custom stereo camera board, but proper configuration of the sensor is needed.
It will be enough, but the performance will depend on the codec used:
HEVC, H.265 and H.264 are supported in hardware, so those will offer the best performance with a compatible video player such as VLC.
Older formats such as MPEG-2 are decoded in software, which is fine in most cases. Videos with high bitrates (such as Blu-ray) will result in significant ...
Reduce the quality of the video by motion.conf file. I mean, decrease these values:
Also, it would be better if you disable some functions like stream_motion off. Additionally, check minimum_gap 0 that the value is "0".
Check THIS link out. It could be useful if you reduce the qualities and turn off unusable ...
You shouldn't need to set it beyond the default value in the plain Raspbian /boot/config.txt. Max value is 128M.
Setting it beyond 128M can leave your Raspberry Pi 4B unbootable.
GPU memory on a RPi4B isn't used in the same way as on earlier Raspberries.
I don't know anything about Kodi, but you can get YouTube videos without allowing Google to sniff your privates:
sudo apt-get install youtube-dl
I've found youtube-dl to work well for my purposes, and it's actively maintained. Also on GitHub
It is very good question, on rpi 1-2-3 i use special license keys to unlock hardware ecoding MPEG-2 and VC-1. But on rpi4 hardware decoding of MPEG-2 and VC-1 not supported.
Example from here :
import numpy as np
def analyse(self, a):
a = np.sqrt(
# If there're more than 10 ...
I also use VLC on the latest Buster and RPi4. I remember getting some screen blinking when I used a crappy HDMI cable which I have since replaced. One easy test you can do is changing the screen resolution to a lower one, e.g. 1280x720. You can do this e.g. by editing /boot/config.txt, running raspi-config (those two require a reboot), by going to ...
I just wanted to say a big THANK YOU to Andy Johnson and his Single/Dual link DVI-D suggestion.
My PI4 would never connect to a Sony SDM monitor despite all config files changes I could find on forums. After ordering a new HDMI/DVI cable SINGLE LINK, it worked immediately like a charm.
Sorry to react almost 7 years later...
I believe this problem could be related and solved to overscan.
Either set your TV to display every pixels without cutting the border.
Or, on the Pi specify that some pixels are not visible and should not be used. And this can be done in /boot/config.txt
# uncomment this if your display has a black border of unused ...
From Using cell phone screens with any HDMI interface, there is a video controller, made from an Arduino DSI Display Shield with a programmable FPGA (Xilinx Spartan-6-SLX9), that bridges the iPhone4 display interface to DSI interface.
VLC Media Player
You can use VLC to display subtitles. In the PiXEL desktop environment, go to Sound and Video > VLC Media Player from the applications menu. In VLC open the video file from Media > Open File and the subtitle file from Subtitle > Add Subtitle File. One can change the default subtitle font in Tools > Preferences > Subtitles / ...
I think if it was me, given the constraints, I'd define a new pixel-mangling encoder in vc4 drm that used the writeback engine ("txp") to capture HVS scenes to memory, and make sure that your console and X11 were displaying to that and not HDMI.
Once each write back completes, I'd do whatever algorithm on the captured scene into a new buffer, and then emit ...
It always depends on what you put in and expect to get out. So what is your video source? Assuming a USB-Webcam as your V4L2 suggests makes it very CPU intensive. Also doing the deformation on the CPU will limit you in the resolution you can use as the amount of work scales with the pixel count.
The green field for something like that would be to stay on ...
Just run apt search video editor and then apt install <PackageName> for a package you like. However all of those weren't built for raspberrypi, so they'll lag and not fully functional. I've actually written a simple one that doesn't lag as much, but it isn't descent as well... RPI is just too weak to handle a good one.
Well, the good news is that I solved the problem. The bad news is that I added noise to a great resource. Sorry for the distraction!
That said, posting the question and looking at the script one more time before responding to Roger's request to see it (Thanks, Roger!), made me look somewhere I hadn't -- the regex I use to test for whether a video is still ...