
Recherche avancée
Médias (3)
-
Elephants Dream - Cover of the soundtrack
17 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Image
-
Valkaama DVD Label
4 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Publier une image simplement
13 avril 2011, par ,
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (34)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)
Sur d’autres sites (5755)
-
How to play an local video in arbitrary codec and format in browser ? [closed]
24 septembre 2023, par HanXuI am developing a video player in browser to let the user select a local video to play, and want to support as many video formats as possible. I know that in browser a
video
tag can only play videos in a limited set of codecs, and on desktop libraries like VLC can play literally any videos. I would like to bring that broad compatibility to the browser, but not sure how to achieve it.

One thing come up in my mind is to let the user run a thin client natively, which read the local video and stream it at, say,
http://localhost:8080
, in some web-friendly codec and format, and in the frontend I use avideo
withsrc
to behttp://localhost:8080
.

In the client I think I need to run some
ffmpeg
command to somehow stream and process the video in real-time. I also run into the libVLC which seems nice, and am not sure which one to use.

Furthermore, I need to enable the user to seek to any arbitrary timestamp, and am not sure if the streaming technic supports it.


I have done some googling, and found a method which first runs a
ffmpeg
command as

VIDSOURCE="/some/video.mp4"
AUDIO_OPTS="-c:a aac -b:a 160000 -ac 2"
VIDEO_OPTS="-s 854x480 -c:v libx264 -b:v 800000"
OUTPUT_HLS="-hls_time 10 -hls_list_size 10 -start_number 1"
ffmpeg -i "$VIDSOURCE" -y $AUDIO_OPTS $VIDEO_OPTS $OUTPUT_HLS /some/public/video.m3u8



and in the frontend I can use the react-player to play the video like


<reactplayer url="/some/public/video.m3u8"></reactplayer>



However, I can not seek to an arbitrary timestamp, and the
ffmpeg
command creates a lot of.ts
files one by one about which I am not sure what is going on. It seems that before it creates avideo77.ts
, I can not seek to timestamp within that segment.

All in all, I am looking for some solution like




that supports


- 

- playing videos in browsers in as many codecs and formats as possible,
- allowing users to seek to any arbitrary timestamp.






Since many native video player like VLC supports it, I believe it can be done. Does anyone have any idea that may help ? Appreciate in advance !


-
ffmpeg Windows : standard transcode produces file that "uses unsupported encoding settings" [duplicate]
17 août 2022, par David M. Cotterusing the basic command :


ffmpeg -i infile.mp4 -vcodec libx264 -acodec aac output.mp4



poduces a file that can't be played by the standard Windows Media Player app.
Is there something i'm missing ?


Here is the log data.


C:> \\Mac\depot\kJams\External\ffmpeg\win\bin\ffmpeg.exe -i "\\Mac\Home\Desktop\Christina lying down.AVI" -vcodec libx264 -acodec aac output.mp4
ffmpeg version git-2019-11-01-53c21c2 Copyright (c) 2000-2019 the FFmpeg developers
 built with gcc 9.2.1 (GCC) 20191010
 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
 libavutil 56. 35.101 / 56. 35.101
 libavcodec 58. 60.100 / 58. 60.100
 libavformat 58. 33.100 / 58. 33.100
 libavdevice 58. 9.100 / 58. 9.100
 libavfilter 7. 66.100 / 7. 66.100
 libswscale 5. 6.100 / 5. 6.100
 libswresample 3. 6.100 / 3. 6.100
 libpostproc 55. 6.100 / 55. 6.100
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, avi, from '\\Mac\Home\Desktop\Christina lying down.AVI':
 Metadata:
 creation_time : 2006-01-26 18:19:22
 encoder : CanonMVI02
 Duration: 00:00:07.70, start: 0.000000, bitrate: 14928 kb/s
 Stream #0:0: Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj422p(pc, bt470bg/unknown/unknown), 640x480, 14896 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc
 Stream #0:1: Audio: pcm_u8 ([1][0][0][0] / 0x0001), 11024 Hz, mono, u8, 88 kb/s
Stream mapping:
 Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
 Stream #0:1 -> #0:1 (pcm_u8 (native) -> aac (native))
