Recherche avancée

Médias (0)

Mot : - Tags -/diogene

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (52)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • 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 (...)

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

Sur d’autres sites (8770)

  • What is the most efficient way to broadcast a live stream ? [closed]

    3 août 2020, par Harsh

    I want to build a live streaming system for a classroom. The amount on information on this subject is so confusing. These are the features/requirements that I want to have in my app :

    


      

    1. Room type system.
    2. 


    3. One teacher - N students (N<200).
    4. &#xA;

    5. Broadcast video/audio. This needs to be only 1 way. (1T ---> 200S)
    6. &#xA;

    7. Audio chat should be possible if a teacher allows a student to speak.
    8. &#xA;

    9. Need not to record the session, though it would be a great feature to have.
    10. &#xA;

    &#xA;

    Now, from my research I have established there are many ways to go about it. The best one to me seems using WebRTC. In that case I do not have to worry about the platform that much.&#xA;WebRTC needs a STUN/TURN server, that can be easily set-up using the coturn project.&#xA;I'll also need a SFU which forwards my stream to the client, like Janus or Mediasoup.&#xA;But that's where I'm getting confused.

    &#xA;

    Can I not directly use a live stream, send it to the server, transcode it in real time using ffmpeg to HLS/DASH and publish it to a S3 bucket from where the users can access it. Wouldn't that be more efficient and able to handle much more students easily.

    &#xA;

    For the audio part I could just use the p2p functionality of webrtc in the browser itself, so no need to route that through the server.

    &#xA;

    That is how far I've come to understand the system. I still don't completely understand how SFU works and I'm confused about how many live streams can one server handle (say a 4C/8GB). Or if using ffmpeg on VPS is a bad thing and I should use the AWS services instead ?

    &#xA;

    Can someone please help me understand this ?

    &#xA;

    Thanks !

    &#xA;

  • Trimming a video from URL without retrieving the whole file [on hold]

    27 mars 2016, par Shlomi Uziel

    I have implemented a service which is given a URL of a movie file and a start time indicator. Then I trim a length of a maximum of 1 minute from that period onwards.
    The process is done in a server by calling a command with ProcessBuilder :

    ffmpeg -accurate_seek -ss hh:mm:ss.sss -t 60 -i "url" -c:v copy -c:a copy outputPath

    However, some video files have their metadata in the end of the file.
    Since the videos are stored in a remote URL, I cannot manipulate them without retrieving them fully (e.g. by using -movflags +faststart).

    Is there a way to seek to the given point and trim the video without prefetching the whole file ?

  • FFmpeg Streaming Video SpringBoot endpoint not show video duration in video players

    7 avril 2024, par lxluxo23

    it turns out that I've been working on a personal project just out of curiosity.&#xA;the main function is to stream video by first encoding it through ffmpeg&#xA;then playback said video from any other device&#xA;call it "plex" very very primitive

    &#xA;

    although I achieve my goal which is to encode and send the video to the devices that make the request&#xA;this video is sent so to speak as a live broadcast.&#xA;I can only pause it, no forward or rewind, anyone have any idea what I am doing wrong or if I should take some other approach either in my service or controller ?

    &#xA;

    I leave fragments of my code

    &#xA;

    THE CONTROLLER

    &#xA;

    @RestController&#xA;@RequestMapping("/api")&#xA;@Log4j2&#xA;public class StreamController {&#xA;&#xA;    @Autowired&#xA;    VideoStreamingService videoStreamingService;&#xA;&#xA;    @Autowired&#xA;    VideoService videoService;&#xA;&#xA;&#xA;    @GetMapping("/stream/{videoId}")&#xA;    public ResponseEntity<streamingresponsebody> livestream(@PathVariable Long videoId,@RequestParam(required = false)  String codec) {&#xA;        Video video = videoService.findVideoById(videoId);&#xA;        if (video != null) {&#xA;            Codec codecEnum = Codec.fromString(codec);&#xA;            return ResponseEntity.ok()&#xA;                    .contentType(MediaType.valueOf("video/mp4"))&#xA;                    .body(outputStream -> videoStreamingService.streamVideo(video.getPath(), outputStream,codecEnum));&#xA;        }&#xA;        return ResponseEntity.notFound().build();&#xA;    }&#xA;}&#xA;</streamingresponsebody>

    &#xA;

    THE SERVICE

    &#xA;

    @Service&#xA;public class VideoStreamingService {&#xA;&#xA;    public void streamVideo(String videoPath, OutputStream outputStream, Codec codec) {&#xA;&#xA;        FFmpeg ffmpeg = FFmpeg.atPath()&#xA;                .addArguments("-i", videoPath)&#xA;                .addArguments("-b:v", "5000k")&#xA;                .addArguments("-maxrate", "5000k")&#xA;                .addArguments("-bufsize", "10000k")&#xA;                .addArguments("-c:a", "aac")&#xA;                .addArguments("-b:a", "320k")&#xA;                .addArguments("-movflags", "frag_keyframe&#x2B;empty_moov&#x2B;faststart")&#xA;                .addOutput(PipeOutput.pumpTo(outputStream)&#xA;                        .setFormat("mp4"))&#xA;                .addArgument("-nostdin");&#xA;        if (codec == Codec.AMD) {&#xA;            ffmpeg.addArguments("-profile:v", "high");&#xA;        }&#xA;        ffmpeg.addArguments("-c:v", codec.getFfmpegArgument());&#xA;        ffmpeg.execute();&#xA;    }&#xA;}&#xA;

    &#xA;

    I have some enums to vary the encoding and use hardware acceleration or not.

    &#xA;

    and here is an example from my player&#xA;the endpoint is the following

    &#xA;

    http://localhost:8080/api/stream/2?codec=AMD&#xA;screenshot

    &#xA;

    I'm not sure if there's someone with more knowledge in either FFmpeg or Spring who could help me with this minor issue, I would greatly appreciate it. I've included the URL of the repository in case anyone would like to review it when answering my question

    &#xA;

    repo

    &#xA;

    I tried changing the encoding format.&#xA;I tried copying the metadata from the original video.&#xA;I tried sending a custom header.&#xA;None of this has worked.

    &#xA;

    I would like to achieve what is mentioned in many sites, which is when you load a video from the network, the player shows how much of that video you have in the local "buffer".

    &#xA;