Mosaik Outputs flackern

  • Hallo Markus,


    das ruckeln der Sender kann aus meiner Sicht an einem schwächeren HF-Signal im Breitbandkabel bei Frequenzen über 700 MHz liegen, so dass im Empfangsteil des Kabel-Netzwerktuners das Rundfunksignal des Programms eine zu schlechte Qualität hat für die Weiterverarbeitung. Möglich wäre auch eine Störung der im Breitbandkabel verbreiteten Rundfunksignale durch den Mobilfunk (LTE im 800 MHz-Bereich). Hier helfen Antennenkabel mit einem hohem Schirmungsmaß.


    Man könnte in der Kabelkopfstation des Breitbandkabels die für den Motorsport verbreiteten Programme von der Frequenz 802 MHz in einen niedrigeren, freien TV-Kanal unterhalb 700 MHz verlagern.


    Evtl. kann der Betreiber der Kabelanlage die im Breitbandkabel eingesetzten Signalverstärker frequenzabhängig anpassen, also die Signal-Verstärkung bei höheren Frequenzen etwas anheben.


    Im einfachsten Fall muss man nur das Antennenkabel für den Signaleingang des Kabel-Netzwerktuners gegen ein höherwertigeres Antennenkabel, mit niedrigerer Signaldämpfung bei hohen Frequenzen und einem hohem Schirmungsmaß >90dB austauschen. Vor allem bei Störungen von außen, also z.B. Mobilfunk mit LTE.


    Beispiel für ein konfektioniertes Antennenkabel mit hohem Schirmungsmaß gegen Störungen von außen (z.B. durch LTE im 800 MHz-Bereich):
    https://www.conrad.de/de/anten…weiss-vivanco-396317.html (hier fehlt mir die Angabe der Signaldämpgung bei hohen Frequenzen)


    MfG
    Thomas

  • Hallo Thomas,


    danke für Deine Antwort.
    Was ich jedoch nicht verstehe: Wieso funktionieren die Sender, wenn ich kein Mosaik verwende? Falls es Störungen von außen geben sollte, dann müsste dieses Bild doch auch flackern?


    Viele Grüße,
    Markus

  • Hallo Markus,


    man könnte versuchen, ob die beiden anderen Mosaic-Varianten mit den Sport-Programmen die gleichen Probleme machen, wie mit der VLM-Variante.


    Die Lösung vom Forum-Mitglied "prostream" arbeitet mit vier einzelnen VLC-Instanzen und benötigt vermutlich die geringste Rechenleistung von den drei Mosaic-Varianten. Wie sieht hier das Ergebnis für die Programmwiedergabe aus?


    Wie verhält sich das html-Mosaic?


    Woher kommen die Programme auf den "MPEG-AV Slots 1 bis 6"?


    Hast Du das Antennenkabel für den Kabel-Netzwerktuner ausgetauscht?


    Mehr Ideen habe ich im Moment leider nicht.


    MfG
    Thomas

  • Hi Thomas,


    Die Programme "MPEG-AV Slots 1 bis 6" sind die TV-Namen, auf denen das Timing gesendet wird. Am Nürburgring heißen sie z.B. "NBR-TV1". Diese Kanäle werden dann angezeigt, wenn man einen Sendersuchlauf gemacht hat.
    Ich kann das html-Mosaic leider erst morgen oder übermorgen testen. Ich werde Dir sofort Rückmeldung geben, genauso wie mit der Lösung von "prostream".


    Viele Grüße,
    Markus

  • Hello,


    I have a problem with the mosaics high resolution.


    With a HD windows, all is good; with Full HD, the video is jerky, but continued; the visual fps is around 5.


    It's surprising with a CPU busy around 30 %; here is the VLM file used, with VLC 2.2.6:


    del all


    new BG broadcast enabled


    setup BG input file:///"D:\...-1920x1080.png" option image-fps=0 option image-duration=-1

    setup BG output #transcode{vcodec=mp4v,acodec=none,scale=auto,vb=5000,fps=0,sfilter=mosaic{width=1920,height=1080,keep-picture,position=2,offsets="0,0,960,0,0,540,960,540",cols=0,rows=0,order="1,2,3,4"}}:display


    new C1 broadcast enabled

    setup C1 input file:///"D:\...-1280x720.mp4"

    setup C1 output #mosaic-bridge{id=1,width=960,height=540}

    setup C1 loop


    new C2 broadcast enabled

    setup C2 input file:///"D:\...-1280x720.mp4"

    setup C2 output #mosaic-bridge{id=2,width=960,height=540}

    setup C2 loop


    new C3 broadcast enabled

    setup C3 input file:///"D:\...-1280x720.mp4"

    setup C3 output #mosaic-bridge{id=3,width=960,height=540}

    setup C3 loop


    new C4 broadcast enabled

    setup C4 input file:///"D:\Films\...-1280x720.mp4"

    setup C4 output #mosaic-bridge{id=4,width=960,height=540}

    setup C4 loop


    control BG play

    control C1 play

    control C2 play

    control C3 play

    control C4 play


    The bottleneck seem to be at the input level; I have tried to delete sound, to modify file-caching, and the using of GPU, without positive result.

    On this forum, the resolutions of mosaic are always lower; is the resolution of my example too high for VLC?

    Thanks for advance for your reply.


    Kind regards.

    Edmund

  • Hello Edmund,


    please notice this is a german speaking forum.

    The english speaking forum you can find here: https://forum.videolan.org.


    I make an exeption for this mosaic command line example.

    The bottleneck is the processing power of your computer.


    My command line example works fine with the VLC Version 2.2.8 (32-Bit).

    With the VLC Versions 3.0.0 (32-Bit and 64-Bit) I always get an application error.


    In my command line example are some small changes (--fullscreen, --qt-start-minimized, vb=10000, other input signal) compared to your example.

    To leave the fullscreen view double click the mouse.


    You can find the command line help in the next link.

    - https://wiki.videolan.org/VLC_command-line_help/


    cmd (*.bat) example for 32-Bit VLC-Version 2.2.8 (the *.vlm-File is saved in C:\temp\):

    Code
    1. @echo off
    2. start "" "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" --qt-start-minimized --color --fullscreen --vlm-conf C:\Temp\TV-Mosaic-2018.vlm --mosaic-width=1920 --mosaic-height=1080 --mosaic-keep-picture --mosaic-rows=2 --mosaic-cols=2 --mosaic-position=1 --mosaic-order=1,2,3,4

    *.vlm example (the background image is saved in C:\Temp\...):

    The *.bat, the *.vlm file uand the background image will attached. Delete the *.txt at the end of both files after download.


    Kind Regards

    Thomas

  • Hello Thweiss,


    Danke schön.


    Videolan is lacking in informations; I am obliged to surf on the videolan forums; sorry, your forum is the best! with true replies, and the only where I wanted to subscribe.


    "My command line example works fine with the VLC Version 2.2.8 (32-Bit). With the VLC Versions 3.0.0 (32-Bit and 64-Bit) I always get an application error."


    This news is not happy; are-you searching another method for the last version of VLC?


    Thanks in advance for your reply.


    Kind regards.


    Edmund

  • Hello Edmund,


    many thank's for the top rating.


    The next example works fine with the VLC-Version 3.0.0 (64-Bit) and achieve the same Mosaic-View, as the other example for VLC-Version 2.2.8.


    Command line Example for an other mosaic-View with VLC-Version 3.0.0 (64-Bit):

    Code
    1. @echo off
    2. start "" "C:\Program Files\VideoLAN\VLC\vlc.exe" --no-video-deco --no-embedded-video --video-x=1 --video-y=1 --qt-start-minimized --no-video-title-show --zoom=0.75 --noaudio "https://liveprodeuwest.global.ssl.fastly.net/btv/desktop/eu_live.m3u8"
    3. start "" "C:\Program Files\VideoLAN\VLC\vlc.exe" --no-video-deco --no-embedded-video --video-x=961 --video-y=1 --qt-start-minimized --no-video-title-show --zoom=1.1241 --noaudio "http://bcliveuniv-lh.akamaihd.net/i/news_1@194050/master.m3u8"
    4. start "" "C:\Program Files\VideoLAN\VLC\vlc.exe" --no-video-deco --no-embedded-video --video-x=1 --video-y=540 --qt-start-minimized --no-video-title-show --zoom=0.75 --noaudio "https://rbtvdiglinear-i.akamaihd.net/hls/live/241719/ATfallback/master.m3u8"
    5. start "" "C:\Program Files\VideoLAN\VLC\vlc.exe" --no-video-deco --no-embedded-video --video-x=961 --video-y=540 --qt-start-minimized --no-video-title-show --zoom=0.75 --noaudio "http://bcoveliveios-i.akamaihd.net/hls/live/217434/3083279840001/master.m3u8"


    I also attached the File for downloading. Delete the *.txt at the end of the file after download.


    Kind regards.

    Thomas

  • Hello Thweiss,


    Danke schön - WONDERFUL METHOD - Danke schön.


    Your method (I didn't know) is better than mosaic for all : performance, display, and fps.

    With an Asus ROG, core I7, SSD, screen Full HD 48 inches, for the example, I obtain:

    - a true fps=30, identical at the videos, instead of 5 to 10 with mosaic;

    - CPU: 23 %,very lower; GPU: 50 % (half VLC, half Desktop Windows Manager),a few upper.


    Your batch is perfect; only some very little problems:

    - the "subpictures" are not synchronised in the same window; if several process are running, some "subpictures" may be hidden; my solution, in the batch below, is a PowerShell command for minimize all the active windows;

    - to kill all the instances running of VLC, we need a serial killer! My bad solution, in the batch above, is a Taskkill; it would be better to terminate each instance with Ctrl+q; I have not yet found the method in a single line of command of PowerShell (Get-Process VLC* | Foreach-Object { $_.CloseMainWindow() | ... } | ... SendKeys Ctrl+Q);

    - the taskbar is not hiding in the same way as with FullScreen; it's not important; when I will have a few minutes, I will look for getting a temporary floating taskbar.


    A big progress with your method is the possibility to choose easily the audio to play.


    Here is your customised batch:


    @echo off


    set "PathVlc=C:\Program Files (x86)\VideoLAN\VLC\"

    set "PathVideo=D:\...\"

    set "Opt-0=--no-one-instance --no-one-instance-when-started-from-file --repeat --no-video-deco --no-embedded-video --qt-start-minimized --no-video-title-show"

    set "Opt-1=--noaudio" &rem Delete this option to obtain audio with any video (here, the first).


    powershell (New-Object -ComObject Shell.Application).MinimizeAll() &rem Minimize all opened windows (likewise with WinKey+D).


    start "" "%PathVlc%vlc.exe" %Opt-0% --video-x=1 --video-y=1 --zoom=0.5 "%PathVideo%...-1280x720.mp4"

    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% --video-x=961 --video-y=1 --zoom=0.75 "%PathVideo%...-1280x720.mp4"

    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% --video-x=1 --video-y=540 --zoom=0.75 "%PathVideo%...-1280x720.mp4"

    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% --video-x=961 --video-y=540 --zoom=0.75 "%PathVideo%...-1280x720.mp4"


    pause


    rem Select cmd and strike any key to quit all instances of VLC.

    taskkill /IM VLC* /f


    Thanks for your work.


    Kind regards.

    Edmund

  • Hello Edmund,


    many thanks for your great PowerShell command.

    The Idea to select or unselect the audio trace with two options ("Opt-0=" / "Opt-1=") I find awesome.


    Now I could adapted your PowerShell for the next cmd-example.


    cmd-example for VLC-Version 3.0.0 (64-Bit):


    Relating to the not synchronised "subpictures" VLC is missing an solution for Video-Synchronisation.

    I wrote a Feature Request for Video-Synchronisation with a Video-Wall Example.

    LinK: https://forum.videolan.org/viewtopic.php?f=7&t=141532



    I also do not find a better way to stop any VLC-Processes.

    Your cmd taskkill /IM VLC* /f works fine to stop any VLC-Processes.


    Kind regards.

    Thomas

  • Hello Thweiss,


    Thank you for your reply.


    For the end of the batch (I don't like an hard Taskkill), I suggest :

    echo Strike any key to quit mosaic

    pause >null


    rem Select cmd and strike any key to quit all instances of VLC.

    powershell $WS=New-Object -ComObject wscript.shell; While($WS.AppActivate('VLC (Direct3D output)')){Sleep 1; $WS.SendKeys('$')}


    You must add --key-quit=$ in Opt-0.


    Remarks:

    AppActivate need the exactely title (no wildcard character permitted); the order of activation is random; with an other object, and others applets, it's possible to exactely choose;

    The duration of Sleep (in seconds) may be reduced, but slowly; if another process has a very higher priority, the SendKeys will be for him! To be sure, you must use [System.Windows.Forms.SendKeys]::SendWait("^{q}"), needless complication here.


    The PowerShell command above may be usefull to activate hotkeys of VLC; I have tried to modify the sound level, and it's ok; but, you cannot choose the instance.


    It's very difficult to catch a serial killer! Explanations:

    my first SendKeys was SendKeys("^q"), ^ is the character to simulate the Control Key; it's well for PowerShell Windows but, without effect here; perhaps that the reason is the filtering of Ctrl, used by cmd; I have tried SendKeys([char]94+'q'), and... it's good ! (94 is the ASCII code for ^).

    I have tried SendKeys('%{F4}') with Notepad; it's good; I have also tried with VLC (key-quit=Alt+F4); no result; for me, the reason is that VLC is waiting for the external coding of Alt+F4, and I send the internal coding.

    To finish, I am very suspicious of the programming tricks, I have choosen a typographic character, unused as hotkey by VLC.


    Thanks for your responsiveness.


    Kind regards.

    Edmund

  • Hello Edmund,


    sorry for my late answer.

    I tested your suggestions and have no success to close the vlc-instances with a key or key-combination.


    But I find for the powershell console the parameter Stop-process -name vlc.

    This works fine to close any vlc-instances.

    Look at Printscreen "PowerShell-Stop-Process.png"



    The question is, how to implement Stop-Process -name vlc in the Command-Line or find the serial killer?


    Kind regards.

    Thomas

  • Hello Thweiss,


    Thank you for your reply.


    Your late answer is not a problem; like jb, my evenings are very busy, but not for the same reasons!

    I am looking for a perfect achievement of your wonderfull batch command; I want to select the audio with, only, the move of the mouse cursor on the sub-picture!


    For an easy maintenance, I mix PowerShell commands in the batch; now, all the elementary actions are good, and I have a programming tip to communicate easily between batch and PowerShell.

    I think about your problem of synchronisation; perhaps that you will find some ways to solve it; I take the control of each "sub-picture" with the PID (Process id), and the control of the entire screen, detecting the coordonates of the mouse cursor, anywhere.


    My last command is well working on my computer, with VLC 2.2.6; for me, it's not a version problem that you have:

    - your website has cutted my last line in two; warning,

    powershell $WS=New-Object...Direct3D output)')){Sleep 1; $WS.SendKeys('$')} must be like here, in one line;

    - in the german version of VLC, the title of the "sub-pictures" is it 'VLC (Direct3D output)'? if not, you have to update my command;

    - I cannot test the hotkey to quit in the version 3; it's easy to verify; by the Preferences, you can give $ for hotkey to quit, and test it manualy.


    I hope that these remarks will permit you to enjoy of the serial killing; if not, you can send to me an echo log.


    I don't like Taskkill, and PowerShell Stop-process (generaly Forced to stop); the main reason is the accumulating of temporary files; often, the process have no time to delete.

    I send again the batch command, with playlists.


    @echo off


    set "PathVlc=C:\Program Files (x86)\VideoLAN\VLC\"

    set "PathVideo=D:\...\"

    set "Opt-0=--key-quit=$ --no-one-instance --no-one-instance-when-started-from-file --loop --no-embedded-video"

    set "Opt-1=--qt-start-minimized --no-qt-video-autoresize --zoom=0.75 --no-video-deco --no-video-title-show"

    set "Opt-2=--noaudio" &rem Delete this option to obtain audio with any video (here, the first).


    rem --width and --height are not working - BUG VLC; no solution for a loop with multiple video resolutions.


    Title VLC - Mosaic

    powershell (New-Object -ComObject Shell.Application).MinimizeAll() &rem Minimize all opened windows (likewise with WinKey+M).


    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% --video-x=1 --video-y=1 "%PathVideo%... .xspf"

    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% %Opt-2% --video-x=961 --video-y=1 "%PathVideo%... .xspf"

    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% %Opt-2% --video-x=1 --video-y=541 "%PathVideo%... .xspf

    start "" "%PathVlc%vlc.exe" %Opt-0% %Opt-1% %Opt-2% --video-x=961 --video-y=541 "%PathVideo%... .xspf


    echo Strike any key to quit mosaic

    pause >null


    rem Select cmd and strike any key to quit all instances of VLC.

    powershell $WS=New-Object -ComObject wscript.shell; While($WS.AppActivate('VLC (Direct3D output)')){Sleep 1; $WS.SendKeys('$')}


    Thanks for your kindness.

    Kind regards.


    Edmund

  • Hello Edmund,


    thank you again for the new batch command.


    Perhaps you can upload the batch command as *.txt file in the Web-Editor to avoid the two warnings.

    First klick bottom "Dateianhänge" an then the Upload-Button "Hochladen".


    An attached file is easier to test the batch command.

    I hope that I can follow your hints.


    Need some Time for testing.


    Thanks for the Moment.


    Kind regards.

    Thomas

  • Hello Thweiss,


    I worked a lot with VLC; all my mosaics are converted to your method.

    The most wonderful is the possibility, for any subpicture, to toggle subpicture - full screen- subpicture by striking the kotkey F.


    To select the audio with, only, the move of the mouse cursor on the subpicture, the program is ended but, I have a problem; I cannot set the focus to any subpicture, excepted for the first who have the focus by default.

    My hotkey is well received by any subpicture but, the only result is the blinking of the icon in the taskbar.

    For each subpicture, I got the Process id, the hWnd of the MainWindow; I have tried AppActivate, SetForegroundWindow, and Set Focus without result.

    If you know a specialist in PowerShell of cmd, thanks for advance for the transmission of my problem.


    Thanks for your kindness.


    Kind regards.

    Edmund

  • Hello Thweiss,


    Thank you very much for your links; I have progressed but I tap on a big wall!

    To send a hotkey to one instance of VLC, I need to use SetForegroundWindow with the handle of the child window.

    But, this function works only if the batch has the focus; after the start command for a subwindow, the batch loses the focus; I have tried AppActivate and other commands; IMPOSSIBLE.


    After very much evenings of work, I'm giving up the choose, by the mouse, of the subpicture selectionned for the audio.

    If somebody has an answer for this problem, it's would be very well; everything else of my program is terminated.


    Thanks for your kindness.


    Kind regards.

    Edmund

  • Hello Edmund,

    thank you for the Commandline Example, which helps to write a more consolidated Code.
    Specific for larger Mosaic-Views with more than four Video's in one Screen it's an benefit.

    Until now I don't get your last Message. Perhaps you can write a Personale Message in the VLC-Forum in the Konversation menue.
     
    Could the stackoverflow-Experts help to find a working solution with a PowerShell-Script?

    Kind Regards.
    Thomas