
Recherche avancée
Médias (91)
-
Head down (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Echoplex (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Discipline (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Letting you (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
1 000 000 (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
999 999 (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
Autres articles (8)
-
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community. -
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...) -
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...)
Sur d’autres sites (3002)
-
youtube-dl (ffmpeg) blank error on embedding subtitles
22 mars 2021, par Human1I am new to using youtube-dl, and therefore is quite unfamiliar with how it works. I configured it to download auto subs and english subs (if there were any), and embed them in the video. It worked for me for quite a good while (1 or 2 months), and it suddenly stopped working with blank errors starting to pop up, and I have no idea why that happened. I have checked that I am using the most updated version of youtube-dl and ffmpeg. I am currently using a m1 mac , and I don't know if that caused the problem. Below is the output I got with the
-v
command, as well as some background information.

[debug] System config: []
[debug] User config: ['-o', '~/Documents/playlists/%(playlist)s/%(playlist_index)-i%(title)s.%(ext)s', '-f', 'mp4', '--write-sub', '--sub-lang', 'en', '--write-auto-sub', '--embed-subs']
[debug] Custom config: []
[debug] Command-line args: ['https://youtube.com/playlist?list=PL4cUxeGkcC9i3FXJSUfmsNOx8E7u6UuhG', '-v']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.03.14
[debug] Git HEAD: 59ada80ca
[debug] Python version 3.9.2 (CPython) - macOS-11.2.3-arm64-arm-64bit
[debug] exe versions: ffmpeg present, ffprobe present, rtmpdump 2.4
[debug] Proxy map: {}
[youtube:tab] PL4cUxeGkcC9i3FXJSUfmsNOx8E7u6UuhG: Downloading webpage
[download] Downloading playlist: CSS Flexbox Tutorial
[youtube:tab] playlist CSS Flexbox Tutorial: Downloading 12 videos
[download] Downloading video 1 of 12
[youtube] Y8zMYaD1bz0: Downloading webpage
[info] Writing video subtitles to: /Users/{username}/Documents/playlists/CSS Flexbox Tutorial/1CSS Flexbox Tutorial #1 - Introduction.en.vtt
[debug] Invoking downloader on 'https://r2---sn-45gpjx-3x4e.googlevideo.com/videoplayback?expire=1616392628&ei=VN1XYKikA9eo1gai6KegBg&ip=45.133.192.196&id=o-APtlxrUI2wU4tPFiSxBi5MzLnuR5EFYL3-TE-BpiPEYG&itag=22&source=youtube&requiressl=yes&mh=U3&mm=31%2C29&mn=sn-45gpjx-3x4e%2Csn-5hne6nlr&ms=au%2Crdu&mv=m&mvi=2&pl=24&initcwndbps=1155000&vprv=1&mime=video%2Fmp4&ns=r0wuXA2lBVMGhop9uJeEHHUF&ratebypass=yes&dur=317.161&lmt=1607169749865434&mt=1616370759&fvip=3&fexp=24001373%2C24007246&c=WEB&txp=5432434&n=_jK4PI5-7sa9Q0X2ye&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cratebypass%2Cdur%2Clmt&sig=AOq0QJ8wRAIgR0wbVc18mWDheT_QVT5Jsbmd647wKJNyVfzGRJd_oOkCIArV-vvKQmD3D7W90dw1l9b3zaJQNzltitp3BJPt2fqA&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRgIhAI9I7LQw5zTAldgCydhe3yzicBgvxYfxeHxI8lCxh3sLAiEAlT8Dpf93fiPbdMI3rHOebH-nFkToCZr1VfWaoX0HVeg%3D'
[download] /Users/{username}/Documents/playlists/CSS Flexbox Tutorial/1CSS Flexbox Tutorial #1 - Introduction.mp4 has already been downloaded
[download] 100% of 16.50MiB
[ffmpeg] Embedding subtitles in '/Users/{username}/Documents/playlists/CSS Flexbox Tutorial/1CSS Flexbox Tutorial #1 - Introduction.mp4'
[debug] ffmpeg command line: ffmpeg -y -loglevel repeat+info -i 'file:/Users/{username}/Documents/playlists/CSS Flexbox Tutorial/1CSS Flexbox Tutorial #1 - Introduction.mp4' -i 'file:/Users/{username}/Documents/playlists/CSS Flexbox Tutorial/1CSS Flexbox Tutorial #1 - Introduction.en.vtt' -map 0 -c copy -map -0:s -map -0:d -c:s mov_text -map 1:0 -metadata:s:s:0 language=eng 'file:/Users/{username}/Documents/playlists/CSS Flexbox Tutorial/1CSS Flexbox Tutorial #1 - Introduction.temp.mp4'
ERROR: 
Traceback (most recent call last):
 File "/opt/homebrew/Cellar/youtube-dl/2021.3.14/libexec/lib/python3.9/site-packages/youtube_dl/YoutubeDL.py", line 2106, in post_process
 files_to_delete, info = pp.run(info)
 File "/opt/homebrew/Cellar/youtube-dl/2021.3.14/libexec/lib/python3.9/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 426, in run
 self.run_ffmpeg_multiple_files(input_files, temp_filename, opts)
 File "/opt/homebrew/Cellar/youtube-dl/2021.3.14/libexec/lib/python3.9/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 235, in run_ffmpeg_multiple_files
 raise FFmpegPostProcessorError(msg)
youtube_dl.postprocessor.ffmpeg.FFmpegPostProcessorError



I would be very grateful if anyone can tell me what happened and what should I do next. Thanks ! ;)


-
Java shelling out to FFMPEG not running nor giving error
4 janvier, par ToddI'm writing a Podcast downloader where I want to be able to download one or more podcasts then run them through FFMPEG.


It does run when I run the program in Windows.

It does not run when I run the program in Linux - Meaning FFMPEG may or may not have been called. I have no way of knowing. I get a -1 back from process.waitfor() but no error in my Java logs and no entries at all in the ffmpeg.log file. And there is no file in the processed file directory that FFMPEG would have created.

It does run in Linux if I run the same command that fails in Java from the command line.

FFMPEG has the permissions : rwxr-xr-x , so it doesn't seem as if it'd be a permission error. The Java code looks like :


ProcessBuilder processBuilder = new ProcessBuilder( commands );
 processBuilder.redirectErrorStream( true );
 // Added the next line to see if I could log an error from ffmpeg
 processBuilder.redirectOutput( ProcessBuilder.Redirect.appendTo( new File( "./ffmpeg.log" ) ) );

 Process process = processBuilder.start();
 BufferedReader bufferedOutputReader = new BufferedReader( new InputStreamReader( process.getInputStream() ) );
 do {
 outputString = bufferedOutputReader.readLine();
 if ( outputString != null ) {
 LOGGER.trace( outputString );
 }
 } while ( outputString != null );
 results = process.waitFor();
 LOGGER.debug( "Exit value: " + results );



The commands are :


2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: /bin/ffmpeg 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: -y 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: -i 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: "/home/todd/aggregator/incoming/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD-10_Delivers_.mp3" 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: -ac 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: 1 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: -af 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: "atempo=1.4,volume=1.4" 
2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - command string: "/home/todd/aggregator/processed/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD-10_Delivers_.mp3"



And the manually constructed and run command line that DOES work is :


/bin/ffmpeg -y -i "/home/todd/aggregator/incoming/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD-10_Delivers_.mp3" -ac 1 -af "atempo=1.4,volume=1.4" "/home/todd/aggregator/processed/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD-10_Delivers_.mp3"



The ffmpeg.log file is empty, so I'm doubting whether FFMPEG is ever being reached.


What am I doing wrong ?


EDIT :
I changed the commands to be


"/bin/ffmpeg 2> foo.txt" 



and the execution code to :


ProcessBuilder processBuilder = new ProcessBuilder( commands );
// processBuilder.redirectErrorStream( true );
 // Added the next line to see if I could log an error from ffmpeg
// processBuilder.redirectOutput( ProcessBuilder.Redirect.appendTo( new File( "./ffmpeg.log" ) ) );
 Process process = processBuilder.start();
 results = process.waitFor();



Running that command from the command line displays a list of MMPEG commands that can be run within foo.txt. Upon running from within the Java app, the foo.txt file is empty, so it doesn't appear that FFMPEG ever gets reached. But, I'm clueless why not.


EDIT 2 :
I converted the /bin/ffmpeg path to uppercase to see if that would return an error and it did.


ERROR org.mrpc.utilities.ShellUtils - Cannot run program "/BIN/FFMPEG": error=2, No such file or directory



This seems to confirm that the Java Process object can locate ffmpeg successfully when it is properly cased (i.e. my original code) as I don't see an error message when the case is incorrect. Still not sure why nothing happens when it is called.


EDIT 3 :
I punted on this a year ago, but recently had to revisit. This time I found the answer. It is because I included double quotes around some of the command parameters. That caused the files to not be found. This link states that the Process class handles embedded spaces without any intervention required by you : ProcessBuilder adds extra quotes to command line


-
Not able to merge init.mp4 and seg-*.m4s with ffmpeg and python due to its file format difference
1er février 2023, par XiBBaLI'm developing video downloader (only for free videos) for korean anime streaming site https://laftel.net/


I guess laftel.net uses mpeg-dash for their streaming.
I found "init.mp4" file and "segments-number.m4s" files in chrome developer tools.


Code below downloads seg-1.m4s (name of the first segment) to seg-239.m4s (name of the last segment) file and init.mp4 file and it works.



(Skip the beginning becasue there is a code that collects "Request-URL" for each .m4s files in network stream)


#variable "found" is part of the "Request-URL"

def curl_m4s():
 for i in range(1,240): #number of the .m4s segment file is constant at 239
 vid_url = f"https://mediacloud.laftel.net/{found}/video/avc1/2/seg-{i}.m4s"
 aud_url = f"https://mediacloud.laftel.net/{found}/audio/mp4a/eng/seg-{i}.m4s"
 
 if i < 10: #for single digit num
 os.system(f"curl {vid_url} > {location}/vids/vid00{i}.m4s")
 os.system(f"curl {aud_url} > {location}/auds/aud00{i}.m4s")
 sleep(random.randint(1,3))
 
 elif i < 100: #for double digit num
 os.system(f"curl {vid_url} > {location}/vids/vid0{i}.m4s")
 os.system(f"curl {aud_url} > {location}/auds/aud0{i}.m4s")
 sleep(random.randint(1,3))
 
 else: #for three digit num
 os.system(f"curl {vid_url} > {location}/vids/vid{i}.m4s")
 os.system(f"curl {aud_url} > {location}/auds/aud{i}.m4s")
 sleep(random.randint(1,3))

location = os.getcwd()

os.system(f"curl https://mediacloud.laftel.net/{found}/video/avc1/2/init.mp4 > {location}/vids/vid_init.mp4")
os.system(f"curl https://mediacloud.laftel.net/{found}/audio/mp4a/eng/init.mp4 > {location}/auds/aud_init.mp4")
os.system(f"curl https://mediacloud.laftel.net/{found}/stream.mpd > {location}/stream.mpd")

curl_m4s()
#use curl in cmd and downloads each of the .m4s (001 ~ 239)

 



So in the vids folder i have "init.mp4" for video and "seg-1.m4s seg-239.m4s" for video
and in the auds folder i have "init.mp4" for audio and "seg-1.m4s seg-239.m4s" for audio


Problem is, I cannot merge init file and segment files.
I have no idea about combining .mp4 and .m4s together.
There are a lot of example codes for merging init.m4s + seg-.m4s but I couldn't find init.mp4 + seg-.mp4 codes.


I tried to merge segments together first, like this and it works.


location = os.getcwd()

os.system(f"cd {location}")
os.system("copy /b vid*.m4s vid_full.m4s")



and now, i want to merge init.mp4 becasue it has very much information about whole video files.
But how ??


I tried these and none of them worked (looks like Successfull merge but it do not contain any watchable video)


# vid_full is merged segment files (seg-1.m4s + ... + seg-239.m4s)
 
1. 
os.system("copy /b init.mp4 + vid*.m4s video_full.m4s")
os.system("ffmpeg -i video_full.m4s -c:a copy video_full.mp4")


2. 
os.system("type vid_init.mp4 index.txt > Filename.mp4")


3. 
import os 

os.system("ffmpeg -i vid_full.m4s -c:a copy vid_full.mp4")
os.system("copy /b vid_init.mp4 + vid_full.mp4 VIDEO.mp4")



All problem occurs the format of the init file is .mp4. If it was .m4s I guess I could merge it.


and I guess i must merge init file and segments files together both in .m4s format. Is it right ?
Via ffmpeg, i couldn't encode init.mp4 to init.m4s so this is the problme also.


So, Please help me merge init.mp4 and segments.m4s


All methods are wellcome at least it is based on python.


- 

- I tried to merge init.mp4 + merged_segment.m4s but it failed
- I tried to convert init.mp4 to init.m4s via ffmpeg but it failed
- I tried to convert all the segments to .mp4 files and merge into init.mp4 but it failed








I want to merge init file and segment files and make playable video.
Pleas Teach me how to do this.


Links below are what I used for my test :


[Laftel.net URL]
https://laftel.net/player/40269/46123


[Request URL for init.mp4 (video)]
https://mediacloud.laftel.net/2021/04/46773/v15/video/dash/video/avc1/2/init.mp4


[Request URL for init.mp4 (audio)]
https://mediacloud.laftel.net/2021/04/46773/v15/video/dash/audio/mp4a/eng/init.mp4


[Request URL for seg-1.m4s (video)]
https://mediacloud.laftel.net/2021/04/46773/v15/video/dash/video/avc1/2/seg-1.m4s


[Request URL for seg-1.m4s (audio)]
https://mediacloud.laftel.net/2021/04/46773/v15/video/dash/audio/mp4a/eng/seg-1.m4s