
Recherche avancée
Autres articles (69)
-
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Support de tous types de médias
10 avril 2011Contrairement à 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) (...)
-
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
Sur d’autres sites (11145)
-
ffmpeg demux into audio and video resets PTS
30 juillet 2018, par Mukund ManikarnikeDemuxing
I am demuxing TS segments into audio and video as follows.
ffmpeg -y -i input.ts -vcodec copy -an output_video.ts
ffmpeg -y -i input.ts -acodec copy -vn output_audio.aacInspecting Input
The
start_pts
andstart_time
oninput.ts
are as shown below. I was able to inspect these values usingffprobe -show_streams -print_format json input.ts
"start_pts": 8306558438,
"start_time": "92295.093756",Inspecting output video
The output .ts has some default
start_pts
andstart_time
values as shown below. These were also obtained using the sameffprobe
command as indicated above."start_pts": 126000,
"start_time": "1.400000",Inspecting output audio
The same
ffprobe
command onoutput_audio.aac
shows that the output aac has invalidcodec_tag
andcodec_tag_string
as shown below. Thestart_pts
andstart_time
are not present in theoutput_audio.aac
."codec_tag_string": "[0][0][0][0]", (should have been [15][0][0][0])
"codec_tag": "0x0000", (should have been 0xf000)Questions
- Wondering if this difference in the
start_pts
,start_time
,codec_tag
is expected ? - If it is expected, what can I do to ensure that the all of these parameters get retained on the output ?
- If it is not expected, is there some more information I can share to track this down ?
Note
There were other outputs that I found inconsistent in the
ffprobe
command for theoutput_audio.aac
likeduration etc.
. I shared what I thought are most valuable at this point. If required I can share complete outputs from all of the above executions.[EDIT 07/30/2018 - 08:00 MST]
logs forffmpeg -y -i input.ts -vcodec copy -an output_video.ts -acodec copy -vn output_audio.aac
are as shown below.ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-ffplay --enable-frei0r --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-libopenjpeg --disable-decoder=jpeg2000 --extra-cflags=-I/usr/local/Cellar/openjpeg/2.3.0/include/openjpeg-2.3 --enable-nonfree
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
[mpegts @ 0x7f88ed803000] start time for stream 0 is not set in estimate_timings_from_pts
Input #0, mpegts, from 'i7h9456s_media_46185.ts':
Duration: 00:00:06.05, start: 86216.852667, bitrate: 2898 kb/s
Program 1
Stream #0:0[0x102]: Data: timed_id3 (ID3 / 0x20334449)
Stream #0:1[0x100]: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(tv, smpte170m, progressive), 640x360 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:2[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 190 kb/s
Output #0, mpegts, to '../output_video.ts':
Metadata:
encoder : Lavf58.12.100
Stream #0:0: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(tv, smpte170m, progressive), 640x360 [SAR 1:1 DAR 16:9], q=2-31, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc
Output #1, adts, to '../output_audio.aac':
Metadata:
encoder : Lavf58.12.100
Stream #1:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 190 kb/s
Stream mapping:
Stream #0:1 -> #0:0 (copy)
Stream #0:2 -> #1:0 (copy)
Press [q] to stop, [?] for help
frame= 180 fps=0.0 q=-1.0 Lsize= 2088kB time=00:00:06.03 bitrate=2833.8kbits/s speed= 904x
video:1918kB audio:142kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.349750% - Wondering if this difference in the
-
Modify video frames but keep their timestamp in python (maybe with ffmpeg ?)
3 août 2018, par bendafI have .ts videos with variable frame rate and I would like to modify the frames of the videos and keep the timestamps belonging to the frames. I am using python and experiencing with ffmpeg, but I am open to any solution.
The output of
$ffmpeg -i myvideo.ts -hide_banner
Input #0, mpegts, from 'myvideo.ts':
Duration: 00:02:37.84, start: 1.400000, bitrate: 13799 kb/s
Program 1
Metadata:
service_name : Service01
service_provider: FFmpeg
Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 3840x1080, 25 fps, 25 tbr, 90k tbn, 50 tbcWhat I have tried so far is :
import skvideo.io
outpudict = {"-map": "0",
"-vcodec": "libx264",
"-pix_fmt": "yuv420p",
"-f": "mpegts"
}
videogen = skvideo.io.vreader(args.input_video)
writer = skvideo.io.FFmpegWriter(filename + file_extension, outputdict=outpudict)
for i, frame in enumerate(videogen):
# modify the frame
writer.writeFrame(frame)
writer.close()But so far I am not able to keep the pts and dts parameters of the frames only the format and encoding.
Note : I have tried to use skvideo.io.FFmpegReader or pass the outputdict parameter also to vreader but the script crashed because of this bug.
Note2 : I am checking the pts of the frames with
$ffprobe -hide_banner -show_entries packet=pts,dts myvideo.ts
Thank you for reading through my question, any idea would be appreciated !
-
Modify video frames but keep their timestamp in python skvideo ffmpeg
3 août 2018, par bendafI have .ts videos with variable frame rate and I would like to modify the frames of the videos and keep the timestamps belonging to the frames. I am using python and experiencing with ffmpeg, but I am open to any solution.
The output of
$ffmpeg -i myvideo.ts -hide_banner
Input #0, mpegts, from 'myvideo.ts':
Duration: 00:02:37.84, start: 1.400000, bitrate: 13799 kb/s
Program 1
Metadata:
service_name : Service01
service_provider: FFmpeg
Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 3840x1080, 25 fps, 25 tbr, 90k tbn, 50 tbcWhat I have tried so far is :
import skvideo.io
outpudict = {"-map": "0",
"-vcodec": "libx264",
"-pix_fmt": "yuv420p",
"-f": "mpegts"
}
videogen = skvideo.io.vreader(args.input_video)
writer = skvideo.io.FFmpegWriter(filename + file_extension, outputdict=outpudict)
for i, frame in enumerate(videogen):
# modify the frame
writer.writeFrame(frame)
writer.close()But so far I am not able to keep the pts and dts parameters of the frames only the format and encoding.
Note : I have tried to use skvideo.io.FFmpegReader or pass the outputdict parameter also to vreader but the script crashed because of this bug.
Note2 : I am checking the pts of the frames with
$ffprobe -hide_banner -show_entries packet=pts,dts myvideo.ts
Thank you for reading through my question, any idea would be appreciated !