gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Thu Oct 20, 2016 11:06 am

gigo1988 wrote:I ve seen a mistake by the audio video sync if you dont transcode audio. It will stop for a moment every 5 seconds by transcoding a 1080i stream.
I'm doing that all the time: 1080i both with audio transcoding and without. I've never had a problem with that.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Sat Oct 22, 2016 11:22 pm

Hi everybody,

did anyone try to transcode with vlc on a pi but with a hardware accelerated? Or you gkreidl?

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Sun Oct 23, 2016 1:50 am

gigo1988 wrote:Hi everybody,

did anyone try to transcode with vlc on a pi but with a hardware accelerated? Or you gkreidl?
Not possible (HW acceleration).
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 10:46 am

Did anyone know why i get sometimes error that transcode.py start to stream and remove it? The Original source is availible and my script works fine. by this failure i ve to restart the skript manually.

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 11:16 am

gigo1988 wrote:Did anyone know why i get sometimes error that transcode.py start to stream and remove it? The Original source is availible and my script works fine. by this failure i ve to restart the skript manually.
I've seen this happen but only on rare occasions. In my web application I have a "restart" button which stops and starts the stream with the same settings.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 11:19 am

Is it possible if this happens, that it abort transcode.py because than could restart my script transcode.py automaticly

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 11:41 am

gigo1988 wrote:Is it possible if this happens, that it abort transcode.py because than could restart my script transcode.py automaticly
Transcode.py finishes when it starts transcoding. It is replaced by http-launch, the transcoding server. Your script could check from time to time if http-launch is running (using pgrep, for example) and restart transcode.py.
You could also use http-launch directly, but it requires a lot of parameters. To get them after starting it with transcode.py, open a second terminal after starting the stream with transcode,py and run
ps -A -F --width=1000
It will show you the whole http-launch command line.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 12:44 pm

by checking it with ps i can see http launch. is it possible to integrate idle process restart in it?

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 1:05 pm

gigo1988 wrote:by checking it with ps i can see http launch. is it possible to integrate idle process restart in it?
I'm not sure what you mean.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 1:19 pm

if i check http launch via "ps -A -F --width=1000" i can see it every time.
But if i type "top" i cant see http-launch. Only after restart "transcode.py" and after a while the same isue that i cant see the transcoded stream.

now i get this error

Code: Select all


(http-launch:1794): GStreamer-CRITICAL **: gst_caps_is_equal: assertion 'GST_IS_                                                                                                                                                             CAPS (caps1)' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_caps_get_structure: assertion 'GS                                                                                                                                                             T_IS_CAPS (caps)' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_structure_has_field: assertion 's                                                                                                                                                             tructure != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_                                                                                                                                                             object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'min                                                                                                                                                             i_object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_                                                                                                                                                             object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_caps_get_structure: assertion 'GS                                                                                                                                                             T_IS_CAPS (caps)' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_structure_has_field: assertion 's                                                                                                                                                             tructure != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'min                                                                                                                                                             i_object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_                                                                                                                                                             object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_caps_get_structure: assertion 'GS                                                                                                                                                             T_IS_CAPS (caps)' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_structure_has_field: assertion 's                                                                                                                                                             tructure != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'min                                                                                                                                                             i_object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_                                                                                                                                                             object != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_caps_get_structure: assertion 'GS                                                                                                                                                             T_IS_CAPS (caps)' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_structure_has_field: assertion 's                                                                                                                                                             tructure != NULL' failed

(http-launch:1794): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'min                                                                                                                                                             i_object != NULL' failed

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 2:16 pm

http-launch will start streaming after the first client connects. It will not appear in top, before it starts to stream. It will continue to stream, when all clients disconnect, while waiting for other clients to connect - and it will also appear in top.
I cannot say anything about the error messages. gstreamer is still a big mystery to me and a lot of things did not work the way I expected them to work. Getting transcoding to work required a lot of trial and error.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Mon Oct 24, 2016 2:23 pm

yes while i try to connect it isnt on the top but it have to :D

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Wed Oct 26, 2016 10:31 am

Now i get this error

Code: Select all

Error Server does not support seeking.

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Wed Oct 26, 2016 11:04 am

gigo1988 wrote:Now i get this error

Code: Select all

Error Server does not support seeking.
A live steam doesn't support seeking.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Tue Nov 15, 2016 10:28 am

