Feature #4572
OMX Support
100%
Description
I'm trying to build ffmpeg on the Pi using the following options.
sudo AUTOBUILD_CONFIGURE_EXTRA=--enable-omx\ --enable-ffmpeg_static\ --disable-bintray_cache\ --disable-libvpx_static\ --disable-libvpx\ --disable-nvenc ./Autobuild.sh -t raspbianstretch-armhf
This is to test out hardware transcoding on the Pi, unfortunately it fails to build as it always tries to build with nvenc and throws:-
ERROR: nvenc requested, but not all dependencies are satisfied: cuda
Even if you pass ---disable-nvenc.
Files
History
Updated by Mark Clarkstone over 7 years ago
- % Done changed from 0 to 50
Updated by Mark Clarkstone over 7 years ago
- Subject changed from GIT: Cannot disable nvenc to OMX Support
I've changed the title as so all omx related info is here.
Well, with that PR it builds and it looks extremely promising, but I get no video output. The good news is, tvh or the Pi doesn't crash.
Here is what I get when I try.
2017-09-05 22:32:49.179 subscription: 000D: "HTTP" subscribing on channel "BBC One E Mid", weight: 100, adapter: "IPTV", network: "tvh1", mux: "playlist - BBC One E Mid", service: "BBC ONE E Mid", profile="test", hostname="192.168.1.103", client="VLC/2.2.2 LibVLC/2.2.2" 2017-09-05 22:32:50.162 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.170 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.199 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.240 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.270 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.302 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.374 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.414 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.454 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.496 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.504 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.534 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.606 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.613 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:50.646 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-05 22:32:57.174 libav: AVFormatContext: Could not find codec parameters for stream 1 (Audio: mp3 ([3][0][0][0] / 0x0003), 0 channels): unspecified frame size Consider increasing the value for the 'analyzeduration' and 'probesize' options 2017-09-05 22:32:57.183 libav: AVFormatContext: Could not find codec parameters for stream 2 (Audio: mp3 ([3][0][0][0] / 0x0003), 0 channels): unspecified frame size Consider increasing the value for the 'analyzeduration' and 'probesize' options 2017-09-05 22:32:57.193 libav: AVFormatContext: sample rate not set 2017-09-05 22:32:57.196 iptv: libav: Unable to write header
Seems like some values aren't being set?
Jaroslav, let me know if you want me to try any patches at all, I'm more than happy to try anything.
Here are a few links that may help.
Updated by Jaroslav Kysela over 7 years ago
These errors are not from transcoder, but from IPTV libav input. There's trouble with the audio detection. Where you get the input stream? Could you run ffprobe on the input stream?
Updated by Mark Clarkstone over 7 years ago
- Status changed from New to Fixed
- % Done changed from 50 to 100
Applied in changeset commit:tvheadend|e10c3008746d0d26fc2ce7919ee59985dfa43eed.
Updated by Mark Clarkstone over 7 years ago
Jaroslav Kysela wrote:
These errors are not from transcoder, but from IPTV libav input. There's trouble with the audio detection. Where you get the input stream? Could you run ffprobe on the input stream?
It's an IPTV auto network using the playlist from my main tvh server.
The channel is bog standard DVB-T mpeg2/mp2 - no funky profiles, just pass.
Here's the probe.
mark@mark-desktop2:~$ ffprobe http://192.168.1.3:9981/stream/channel/9f8e24ade33ee9c2622823db82c07cc0 ffprobe version 2.8.11-0ubuntu0.16.04.1 Copyright (c) 2007-2017 the FFmpeg developers built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609 configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv libavutil 54. 31.100 / 54. 31.100 libavcodec 56. 60.100 / 56. 60.100 libavformat 56. 40.101 / 56. 40.101 libavdevice 56. 4.100 / 56. 4.100 libavfilter 5. 40.101 / 5. 40.101 libavresample 2. 1. 0 / 2. 1. 0 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 2.101 / 1. 2.101 libpostproc 53. 3.100 / 53. 3.100 [mpeg2video @ 0x1df5ba0] Invalid frame dimensions 0x0. Last message repeated 7 times [mpegts @ 0x1de7c40] Could not find codec parameters for stream 2 (Audio: mp3 ([3][0][0][0] / 0x0003), 0 channels, s16p): unspecified frame size Consider increasing the value for the 'analyzeduration' and 'probesize' options Input #0, mpegts, from 'http://192.168.1.3:9981/stream/channel/9f8e24ade33ee9c2622823db82c07cc0': Duration: N/A, start: 1007.201578, bitrate: N/A Program 1 Metadata: service_name : BBC ONE E Mid service_provider: Stream #0:0[0x65]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv), 704x576 [SAR 16:11 DAR 16:9], max. 15000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0x66](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s Stream #0:2[0x6a](eng): Audio: mp3 ([3][0][0][0] / 0x0003), 0 channels, s16p (visual impaired) Stream #0:3[0x69](eng): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
Updated by Jaroslav Kysela over 7 years ago
Could you try this? It's not a complete fix, it's just for testing:
diff --git a/src/input/mpegts/iptv/iptv_libav.c b/src/input/mpegts/iptv/iptv_libav.c index bd14b380e..2389d279c 100644 --- a/src/input/mpegts/iptv/iptv_libav.c +++ b/src/input/mpegts/iptv/iptv_libav.c @@ -115,6 +115,8 @@ iptv_libav_thread(void *aux) for (i = 0; i < la->ictx->nb_streams; i++) { in_stream = la->ictx->streams[i]; + if (in_stream->codec->frame_size == 0) + continue; out_stream = avformat_new_stream(la->octx, in_stream->codec->codec); if (out_stream == NULL) { tvherror(LS_IPTV, "libav: Failed allocating output stream");
Updated by Mark Clarkstone over 7 years ago
Jaroslav Kysela wrote:
Could you try this? It's not a complete fix, it's just for testing:
[...]
Sure, no problem, could take a little time to build though, will report results when possible.
Updated by Mark Clarkstone over 7 years ago
Update:
I'm now getting audio, but no video, using a profile that tries to use the omx hardware causes the cpu usage to sky rocket.
017-09-06 21:36:23.891 subscription: 0008: "HTTP" subscribing on channel "BBC One E Mid", weight: 100, adapter: "IPTV", network: "iptvbbc", mux: "115 - BBC One E Mid", service: "BBC ONE E Mid", profile="test", hostname="192.168.1.103", client="VLC/2.2.2 LibVLC/2.2.2" 2017-09-06 21:36:24.880 transcode: 0007: 01:MPEG2VIDEO: ==> Using profile omx1 2017-09-06 21:36:24.880 transcode: 0007: 02:MPEG2AUDIO: ==> Using profile copy 2017-09-06 21:36:24.880 transcode: 0007: 03:MPEG2AUDIO: ==> Using profile copy 2017-09-06 21:36:24.880 transcode: 0007: 04:DVBSUB: ==> Filtered out 2017-09-06 21:36:25.585 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.671 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.672 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.680 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.680 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.743 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.815 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.878 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.879 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.912 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:25.913 libav: AVCodecContext: Invalid frame dimensions 0x0. 2017-09-06 21:36:26.173 libav: AVCodecContext: Using OMX.broadcom.video_encode
The good news is, it's at least trying to transcode.
Setting both profiles to copy & the usage stays normal, so I suspect it's not transcoding using the hardware but trying in software?
Updated by Benjamin Challinor over 7 years ago
I've noticed the same issue - transcoding a DVB-T UK stream results in no video, with the audio working fine & the same warnings in the log.
Turning trace on for libav/transcode gives a bit more:
Sep 8 17:10:56 tvheadend[6448]: libav: AVCodecContext: Skipping B slice due to open GOP Sep 8 17:10:56 tvheadend[6448]: transcode: 0006: 01:H264: [mpeg2video => h264_omx]: opts: flags=+global_header,zerocopy=1,tvh_filter_deint=0,width=0,height=0,pix_fmt=0,bf=3,tvh_require_meta=1 Sep 8 17:10:56 tvheadend[6448]: libav: AVCodecContext: dimensions not set
The 'skipping B slice' warning is repeated a lot of times before presumably giving up without any successful determination of the stream parameters as width/height equate to 0. I'm guessing this is why no video output is observed - it does seem to be attempting to transcode something given CPU usage and a small reservation of GPU memory at the time, although with 0x0 dimensions its no surprise the video is missing (which it is - there is no video stream in the output at all)
Updated by Klara Jansen over 7 years ago
Mark Clarkstone wrote:
I've changed the title as so all omx related info is here.
Well, with that PR it builds and it looks extremely promising, but I get no video output. The good news is, tvh or the Pi doesn't crash.
I seem to be missing something as the build on my PI2 still crashes, using exactly the line as described in the first post. It throws the following error:Markdown: docs/wizard/muxes.md
Markdown: docs/wizard/network.md
Markdown: docs/wizard/status.md
CC src/docs.o
CC build.o
CC timestamp.o
CC tvheadend
/usr/bin/ld: /usr/src/tvheadend/build.linux/ffmpeg/build/ffmpeg/lib/libtheoraenc.a(encode.o): relocation R_ARM_THM_MOVW_ABS_NC against `__stack_chk_guard' can not be used when making a shared object; recompile with -fPIC
/usr/src/tvheadend/build.linux/ffmpeg/build/ffmpeg/lib/libtheoraenc.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
distcc[21353] ERROR: compile (null) on localhost failed
Makefile:684: recipe for target '/usr/src/tvheadend/build.linux/tvheadend' failed
make[3]: *** [/usr/src/tvheadend/build.linux/tvheadend] Error 1
make[3]: Leaving directory '/usr/src/tvheadend'
Makefile:99: recipe for target 'ffmpeg_all' failed
make[2]: *** [ffmpeg_all] Error 2
make[2]: Leaving directory '/usr/src/tvheadend'
debian/rules:11: recipe for target 'override_dh_auto_build' failed
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory '/usr/src/tvheadend'
debian/rules:5: recipe for target 'build' failed
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2
I do have libtheora installed:dpkg -l | grep libtheora
ii libtheora-dev:armhf 1.1.1+dfsg.1-6 armhf Theora Video Compression Codec (development files)
ii libtheora0:armhf 1.1.1+dfsg.1-6 armhf Theora Video Compression Codec
What's going wrong with my build?
Updated by Klara Jansen over 7 years ago
Jaroslav Kysela wrote:
@Klara: Try --disable-pie (configure).
Same result...
Updated by Mark Clarkstone over 7 years ago
Klara Jansen wrote:
Jaroslav Kysela wrote:
@Klara: Try --disable-pie (configure).
Same result...
This is what I used for configure during testing.
./configure --enable-omx --disable-libvpx --disable-libvpx_static --disable-libx265 --disable-libvpx_static --disable-libtheora --disable-libtheora_static --disable-libvorbis --disable-libvorbis_static --disable-libopus --disable-libopus_static
Updated by Klara Jansen over 7 years ago
Mark Clarkstone wrote:
This is what I used for configure during testing.
[...]
That's working! Thanks!
Updated by Peter Leehrmund over 7 years ago
Klara Jansen wrote:
Mark Clarkstone wrote:
This is what I used for configure during testing.
[...]That's working! Thanks!
Sorry for the question, i am „new“.
Im searching for a solution to transcode one HD-Streams with GPU (OMX) on a Raspberry Pi3.
Is it possible with this solution so that i can choose a Stream-Profile (h264 omx)?
Updated by Mark Clarkstone over 7 years ago
Peter Leehrmund wrote:
Klara Jansen wrote:
Mark Clarkstone wrote:
This is what I used for configure during testing.
[...]That's working! Thanks!
Sorry for the question, i am „new“.
Im searching for a solution to transcode one HD-Streams with GPU (OMX) on a Raspberry Pi3.
I'm only testing using a Pi1, unfortunately I don't think it's going to be possible to transcode in hardware on the Pi at the moment - at least not fully anyway.
My Pi isn't fast enough to do software decoding & tvh can't utilise the hardware decoder (yet?). I suspect it's possible using transcode spawn to an external app that can do both decode & encode. I have yet to try it, but I don't see why it won't work.
Is it possible with this solution so that i can choose a Stream-Profile (h264 omx)?
@Jaroslav
I was going to suggest you hide or disable the omx transcoder until it's possible to do both decode & encode in hardware as it's just going to confuse people. Up to you though.
Updated by Jaroslav Kysela over 7 years ago
Can someone with rpi show me a command-line using the ffmpeg command which is doing hardware transcoding from .ts to .mkv for example? We need probably mpeg2video and h264 examples.
Updated by Mark Clarkstone over 7 years ago
Jaroslav Kysela wrote:
Can someone with rpi show me a command-line using the ffmpeg command which is doing hardware transcoding from .ts to .mkv for example? We need probably mpeg2video and h264 examples.
Is this helpful?
Updated by C vH over 7 years ago
Mark Hunting Clarkstone
did it work for you ?
The log tells with >100% cpu usage at top
[WARNING]:transcode: 0006: 01:H264: [h264_mmal => h264_omx]: Invalid pts (2300202) <= last (2320402), dropping frame
As we build it differently it may be a build problem, but the ffmpeg we build works well with omx/mmal, for x86_64 it works well at Tvh with vaapi.
Updated by Jaroslav Kysela over 7 years ago
The scaling (height) and deinterlacer should be off (zero) for tests (no software video filters). Anyway, h264_omx encoder does not set pict_type in AVFrame, so tvh probably might not work for this reason.
Updated by Mark Clarkstone over 7 years ago
Just had a chance to test again & provide better logs this time!
Logs:
http://termbin.com/rrjx
http://termbin.com/fdbl
I also did the most basic tests I can think of..
Settings: Using the profile with copy & HW accel - nothing else is set. Container: Matroska (mkv)/av-lib Result: Hardware not used (expected), partial garbled video, there's sound though Container: Matroska (mkv)/built-in Result: Hardware not used (expected), fine, no issues at all Container: WEBM/built-in, MPEG-PS Result: Hardware not used (expected), inconclusive - doesn't support h264/aac/dvd muxer not found Container: MPEG-TS/av-lib Result: Hardware not used (expected), OK Container: MP4/av-lib Result: Error Log: 2017-09-16 05:46:54.793 libav: AVFormatContext: Application provided invalid, non monotonically increasing dts to muxer in stream 0: 23304 >= 23304 2017-09-16 05:46:54.813 libav: Failed to write frame Settings: Using the profile with copy & the bitrate set to 1000 Container: Matroska (mkv)/built-in, Matroska (mkv)/av-lib, MP4/av-lib Result: Hardware used, just audio, attemps to transcode video, tvheadend hangs once playback is stopped - must be killed Container: MPEG-TS/av-lib Result: Hardware used, just audio - attemps to transcode video, _doesn't hang_ Log for MP4/av-lib: 2017-09-16 06:04:12.416 libav: AVCodecContext: Changing output format. 2017-09-16 06:04:12.744 libav: AVCodecContext: Using OMX.broadcom.video_encode 2017-09-16 06:04:16.227 libav: AVFormatContext: Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. 2017-09-16 06:04:16.237 libav: AVFormatContext: track 0: codec frame size is not set
Jaroslav, I hope this information helps!
Updated by Mark Clarkstone over 7 years ago
- Status changed from Accepted to Fixed
Applied in changeset commit:tvheadend|a62a38e9d19277fde22c2cedaf1920df6bd99536.
Updated by Manfred Kreisl about 7 years ago
Mark Clarkstone wrote:
My Pi isn't fast enough to do software decoding & tvh can't utilise the hardware decoder (yet?). I suspect it's possible using transcode spawn to an external app that can do both decode & encode. I have yet to try it, but I don't see why it won't work.
Could anybody explain what --enable-omx does?
I would suppose that this option would use hardware encoding using ffmpeg's builtin support for omx.
But I was never able to get it work. Either there is no video stream in the output mkv (in that case i get
Oct 17 19:50:17 kmxbilr2 dvr: 1 H264 1280x720 16:9 <disabled, no valid input>
in the log [1]) or the video stream is just copied into the mkv
Thanks
Updated by Mark Clarkstone almost 7 years ago
I thought I'd give this another try, but it's still broken.
I captured some logs here: http://termbin.com/pfcp / http://termbin.com/sg2j
Updated by Mark Clarkstone about 6 years ago
Update - OK so HARDWARE transcoding DOES work on Pi - the with a recent ffmpeg/libav install - but only for 4.2. Something with the changes to transcoding in 4.3 breaks it, what, I have no idea.
To build..
- Clone release/4.2 branch
git clone -b release/4.2 git://github.com/tvheadend/tvheadend.git
- Install the following.. libavfilter-dev libswresample-dev libavresample-dev libswscale-dev libavformat-dev libavcodec-dev libavutil-dev libav-dev libx264-dev libopus-dev
sudo apt install libavfilter-dev libswresample-dev libavresample-dev libswscale-dev libavformat-dev libavcodec-dev libavutil-dev libav-dev libx264-dev libopus-dev
- Configure as follows..
./configure --disable-ffmpeg_static --disable-libfdkaac_static --disable-libopus_static --disable-libtheora --disable-libtheora_static --disable-libvorbis_static --disable-libvpx_static --disable-libx264_static --disable-libx265_static --enable-libav --enable-libfdkaac --enable-libopus --enable-libvorbis --enable-libx264 --disable-libvpx --disable-libx265 --enable-mmal --enable-omx
- Run it
./build.linux/tvheadend -c /tmp/tvh --noacl
ormake install
- Configure transcode profile to use h264_omx, and stream!
Updated by Klara Jansen about 6 years ago
I am using Raspbian Stretch and use the following command on the latest git commit:
AUTOBUILD_CONFIGURE_EXTRA="--enable-omx --disable-libx265 --disable-libvpx" ./Autobuild.sh -t raspbianstretch-armhf
Works perfectly!
Updated by Ledow Ledow about 6 years ago
I can confirm that this does indeed work with today's git-head (I'm using Raspbian via RetroPie on a RPi 3B+ and Mark Clarkstone's instructions work for me, with some config-path tweaking).
I can transcode live TV to the web interface now. Load average is 2.5 - 3.0 (on a 4-core ARM) when transcoding SD DVB-T as blow:
transcode: 0009: 1:MPEG2VIDEO 704x576 > H264 704x576 (h264_omx)
transcode: 0009: 2:MPEG2AUDIO > AAC (aac)
transcode: 0009: Using preset fast
libav: Using OMX.broadcom.video_encode
Thanks, Mark!
Updated by Kokotoni Wilf about 6 years ago
Mark Clarkstone wrote:
Update - OK so HARDWARE transcoding DOES work on Pi - the with a recent ffmpeg/libav install - but only for 4.2. Something with the changes to transcoding in 4.3 breaks it, what, I have no idea.
To build..
- Clone release/4.2 branch [...]
- Install the following.. libavfilter-dev libswresample-dev libavresample-dev libswscale-dev libavformat-dev libavcodec-dev libavutil-dev libav-dev libx264-dev libopus-dev [...]
- Configure as follows.. [...]
- Run it [...] or [...]
- Configure transcode profile to use h264_omx, and stream!
I tried your approach with 4.2.6. When streaming with codec h264_omx I get the errors:
2018-12-10 19:53:32.066 [ INFO]:transcode: 0001: 1:MPEG2VIDEO 720x576 > H264 300x240 (h264_omx)
2018-12-10 19:53:32.067 [ INFO]:transcode: 0001: 2:MPEG2AUDIO > Passthrough
2018-12-10 19:53:32.222 [ INFO]:transcode: 0001: Using preset ultrafast
2018-12-10 19:53:32.223 [ ERROR]:libav: Undefined constant or missing '(' in 'high'
2018-12-10 19:53:32.223 [ ERROR]:libav: Unable to parse option value "high"
2018-12-10 19:53:32.224 [ ERROR]:libav: Error setting option profile to value high.
2018-12-10 19:53:32.224 [ ERROR]:transcode: 0001: Unable to open h264_omx encoder
(I know that omx does not support presets. But tvhead forces to choose one.
Also in transcode.c there is an explicit force to profile (which makes the first errors).
Any ideas ?
thanks
Updated by Robert Nagy almost 6 years ago
- File tvheadend_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.buildinfo tvheadend_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.buildinfo added
- File tvheadend_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.changes tvheadend_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.changes added
- File tvheadend_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.deb tvheadend_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.deb added
- File tvheadend-dbg_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.deb tvheadend-dbg_4.2.7-39~g7e960a8a9~raspbianstretch_armhf.deb added
Mark Clarkstone wrote:
Update - OK so HARDWARE transcoding DOES work on Pi - the with a recent ffmpeg/libav install - but only for 4.2. Something with the changes to transcoding in 4.3 breaks it, what, I have no idea.
To build..
- Clone release/4.2 branch [...]
- Install the following.. libavfilter-dev libswresample-dev libavresample-dev libswscale-dev libavformat-dev libavcodec-dev libavutil-dev libav-dev libx264-dev libopus-dev [...]
- Configure as follows.. [...]
- Run it [...] or [...]
- Configure transcode profile to use h264_omx, and stream!
Hi Mark.
Thanks for the instruction. Unfortunately, it is not working for me :(. I tried a lot of times, different versions etc. I don't know what is the problem. Can someone please make me a deb (rpi 3 debian 9.6) from ffmpeg and tvheadend, which are working. I think the problem is with the ffmpeg, I tried a few differendt version to build, everything working, but the resoult are same, nothing happening when I try to use mmal and/or omx.
I attached tvheadend de if someone need it.
Thanks so much.