Recherche avancée

Médias (3)

Mot : - Tags -/plugin

Autres articles (76)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (8916)

  • Fighting with the VP8 Spec

    4 juin 2010, par Multimedia Mike — VP8

    As stated in a previous blog post on the matter, FFmpeg’s policy is to reimplement codecs rather than adopt other codebases wholesale. And so it is with Google’s recently open sourced VP8 codec, the video portion of their Webm initiative. I happen to know that the new FFmpeg implementation is in the capable hands of several of my co-developers so I’m not even worrying about that angle.

    Instead, I thought of another of my characteristically useless exercises : Create an independent VP8 decoder implementation entirely in pure Python. Silly ? Perhaps. But it has one very practical application : By attempting to write a new decoder based on the official bitstream documentation, this could serve as a mechanism for validating said spec, something near and dear to my heart.

    What is the current state of the spec ? Let me reiterate that I’m glad it exists. As I stated during the initial open sourcing event, everything that Google produced for the initial event went well beyond my wildest expectations. Having said that, the documentation does fall short in a number of places. Fortunately, I am on the Webm mailing lists and am sending in corrections and ideas for general improvement. For the most part, I have been able to understand the general ideas behind the decoding flow based on the spec and am even able to implement certain pieces correctly. Then I usually instrument the libvpx source code with output statements in order to validate that I’m doing everything right.

    Token Blocker
    Unfortunately, I’m quite blocked right now on the chapter regarding token/DCT coefficient decoding (chapter 13 in the current document iteration). In his seminal critique of the codec, Dark Shikari complained that large segments of the spec are just C code fragments copy and pasted from the official production decoder. As annoying as that is, the biggest insult comes at the end of section 13.3 :

    While we have in fact completely described the coefficient decoding procedure, the reader will probably find it helpful to consult the reference implementation, which can be found in the file detokenize.c.

    The reader most certainly will not find it helpful to consult the file detokenize.c. The file in question implements the coefficient residual decoding with an unholy sequence of C macros that contain goto statements. Honestly, I thought I did understand the coefficient decoding procedure based on the spec’s description. But my numbers don’t match up with the official decoder. Instrumenting or tracing macro’d code is obviously painful and studying the same code is making me think I don’t understand the procedure after all. To be fair, entropy decoding often occupies a lot of CPU time for many video decoders and I have little doubt that the macro/goto approach is much faster than clearer, more readable methods. It’s just highly inappropriate to refer to it for pedagogical purposes.

    Aside : For comparison, check out the reference implementation for the VC-1 codec. It was written so clearly and naively that the implementors used an O(n) Huffman decoder. That’s commitment to clarity.

    I wonder if my FFmpeg cohorts are having better luck with the DCT residue decoding in their new libavcodec implementation ? Maybe if I can get this Python decoder working, it can serve as a more appropriate reference decoder.

    Update : Almost immediately after I posted this entry, I figured out a big problem that was holding me back, and then several more small ones, and finally decoded by first correct DCT coefficient from the stream (I’ve never been so happy to see the number -448). I might be back on track now. Even better was realizing that my original understanding of the spec was correct.

    Unrelated
    I found this image on the Doom9 forums. I ROFL’d :



    It’s probably unfair and inaccurate but you have to admit it’s funny. Luckily, quality nitpickings aren’t my department. I’m just interested in getting codecs working, tested, and documented so that more people can use them reliably.

  • HLS video not playing in Angular using Hls.js

    5 avril 2023, par Jose A. Matarán

    I am trying to play an HLS video using Hls.js in an Angular component. Here is the component code :

    


    import { Component, ElementRef, ViewChild, AfterViewInit } from &#x27;@angular/core&#x27;;&#xA;import Hls from &#x27;hls.js&#x27;;&#xA;&#xA;@Component({&#xA;  selector: &#x27;app-ver-recurso&#x27;,&#xA;  templateUrl: &#x27;./ver-recurso.component.html&#x27;,&#xA;  styleUrls: [&#x27;./ver-recurso.component.css&#x27;]&#xA;})&#xA;export class VerRecursoComponent implements AfterViewInit {&#xA;  @ViewChild(&#x27;videoPlayer&#x27;) videoPlayer!: ElementRef<htmlvideoelement>;&#xA;  hls!: Hls;&#xA;&#xA;  ngAfterViewInit(): void {&#xA;    this.hls = new Hls();&#xA;&#xA;    const video = this.videoPlayer.nativeElement;&#xA;    const watermarkText = &#x27;MARCA_DE_AGUA&#x27;;&#xA;&#xA;    this.hls.on(Hls.Events.MEDIA_ATTACHED, () => {&#xA;      this.hls.loadSource(`http://localhost:8080/video/playlist.m3u8?watermarkText=${encodeURIComponent(watermarkText)}`);&#xA;    });&#xA;&#xA;    this.hls.attachMedia(video);&#xA;  }&#xA;&#xA;  loadVideo() {&#xA;    const watermarkText = &#x27;Marca de agua personalizada&#x27;;&#xA;    const video = this.videoPlayer.nativeElement;&#xA;    const hlsBaseUrl = &#x27;http://localhost:8080/video&#x27;;&#xA;&#xA;    if (Hls.isSupported()) {&#xA;      this.hls.loadSource(`${hlsBaseUrl}/playlist.m3u8?watermarkText=${encodeURIComponent(watermarkText)}`);&#xA;      this.hls.attachMedia(video);&#xA;      this.hls.on(Hls.Events.MANIFEST_PARSED, () => {&#xA;        video.play();&#xA;      });&#xA;    } else if (video.canPlayType(&#x27;application/vnd.apple.mpegurl&#x27;)) {&#xA;      video.src = `${hlsBaseUrl}/playlist.m3u8?watermarkText=${encodeURIComponent(watermarkText)}`;&#xA;      video.addEventListener(&#x27;loadedmetadata&#x27;, () => {&#xA;        video.play();&#xA;      });&#xA;    }&#xA;  }&#xA;}&#xA;</htmlvideoelement>

    &#xA;

    I'm not sure what's going wrong, as the requests to the playlist and the segments seem to be working correctly, but the video never plays. Is there anything obvious that I'm missing here ?

    &#xA;

    On the backend side, I have a Spring Boot application that generates and returns the playlist file, as you can see.

    &#xA;

    @RestController&#xA;public class VideoController {&#xA;    @Autowired&#xA;    private VideoService videoService;&#xA;&#xA;    @GetMapping("/video/{segmentFilename}")&#xA;    public ResponseEntity<resource> getHlsVideoSegment(@PathVariable String segmentFilename, @RequestParam String watermarkText) {&#xA;        String inputVideoPath = "/Users/jose/PROYECTOS/VARIOS/oposhield/oposhield-back/repo/202204M-20230111.mp4";&#xA;        String hlsOutputPath = "/Users/jose/PROYECTOS/VARIOS/oposhield/oposhield-back/repo/temporal";&#xA;        String segmentPath = Paths.get(hlsOutputPath, segmentFilename).toString();&#xA;&#xA;        if (!Files.exists(Paths.get(hlsOutputPath, "playlist.m3u8"))) {&#xA;            videoService.generateHlsStream(inputVideoPath, watermarkText, hlsOutputPath);&#xA;        }&#xA;&#xA;        // Espera a que est&#xE9; disponible el segmento de video necesario.&#xA;        while (!Files.exists(Paths.get(segmentPath))) {&#xA;            try {&#xA;                Thread.sleep(1000);&#xA;            } catch (InterruptedException e) {&#xA;                e.printStackTrace();&#xA;            }&#xA;        }&#xA;&#xA;        Resource resource;&#xA;        try {&#xA;            resource = new UrlResource(Paths.get(segmentPath).toUri());&#xA;        } catch (Exception e) {&#xA;            return ResponseEntity.badRequest().build();&#xA;        }&#xA;&#xA;        return ResponseEntity.ok()&#xA;                .contentType(MediaType.parseMediaType("application/vnd.apple.mpegurl"))&#xA;                .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" &#x2B; resource.getFilename() &#x2B; "\"")&#xA;                .body(resource);&#xA;    }&#xA;&#xA;    @GetMapping("/video/{segmentFilename}.ts")&#xA;    public ResponseEntity<resource> getHlsVideoTsSegment(@PathVariable String segmentFilename) {&#xA;        String hlsOutputPath = "/Users/jose/PROYECTOS/VARIOS/oposhield/oposhield-back/repo/temporal";&#xA;        String segmentPath = Paths.get(hlsOutputPath, segmentFilename &#x2B; ".ts").toString();&#xA;&#xA;        // Espera a que est&#xE9; disponible el segmento de video necesario.&#xA;        while (!Files.exists(Paths.get(segmentPath))) {&#xA;            try {&#xA;                Thread.sleep(1000);&#xA;            } catch (InterruptedException e) {&#xA;                e.printStackTrace();&#xA;            }&#xA;        }&#xA;&#xA;        Resource resource;&#xA;        try {&#xA;            resource = new UrlResource(Paths.get(segmentPath).toUri());&#xA;        } catch (Exception e) {&#xA;            return ResponseEntity.badRequest().build();&#xA;        }&#xA;&#xA;        return ResponseEntity.ok()&#xA;                .contentType(MediaType.parseMediaType("video/mp2t"))&#xA;                .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" &#x2B; resource.getFilename() &#x2B; "\"")&#xA;                .body(resource);&#xA;    }&#xA;</resource></resource>

    &#xA;

    package dev.mataran.oposhieldback.service;&#xA;&#xA;&#xA;import org.springframework.stereotype.Service;&#xA;&#xA;import java.io.BufferedReader;&#xA;import java.io.InputStreamReader;&#xA;&#xA;import java.util.concurrent.ExecutorService;&#xA;import java.util.concurrent.Executors;&#xA;&#xA;@Service&#xA;public class VideoService {&#xA;    private Process process;&#xA;    private ExecutorService executorService = Executors.newSingleThreadExecutor();&#xA;&#xA;    public void generateHlsStream(String inputVideoPath, String watermarkText, String outputPath) {&#xA;        Runnable task = () -> {&#xA;            try {&#xA;                if (process != null) {&#xA;                    process.destroy();&#xA;                }&#xA;&#xA;                String hlsOutputFile = outputPath &#x2B; "/playlist.m3u8";&#xA;                String command = String.format("ffmpeg -i %s -vf drawtext=text=&#x27;%s&#x27;:x=10:y=10:fontsize=24:fontcolor=white -codec:v libx264 -crf 21 -preset veryfast -g 50 -sc_threshold 0 -map 0 -flags -global_header -hls_time 4 -hls_list_size 0 -hls_flags delete_segments&#x2B;append_list -f hls %s", inputVideoPath, watermarkText, hlsOutputFile);&#xA;                process = Runtime.getRuntime().exec(command);&#xA;                BufferedReader reader = new BufferedReader(new InputStreamReader(process.getErrorStream()));&#xA;                String line;&#xA;                while ((line = reader.readLine()) != null) {&#xA;                    System.out.println(line);&#xA;                }&#xA;            } catch (Exception e) {&#xA;                e.printStackTrace();&#xA;            }&#xA;        };&#xA;        executorService.submit(task);&#xA;    }&#xA;}&#xA;

    &#xA;

  • Live streaming Channel Multiview used ffmpeg X11grab and shaka packager

    18 août 2020, par jgkim0518

    I have been trying to live stream channel multiview used xvfb, firefox, vlc, ffmpeg and shaka packager.&#xA;1). Making virtual display used Xvfb.&#xA;2). Popping up a web page used fireforx on 1).&#xA;3). Drawing nine video(each channel) used vlc plugin on 2).&#xA;4). Capturing 2) used ffmpeg library, x11grab.&#xA;5). Transcoding 4) to FHD(HEVC)+10 Audio(each channel sound + dummy), FHD(H.264)+no sound, HD(H.264)+no sound, SD(H.264)+no sound, nHD(H.264)+no sound&#xA;6). packaging 5) used Shaka Packager

    &#xA;

    This is my command. shell script

    &#xA;

    function exec-xvfb () {&#xA;$XVFB :$display_port -br -noreset -nolisten tcp -screen 0 1920x1080x24 &amp;}&#xA;&#xA;function exec-firefox () {&#xA;    AUDIO_CTRL_PATH="$audio_ctrl_port:/TEST/vlcenv/.sync.dat" VLC_INFO_PATH=/TEST/vlcenv/vlc_info.dat AUDIO_SHARE_KEY="$AUDIO_SHARE_KEY" AUDIO_SHARE_PATH=/TEST/vlcenv/.share.shm MOSAIC_META_PATH=/TEST/meta_bin.dat DISPLAY=":$display_port" $FIREFOX --display=:$display_port --no remote --profile /TEST/browser -width 1920 -height 1080 http://127.0.0.1:8021/template/best_channel_9_1/page/index.html &amp;&#xA;}&#xA;&#xA;function transcoder () {&#xA;    AUDIO_CTRL_PATH="$audio_ctrl_port:/TEST/vlcenv/.sync.dat" VLC_INFO_PATH=/TEST/vlcenv/vlc_info.dat &#xA;AUDIO_SHARE_KEY="$AUDIO_SHARE_KEY" AUDIO_SHARE_PATH=/TEST/vlcenv/.share.shm &#xA;MOSAIC_META_PATH=/TEST/meta_bin.dat DISPLAY=":$display_port" &#xA;LD_LIBRARY_PATH=/transcoder/lib:/transcoder/lib/cuda /transcoder/gpu/transcoder -y -re \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$trc_sync_port?dummy=1 \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;1)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;2)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;3)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;4)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;5)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;6)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;7)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;8)) \&#xA;    -analyzeduration 0 -f s16le -ar 48000 -ac 2 -pkt_size 128000 -i syc://@:$(($trc_sync_port&#x2B;9)) \&#xA;    -analyzeduration 0 -f x11grab -draw_mouse 0 -video_size 1920x1080 -framerate 29.97 -i :$display_port.0&#x2B;0,0,nomouse \&#xA;    -c:a libfdk_aac -ar:a 48000 -ac:a 2 -b:a 128000 -vf hwupload_cuda=device=$gpu_no,scale_npp=1920:1080:format=yuv420p -gpu $gpu_no -c:v hevc_nvenc -preset:v fast -profile:v main -r 29.97 -g 15 -b:v 6000000 -bufsize 14000000 -maxrate 7000000 \&#xA;    -map 0:a -map 1:a -map 2:a -map 3:a -map 4:a -map 5:a -map 6:a -map 7:a -map 8:a -map 9:a -map 10:v -f mpegts udp://127.0.0.1:$trc_output_port?pkt_size=1316 \&#xA;    -an -vf hwupload_cuda=device=$gpu_no,scale_npp=1920:1080:format=yuv420p -gpu $gpu_no -c:v h264_nvenc -preset:v fast -profile:v main -r 29.97 -g 15 -b:v 4000000 -bufsize 8000000 -maxrate 4000000 -f mpegts udp://127.0.0.1:$(($trc_output_port&#x2B;1))?pkt_size=1316 \&#xA;    -an -vf hwupload_cuda=device=$gpu_no,scale_npp=1280:720:format=yuv420p -gpu $gpu_no -c:v h264_nvenc -preset:v fast -profile:v main -r 29.97 -g 15 -b:v 2000000 -bufsize 4000000 -maxrate 2000000 -f mpegts udp://127.0.0.1:$(($trc_output_port&#x2B;2))?pkt_size=1316 \&#xA;    -an -vf hwupload_cuda=device=$gpu_no,scale_npp=720:480:format=yuv420p -gpu $gpu_no -c:v h264_nvenc -preset:v fast -profile:v main -r 29.97 -g 15 -b:v 1500000 -bufsize 3000000 -maxrate 1500000 -f mpegts udp://127.0.0.1:$(($trc_output_port&#x2B;3))?pkt_size=1316 \&#xA;    -an -vf hwupload_cuda=device=$gpu_no,scale_npp=640:360:format=yuv420p -gpu $gpu_no -c:v h264_nvenc -preset:v fast -profile:v main -r 29.97 -g 15 -b:v 800000 -bufsize 1600000 -maxrate 800000 -f mpegts udp://127.0.0.1:$(($trc_output_port&#x2B;4))?pkt_size=1316 \main &amp;&#xA;}&#xA;&#xA;function packager () { &#xA;    rm -rf $OUTPUT/*&#xA;    /packager/packager \ &#xA;&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=0,init_segment=$OUTPUT/audio/0/audio_4.mp4,segment_template=$OUTPUT/audio/0/\$Time\$.m4s" \                 "in=udp://127.0.0.1:$trc_output_port,stream=1,init_segment=$OUTPUT/audio/1/audio_4.mp4,segment_template=$OUTPUT/audio/1/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=2,init_segment=$OUTPUT/audio/2/audio_4.mp4,segment_template=$OUTPUT/audio/2/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=3,init_segment=$OUTPUT/audio/3/audio_4.mp4,segment_template=$OUTPUT/audio/3/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=4,init_segment=$OUTPUT/audio/4/audio_4.mp4,segment_template=$OUTPUT/audio/4/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=5,init_segment=$OUTPUT/audio/5/audio_4.mp4,segment_template=$OUTPUT/audio/5/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=6,init_segment=$OUTPUT/audio/6/audio_4.mp4,segment_template=$OUTPUT/audio/6/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=7,init_segment=$OUTPUT/audio/7/audio_4.mp4,segment_template=$OUTPUT/audio/7/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=8,init_segment=$OUTPUT/audio/8/audio_4.mp4,segment_template=$OUTPUT/audio/8/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=9,init_segment=$OUTPUT/audio/9/audio_4.mp4,segment_template=$OUTPUT/audio/9/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$trc_output_port,stream=video,init_segment=$OUTPUT/video/0/video_4.mp4,segment_template=$OUTPUT/video/0/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$(($trc_output_port&#x2B;1)),stream=video,init_segment=$OUTPUT/video/1/video_4.mp4,segment_template=$OUTPUT/video/1/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$(($trc_output_port&#x2B;2)),stream=video,init_segment=$OUTPUT/video/2/video_4.mp4,segment_template=$OUTPUT/video/2/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$(($trc_output_port&#x2B;3)),stream=video,init_segment=$OUTPUT/video/3/video_4.mp4,segment_template=$OUTPUT/video/3/\$Time\$.m4s" \&#xA;    "in=udp://127.0.0.1:$(($trc_output_port&#x2B;4)),stream=video,init_segment=$OUTPUT/video/4/video_4.mp4,segment_template=$OUTPUT/video/4/\$Time\$.m4s" \&#xA;    --segment_duration 10 --fragment_duration 10 --minimum_update_period 10 --allow_codec_switching --preserved_segments_outside_live_window 24 --time_shift_buffer_depth 40 \&#xA;    --mpd_output $OUTPUT/$output_mpd.mpd&#xA;}&#xA;

    &#xA;

    vlc warning and error messages when duration 7

    &#xA;

    ...&#xA;adaptive debug: Timeline&#xA;adaptive debug: Element #1 d=669670 r=0 @t=6321195&#xA;adaptive debug: Element #2 d=576576 r=0 @t=6990865&#xA;adaptive debug: Element #3 d=669670 r=0 @t=7567441&#xA;adaptive debug: Element #4 d=672673 r=0 @t=8237111&#xA;adaptive debug: Element #5 d=561561 r=0 @t=8909784&#xA;adaptive debug: Element #6 d=654655 r=0 @t=9471345&#xA;adaptive debug: Element #7 d=630631 r=0 @t=10126000&#xA;adaptive debug: Updated MPD, next update in 7s&#xA;main warning: picture is too late to be displayed (missing 223 ms)&#xA;main warning: picture is too late to be displayed (missing 157 ms)&#xA;main warning: picture is too late to be displayed (missing 91 ms)&#xA;main warning: picture is too late to be displayed (missing 24 ms)&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/audio/5/9451440.m4s @0&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/video/0/9475185.m4s @0&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/300.mpd @0&#xA;main debug: creating access: http://192.168.0.181:81/300/300.mpd&#xA;main debug: (path: \\192.168.0.181:81\300\300.mpd)&#xA;main debug: looking for access module matching "http": 26 candidates&#xA;http debug: resolving 192.168.0.181 ...&#xA;http debug: outgoing request: GET /300/300.mpd HTTP/1.1 Host:192.168.0.181:81 Accept: */* Accept-Language: en_US User-Agent: VLC/3.0.11 LibVLC/3.0.11 Range: bytes=0- &#xA;http debug: incoming response: HTTP/1.1 206 Partial Content Server: nginx Date: Mon, 17 Aug 2020 09:10:08 GMT Content-Type: application/octet-stream Content-Length: 10406 Last-Modified: Mon, 17 Aug 2020 09:10:08 GMT Connection: keep-alive ETag: "5f3a4970-28a6" Content-Range: bytes 0-10405/10406 &#xA;main debug: using access module "access"&#xA;main debug: looking for stream_filter module matching "prefetch,cache_block": 24 candidates&#xA;prefetch debug: using 10406 bytes buffer, 10406 bytes read&#xA;main debug: using stream_filter module "prefetch"&#xA;main debug: looking for stream_filter module matching "any": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;main debug: looking for stream_filter module matching "inflate": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;prefetch debug: end of stream&#xA;main debug: removing module "prefetch"&#xA;main debug: removing module "access"&#xA;main debug: looking for xml reader module matching "any": 1 candidates&#xA;main debug: using xml reader module "xml"&#xA;adaptive debug: MPD profile=urn:mpeg:dash:profile:isoff-live:2011 mediaPresentationDuration=0 minBufferTime=2&#xA;adaptive debug: BaseUrl=http://192.168.0.181:81/300/&#xA;adaptive debug: Period&#xA;adaptive debug: BaseAdaptationSet 0&#xA;adaptive debug: Representation 0 [mp4a]&#xA;adaptive debug: InitSegmentTemplate #0 url=http://192.168.0.181:81/300/audio/0/audio_4.mp4 duration 0&#xA;adaptive debug: SegmentTemplate #12 url=http://192.168.0.181:81/300/audio/0/$Time$.m4s duration 0&#xA;adaptive debug: Timeline&#xA;adaptive debug: Element #1 d=629760 r=1 @t=6930480&#xA;adaptive debug: Element #3 d=631680 r=0 @t=8190000&#xA;adaptive debug: Element #4 d=629760 r=3 @t=8821680&#xA;adaptive debug: Representation 1 [mp4a]&#xA;adaptive debug: InitSegmentTemplate #0 url=http://192.168.0.181:81/300/audio/1/audio_4.mp4 duration 0&#xA;adaptive debug: SegmentTemplate #12 url=http://192.168.0.181:81/300/audio/1/$Time$.m4s duration 0&#xA;...&#xA;adaptive debug: Timeline&#xA;adaptive debug: Element #1 d=576576 r=0 @t=6990865&#xA;adaptive debug: Element #2 d=669670 r=0 @t=7567441&#xA;adaptive debug: Element #3 d=672673 r=0 @t=8237111&#xA;adaptive debug: Element #4 d=561561 r=0 @t=8909784&#xA;adaptive debug: Element #5 d=654655 r=0 @t=9471345&#xA;adaptive debug: Element #6 d=630631 r=0 @t=10126000&#xA;adaptive debug: Element #7 d=666666 r=0 @t=10756631&#xA;adaptive debug: Updated MPD, next update in 7s&#xA;main error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 2168 ms)&#xA;main debug: ES_OUT_RESET_PCR called&#xA;main debug: Buffering 0%&#xA;main debug: Buffering 1%&#xA;main debug: Buffering 2%&#xA;main debug: Received first picture&#xA;mmdevice debug: state changed: 0&#xA;main debug: Buffering 4%&#xA;...&#xA;main debug: Buffering 15%&#xA;wasapi debug: reset&#xA;main debug: Buffering 17%&#xA;...&#xA;main debug: Buffering 98%&#xA;main debug: Stream buffering done (2176 ms in 16 ms)&#xA;main debug: Decoder wait done in 0 ms&#xA;main warning: playback too early (-110003): down-sampling&#xA;mmdevice debug: state changed: 1&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/video/0/10129840.m4s @0&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/audio/5/10081200.m4s @0&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/300.mpd @0&#xA;main debug: creating access: http://192.168.0.181:81/300/300.mpd&#xA;main debug: (path: \\192.168.0.181:81\300\300.mpd)&#xA;main debug: looking for access module matching "http": 26 candidates&#xA;http debug: resolving 192.168.0.181 ...&#xA;http debug: outgoing request: GET /300/300.mpd HTTP/1.1 Host: 192.168.0.181:81 Accept: */* Accept-Language: en_US User-Agent: VLC/3.0.11 LibVLC/3.0.11 Range: bytes=0- &#xA;http debug: incoming response: HTTP/1.1 206 Partial Content Server: nginx Date: Mon, 17 Aug 2020 09:10:15 GMT Content-Type: application/octet-stream Content-Length: 10387 Last-Modified: Mon, 17 Aug 2020 09:10:15 GMT Connection: keep-alive ETag: "5f3a4977-2893" Content-Range: bytes 0-10386/10387 &#xA;main debug: using access module "access"&#xA;main debug: looking for stream_filter module matching "prefetch,cache_block": 24 candidates&#xA;prefetch debug: using 10387 bytes buffer, 10387 bytes read&#xA;main debug: using stream_filter module "prefetch"&#xA;main debug: looking for stream_filter module matching "any": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;main debug: looking for stream_filter module matching "inflate": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;prefetch debug: end of stream&#xA;main debug: removing module "prefetch"&#xA;main debug: removing module "access"&#xA;main debug: looking for xml reader module matching "any": 1 candidates&#xA;main debug: using xml reader module "xml"&#xA;adaptive debug: MPD profile=urn:mpeg:dash:profile:isoff-live:2011 mediaPresentationDuration=0 minBufferTime=2&#xA;adaptive debug: BaseUrl=http://192.168.0.181:81/300/&#xA;adaptive debug: Period&#xA;adaptive debug: BaseAdaptationSet 0&#xA;adaptive debug: Representation 0 [mp4a]&#xA;adaptive debug: InitSegmentTemplate #0 url=http://192.168.0.181:81/300/audio/0/audio_4.mp4 duration 0&#xA;adaptive debug: SegmentTemplate #13 url=http://192.168.0.181:81/300/audio/0/$Time$.m4s duration 0&#xA;...&#xA;

    &#xA;

    keep getting a similar message

    &#xA;

    vlc warning and error messages when duration 5

    &#xA;

    adaptive debug: Timeline&#xA;adaptive debug: Element #1 d=456457 r=0 @t=9501375&#xA;adaptive debug: Element #2 d=453453 r=0 @t=9957832&#xA;adaptive debug: Element #3 d=471472 r=0 @t=10411285&#xA;adaptive debug: Element #4 d=381381 r=0 @t=10882757&#xA;adaptive debug: Element #5 d=477478 r=0 @t=11264138&#xA;adaptive debug: Element #6 d=468468 r=0 @t=11741616&#xA;adaptive debug: Element #7 d=474475 r=0 @t=12210084&#xA;adaptive debug: Element #8 d=378378 r=0 @t=12684559&#xA;adaptive debug: Element #9 d=468468 r=0 @t=13062937&#xA;adaptive debug: Element #10 d=474475 r=0 @t=13531405&#xA;adaptive debug: Updated MPD, next update in 5s&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/audio/5/8101680.m4s @0&#xA;main error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 4794 ms)&#xA;main warning: buffer too late (-588333 us): dropped&#xA;main debug: ES_OUT_RESET_PCR called&#xA;main debug: Buffering 0%&#xA;main debug: Buffering 1%&#xA;main debug: Buffering 2%&#xA;main debug: Buffering 3%&#xA;...&#xA;main debug: Buffering 15%&#xA;main debug: Received first picture&#xA;main debug: Buffering 16%&#xA;...&#xA;main debug: Buffering 99%&#xA;main debug: Stream buffering done (4804 ms in 122 ms)&#xA;main debug: Decoder wait done in 0 ms&#xA;main debug: inserting 3246 zeroes&#xA;mmdevice debug: state changed: 0&#xA;wasapi debug: reset&#xA;main warning: playback too early (-85958): down-sampling&#xA;mmdevice debug: state changed: 1&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/video/0/8114825.m4s @0&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/300.mpd @0&#xA;main debug: creating access: http://192.168.0.181:81/300/300.mpd&#xA;main debug: (path: \\192.168.0.181:81\300\300.mpd)&#xA;main debug: looking for access module matching "http": 26 candidates&#xA;http debug: resolving 192.168.0.181 ...&#xA;http debug: outgoing request: GET /300/300.mpd HTTP/1.1 Host: 192.168.0.181:81 Accept: */* Accept-Language: en_US User-Agent: VLC/3.0.11 LibVLC/3.0.11 Range: bytes=0- &#xA;http debug: incoming response: HTTP/1.1 206 Partial Content Server: nginx Date: Mon, 17 Aug 2020 09:18:28 GMT Content-Type: application/octet-stream Content-Length: 12632 Last-Modified: Mon, 17 Aug 2020 09:18:28 GMT Connection: keep-alive ETag: "5f3a4b64-3158" Content-Range: bytes 0-12631/12632 &#xA;main debug: using access module "access"&#xA;main debug: looking for stream_filter module matching "prefetch,cache_block": 24 candidates&#xA;prefetch debug: using 12632 bytes buffer, 12632 bytes read&#xA;main debug: using stream_filter module "prefetch"&#xA;main debug: looking for stream_filter module matching "any": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;main debug: looking for stream_filter module matching "inflate": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;prefetch debug: end of stream&#xA;main debug: removing module "prefetch"&#xA;main debug: removing module "access"&#xA;main debug: looking for xml reader module matching "any": 1 candidates&#xA;main debug: using xml reader module "xml"&#xA;adaptive debug: MPD profile=urn:mpeg:dash:profile:isoff-live:2011 mediaPresentationDuration=0 minBufferTime=2&#xA;adaptive debug: BaseUrl=http://192.168.0.181:81/300/&#xA;adaptive debug: Period&#xA;adaptive debug: BaseAdaptationSet 0&#xA;adaptive debug: Representation 0 [mp4a]&#xA;adaptive debug: InitSegmentTemplate #0 url=http://192.168.0.181:81/300/audio/0/audio_4.mp4 duration 0&#xA;adaptive debug: SegmentTemplate #12 url=http://192.168.0.181:81/300/audio/0/$Time$.m4s duration 0&#xA;...&#xA;adaptive debug: Timeline&#xA;adaptive debug: Element #1 d=453453 r=0 @t=9957832&#xA;adaptive debug: Element #2 d=471472 r=0 @t=10411285&#xA;adaptive debug: Element #3 d=381381 r=0 @t=10882757&#xA;adaptive debug: Element #4 d=477478 r=0 @t=11264138&#xA;adaptive debug: Element #5 d=468468 r=0 @t=11741616&#xA;adaptive debug: Element #6 d=474475 r=0 @t=12210084&#xA;adaptive debug: Element #7 d=378378 r=0 @t=12684559&#xA;adaptive debug: Element #8 d=468468 r=0 @t=13062937&#xA;adaptive debug: Element #9 d=474475 r=0 @t=13531405&#xA;adaptive debug: Element #10 d=459459 r=0 @t=14005880&#xA;adaptive debug: Updated MPD, next update in 5s&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/audio/5/8550960.m4s @0&#xA;main warning: picture is too late to be displayed (missing 383 ms)&#xA;main warning: picture is too late to be displayed (missing 317 ms)&#xA;main warning: picture is too late to be displayed (missing 251 ms)&#xA;main warning: picture is too late to be displayed (missing 184 ms)&#xA;main warning: picture is too late to be displayed (missing 117 ms)&#xA;adaptive debug: Retrieving http://192.168.0.181:81/300/300.mpd @0&#xA;main debug: creating access: http://192.168.0.181:81/300/300.mpd&#xA;main debug: (path: \\192.168.0.181:81\300\300.mpd)&#xA;main debug: looking for access module matching "http": 26 candidates&#xA;http debug: resolving 192.168.0.181 ...&#xA;http debug: outgoing request: GET /300/300.mpd HTTP/1.1 Host: 192.168.0.181:81 Accept: */* Accept-Language: en_US User-Agent: VLC/3.0.11 LibVLC/3.0.11 Range: bytes=0- &#xA;http debug: incoming response: HTTP/1.1 206 Partial Content Server: nginx Date: Mon, 17 Aug 2020 09:18:33 GMT Content-Type: application/octet-stream Content-Length: 12596 Last-Modified: Mon, 17 Aug 2020 09:18:33 GMT Connection: keep-alive ETag: "5f3a4b69-3134" Content-Range: bytes 0-12595/12596 &#xA;main debug: using access module "access"&#xA;main debug: looking for stream_filter module matching "prefetch,cache_block": 24 candidates&#xA;prefetch debug: using 12596 bytes buffer, 12596 bytes read&#xA;main debug: using stream_filter module "prefetch"&#xA;main debug: looking for stream_filter module matching "any": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;main debug: looking for stream_filter module matching "inflate": 24 candidates&#xA;main debug: no stream_filter modules matched&#xA;prefetch debug: end of stream&#xA;main debug: removing module "prefetch"&#xA;main debug: removing module "access"&#xA;main debug: looking for xml reader module matching "any": 1 candidates&#xA;main debug: using xml reader module "xml"&#xA;adaptive debug: MPD profile=urn:mpeg:dash:profile:isoff-live:2011 mediaPresentationDuration=0 minBufferTime=2&#xA;adaptive debug: BaseUrl=http://192.168.0.181:81/300/&#xA;adaptive debug: Period&#xA;adaptive debug: BaseAdaptationSet 0&#xA;adaptive debug: Representation 0 [mp4a]&#xA;adaptive debug: InitSegmentTemplate #0 url=http://192.168.0.181:81/300/audio/0/audio_4.mp4 duration 0&#xA;adaptive debug: SegmentTemplate #13 url=http://192.168.0.181:81/300/audio/0/$Time$.m4s duration 0&#xA;...&#xA;

    &#xA;

    keep getting a similar message

    &#xA;

    This is played on vlc. this is duration 10 sec. but I want to live streaming duration 5 under.&#xA;cuda, framerate, GOP size and bitrate are fixed.

    &#xA;

    I know that is inefficient. but now, I have to live stream channel multiview duration 5 under. How can I achieve ? please help me.

    &#xA;