Hi at all.
I´ve a new question. While http-launch run the stream work fine. if the source have some mistakes, http-launch get idle. Now i want to kill this because i can see it by typing ps -A. Anyone a idea?

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Tue Nov 15, 2016 12:51 pm

gigo1988 wrote:Hi at all.
I´ve a new question. While http-launch run the stream work fine. if the source have some mistakes, http-launch get idle. Now i want to kill this because i can see it by typing ps -A. Anyone a idea?
You should see it in ps -A.
killall http-launch should work, also CTRL-C from the terminal which started transcode.py.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Sat Nov 26, 2016 11:44 am

hi @all

in the last few weeks i was locking for new solutions for our pi´s :D I´ve found, that its possible to decode hwaccelrated with ffmpeg and encode with omx codec and filter it with yadif. I try it and was able to get 60 fps with only bitrate compression by 720p. with deinterlace on 720p 30fps but the cpu was by over 100%. Then i try it with 1080p without deinterlace only bitrate reduce 30 fps. If we are able to transcode with gkreidl solution and could get 50 FPS by 720p and resizing which need resources too. Than i think that there must be a way to put a filter in your package and deinterlace it without resizing.

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Sat Nov 26, 2016 11:58 am

and i´ve seen if we decode with mmal it will deinterlace already the source 2x

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Sat Nov 26, 2016 1:01 pm

Having a GPU/QPU based deinterlacer as gst-module (or function in gst-omx) - similar to omxplayer - would be great. It tried using the deinterlacers in gstreamer1.0 without success.

But if you offer other solutions (based on ffmpeg, for example), create a new thread, please.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Wed Nov 30, 2016 4:48 pm

Thanky you gkreidl. A other idea which will be great and possible i think. To run a second pi as like a server which only deinterlace and were every stream will in on one pi. Sorry for my english.

gigo1988
Posts: 41
Joined: Wed Sep 07, 2016 11:38 pm

Re: Real Time Transcoding of DVB TV Streams

Mon Dec 19, 2016 12:33 am

Because its amazing i try a lot of thing with the pi. But i´ve recognized sometimes, that if i try to transcode that the http-launch runs but it wouldnt run really. after some restart then it will work. If i try to stop to launch the not running transcode http-launch transcode but there isnt any connection to the stream. i think it will stop while no connection to the stream.

xses
Posts: 5
Joined: Thu Jan 26, 2017 8:20 am

Re: Real Time Transcoding of DVB TV Streams

Thu Jan 26, 2017 8:26 am

Hello,
this project is very interesting. However I have a question that isn't clear to me. Is it possible in any way to start and stop the transcoding from a mobile client? I'm trying to use my mobile device to select and open a transcoded stream like an iptv app.
Open the app, select the channel and view the transcoded stream. Is that even possible or do I have to start it by hand every time with console?

Thanks in advance,
xses

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Thu Jan 26, 2017 11:45 am

xses wrote:Hello,
this project is very interesting. However I have a question that isn't clear to me. Is it possible in any way to start and stop the transcoding from a mobile client? I'm trying to use my mobile device to select and open a transcoded stream like an iptv app.
Open the app, select the channel and view the transcoded stream. Is that even possible or do I have to start it by hand every time with console?

Thanks in advance,
xses
No, not with the current version.
But: in fact, that's what I'm doing myself. It's part of a larger application which has a web interface. I can select channels, set a lot of options and start / restart / stop streams.
This project, a Sat-TV-Server based on mumudvb, is not ready for publication and I'm not sure if it ever will be. I once published a German version in the German language part of the forum, configured for German ASTRA channels, which is rather obsolete now, because those damned channels are changing all the time.
From the reports I got I learned that most people (using tvheadend or vdr already) were mainly interested in the transcoding part. That's why I created this transcoding package for general use. I'm considering adding a web interface in the future, but I haven't even started that yet.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

xses
Posts: 5
Joined: Thu Jan 26, 2017 8:20 am

Re: Real Time Transcoding of DVB TV Streams

Thu Jan 26, 2017 4:23 pm

Thanks for the reply. So it means i could use this transcoder with tvh?

Grüße,
xses :)

gkreidl
Posts: 5760
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Real Time Transcoding of DVB TV Streams

Thu Jan 26, 2017 4:40 pm

xses wrote:Thanks for the reply. So it means i could use this transcoder with tvh?

Grüße,
xses :)
Yes, if you set up tvh to send raw ts streams (not its native format). I have never used it myself, but quite a lot of people have reported back to me that they got it to work.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

Return to “Graphics, sound and multimedia”