
Recherche avancée
Médias (1)
-
La conservation du net art au musée. Les stratégies à l’œuvre
26 mai 2011
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (34)
-
L’utiliser, en parler, le critiquer
10 avril 2011La première attitude à adopter est d’en parler, soit directement avec les personnes impliquées dans son développement, soit autour de vous pour convaincre de nouvelles personnes à l’utiliser.
Plus la communauté sera nombreuse et plus les évolutions seront rapides ...
Une liste de discussion est disponible pour tout échange entre utilisateurs. -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (6085)
-
Concatenate list of streams with ffmpeg
16 novembre 2019, par oioioiI’d like to write python code, automatically rearranging the scenes of a video. How do I use
ffmpeg-python
to concatenate a list of n streams/scenes ? What is the easiest way to merge those scenes with their audio counterpart ?
Unfortunately, I couldn’t figure out how to do it properly.The status quo :
import os
import scenedetect
from scenedetect.video_manager import VideoManager
from scenedetect.scene_manager import SceneManager
from scenedetect.frame_timecode import FrameTimecode
from scenedetect.stats_manager import StatsManager
from scenedetect.detectors import ContentDetector
import ffmpeg
STATS_FILE_PATH = 'stats.csv'
def main():
for root, dirs, files in os.walk('material'):
for file in files:
file = os.path.join(root, file)
print(file)
video_manager = VideoManager([file])
stats_manager = StatsManager()
scene_manager = SceneManager(stats_manager)
scene_manager.add_detector(ContentDetector())
base_timecode = video_manager.get_base_timecode()
end_timecode = video_manager.get_duration()
start_time = base_timecode
end_time = base_timecode + 100.0
#end_time = end_timecode[2]
video_manager.set_duration(start_time=start_time, end_time=end_time)
video_manager.set_downscale_factor()
video_manager.start()
scene_manager.detect_scenes(frame_source=video_manager)
scene_list = scene_manager.get_scene_list(base_timecode)
print('List of scenes obtained:')
for i, scene in enumerate(scene_list):
print(' Scene %2d: Start %s / Frame %d, End %s / Frame %d' % (
i+1,
scene[0].get_timecode(), scene[0].get_frames(),
scene[1].get_timecode(), scene[1].get_frames(),))
start = scene[0].get_frames()
end = scene[1].get_frames()
print(start)
print(end)
(
ffmpeg
.input(file)
.trim(start_frame=start, end_frame=end)
.setpts ('PTS-STARTPTS')
.output('scene %d.mp4' % (i+1))
.run()
)
if stats_manager.is_save_required():
with open(STATS_FILE_PATH, 'w') as stats_file:
stats_manager.save_to_csv(stats_file, base_timecode)
if __name__ == "__main__":
main() -
ffmpeg timecode change detection for html5 Video
8 janvier 2021, par andrewk82Based on this article timecode of scene change detection ffmpeg


i got a file with time-codes for each scene


frame:0 pts:108859 pts_time:1.20954
lavfi.scene_score=0.436456
frame:1 pts:285285 pts_time:3.16983
lavfi.scene_score=0.444537
frame:2 pts:487987 pts_time:5.42208
lavfi.scene_score=0.494256



Now i wanna play those scenes in my HTML-Video Player with Javascript like :


vid.currentTime = 5;



How can i previously convert those (maybe with php) pts_time oder pts in "real" Seconds for my player ? Is there a formula ?


thanks a lot


-
Anomalie #3663 : Anomalie espace privé
22 mai 2016, par Hanjo de LangeProblème est à cause du plugin Albums 3. Si je désactive ce plugin, tout fonctionne bien !