Press [q] to stop, [?] for help
[aac @ 0f06a740] Too many bits 6408.707483 > 6144 per frame requested, clamping to max
[libx264 @ 0f068b40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
[libx264 @ 0f068b40] profile High 4:2:2, level 3.0, 4:2:2, 8-bit
[libx264 @ 0f068b40] 264 - core 158 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'output.mp4':
 Metadata:
 encoder : Lavf58.33.100
 Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuvj422p(pc), 640x480, q=-1--1, 30 fps, 1000k tbn, 30 tbc
 Metadata:
 encoder : Lavc58.60.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
 Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 11025 Hz, mono, fltp, 66 kb/s
 Metadata:
 encoder : Lavc58.60.100 aac
frame= 231 fps=128 q=-1.0 Lsize= 1570kB time=00:00:07.70 bitrate=1668.3kbits/s speed=4.28x
video:1514kB audio:51kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.347234%
[libx264 @ 0f068b40] frame I:2 Avg QP:24.57 size: 27076
[libx264 @ 0f068b40] frame P:60 Avg QP:26.24 size: 12693
[libx264 @ 0f068b40] frame B:169 Avg QP:27.91 size: 4342
[libx264 @ 0f068b40] consecutive B-frames: 1.7% 1.7% 1.3% 95.2%
[libx264 @ 0f068b40] mb I I16..4: 0.6% 97.6% 1.8%
[libx264 @ 0f068b40] mb P I16..4: 0.1% 10.6% 0.5% P16..4: 51.1% 17.9% 10.8% 0.0% 0.0% skip: 8.9%
[libx264 @ 0f068b40] mb B I16..4: 0.0% 1.2% 0.0% B16..8: 51.8% 4.4% 0.7% direct: 6.4% skip:35.5% L0:48.8% L1:46.4% BI: 4.8%
[libx264 @ 0f068b40] 8x8 transform intra:95.6% inter:78.5%
[libx264 @ 0f068b40] coded y,uvDC,uvAC intra: 89.0% 85.1% 53.7% inter: 29.0% 44.7% 6.7%
[libx264 @ 0f068b40] i16 v,h,dc,p: 19% 31% 8% 42%
[libx264 @ 0f068b40] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 11% 15% 33% 6% 7% 5% 9% 5% 8%
[libx264 @ 0f068b40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 21% 18% 7% 10% 6% 11% 5% 6%
[libx264 @ 0f068b40] i8c dc,h,v,p: 67% 13% 15% 5%
[libx264 @ 0f068b40] Weighted P-Frames: Y:8.3% UV:6.7%
[libx264 @ 0f068b40] ref P L0: 35.8% 10.5% 35.1% 17.4% 1.2%
[libx264 @ 0f068b40] ref B L0: 76.1% 19.2% 4.7%
[libx264 @ 0f068b40] ref B L1: 92.7% 7.3%
[libx264 @ 0f068b40] kb/s:1609.92
[aac @ 0f06a740] Qavg: 34311.295



Ignore this part, Stack Overflow now requires that i type something more so it's not "mostly code"


-
What ffmpeg settings to ensure 0 duplicate frames and 0 dropped frames when capturing to mpeg-2 program stream using ffmpeg/avfoundation on Mac ?
16 février 2017, par aerodavoI’m trying to capture to a DVD compliant mpeg-2 file (ffmpeg :
-target ntsc-dvd
) from the HDMI output of a camcorder into a Magewell HDMI to USB 3.0 box into my Late 2012 15" non-retina MacBook Pro (quad core 2.3, 16gb ram, ssd), using ffmpeg/avfoundation.I’ve tried everything I can think of, or find online. I’m still getting duplicate and dropped frames, which either leads to audio/video sync issues, or audio dropouts, especially for longer recordings. I need this to be stable for recordings of up to 2.5 hours. This is the Terminal output for a 1.5 hour recording :
Lapaki:~ Lapaki$ /Users/Lapaki/Desktop/ffmpeg -f avfoundation -video_size 960x540 -pixel_format uyvy422 -framerate ntsc -i "XI:XI" -vf crop=iw-240:ih:120:0 -target ntsc-dvd -aspect 4:3 -q:v 3 -ab 256k /Users/Lapaki/Desktop/FF\ Test/`date +%F`\ `date +%H_%M_%S`.mpg
ffmpeg version 3.2.3-tessus Copyright (c) 2000-2017 the FFmpeg developers
built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzmq --enable-version3 --disable-ffplay --disable-indev=qtkit --disable-indev=x11grab_xcb
libavutil 55. 34.101 / 55. 34.101
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.101 / 57. 56.101
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
libpostproc 54. 1.100 / 54. 1.100
Input #0, avfoundation, from 'XI:XI':
Duration: N/A, start: 610606.984208, bitrate: N/A
Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 960x540, 29.97 fps, 29.97 tbr, 1000k tbn, 1000k tbc
Stream #0:1: Audio: pcm_f32le, 48000 Hz, stereo, flt, 3072 kb/s
Output #0, dvd, to '/Users/Lapaki/Desktop/FF Test/2017-02-15 17_46_28.mpg':
Metadata:
encoder : Lavf57.56.101
Stream #0:0: Video: mpeg2video (Main), yuv420p, 720x480 [SAR 8:9 DAR 4:3], q=2-31, 6000 kb/s, 29.97 fps, 90k tbn, 29.97 tbc
Metadata:
encoder : Lavc57.64.101 mpeg2video
Side data:
cpb: bitrate max/min/avg: 9000000/0/6000000 buffer size: 1835008 vbv_delay: -1
Stream #0:1: Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s
Metadata:
encoder : Lavc57.64.101 ac3
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg2video (native))
Stream #0:1 -> #0:1 (pcm_f32le (native) -> ac3 (native))
Press [q] to stop, [?] for help
[swscaler @ 0x7fd315892800] Warning: data is not aligned! This can lead to a speedloss
frame= 20 fps=0.0 q=3.0 size= 298kB time=00:00:00.65 bitrate=3721.4kbits/sframe= 35 fps= 35 q=3.0 size= 498kB time=00:00:01.13 bitrate=3591.2kbits/sframe= 50 fps= 33 q=3.0 size= 708kB time=00:00:01.64 bitrate=3519.4kbits/sframe= 65 fps= 32 q=3.0 size= 920kB time=00:00:02.16
...
bitrate=2721.7kbits/frame=162094 fps= 30 q=3.0 size= 1796936kB time=01:30:08.47 bitrate=2721.7kbits/frame=162109 fps= 30 q=3.0 size= 1797142kB time=01:30:08.98 bitrate=2721.8kbits/frame=162110 fps= 30 q=3.0 Lsize= 1797202kB time=01:30:09.01 bitrate=2721.9kbits/s dup=221 drop=0 speed= 1x
video:1579050kB audio:168069kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.866632%I deleted the middle part (denoted by the "..."), which is just a lot more of the same accumulating information. By the end there are 221 duplicate frames, and for this one I didn’t get any dropped frames, but that happens every other time as well it seems.
With this code, the audio seems to stay in pretty good sync, but I get little dropouts every 30 seconds to a minute or so. On this recording, there are dropouts at :
00:00:43, 00:01:19, 00:01:47, 00:02:17, 00:03:18, ...
I stopped listening there ; they happen at the end too, so I assume similarly spaced dropouts are happening throughout the file.
Is there some secret ffmpeg code to ensure there are no dropped or duplicate frames when capturing from a live source to dvd compliant mpeg-2 files ?
When I convert from pretty much any type of file to mpeg-2 files using
-target ntsc-dvd
, the speed is something like 10x on this machine, so it seems like it would have no problem keeping up with a live source, right ?I’ve also tried constant bit rate using
-b:v 5000k -minrate 5000k -maxrate 5000k -bufsize 2500k
, which also doesn’t prevent dropped/duplicate frames.I’ve tried separating out the audio and video inputs, which doesn’t solve it.
I’ve tried using
-vsync 0
on the video input, which does seem to solve the issue, because the output doesn’t report dups/drops, but the audio/video drift out of sync more and more, so that hasn’t worked either.Thanks so much for any help. I’ve been testing and testing and searching and searching for weeks...