
Recherche avancée
Médias (91)
-
Les Miserables
9 décembre 2019, par
Mis à jour : Décembre 2019
Langue : français
Type : Textuel
-
VideoHandle
8 novembre 2019, par
Mis à jour : Novembre 2019
Langue : français
Type : Video
-
Somos millones 1
21 juillet 2014, par
Mis à jour : Juin 2015
Langue : français
Type : Video
-
Un test - mauritanie
3 avril 2014, par
Mis à jour : Avril 2014
Langue : français
Type : Textuel
-
Pourquoi Obama lit il mes mails ?
4 février 2014, par
Mis à jour : Février 2014
Langue : français
-
IMG 0222
6 octobre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Image
Autres articles (23)
-
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 -
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 (...)
-
Librairies et logiciels spécifiques aux médias
10 décembre 2010, parPour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...)
Sur d’autres sites (6762)
-
ffprobe : remove references to frame->pkt_pts
14 juillet 2021, par James Almerffprobe : remove references to frame->pkt_pts
The field was removed during the last major bump.
Signed-off-by : James Almer <jamrial@gmail.com>
- [DH] doc/ffprobe.xsd
- [DH] doc/filters.texi
- [DH] fftools/ffprobe.c
- [DH] tests/fate-run.sh
- [DH] tests/fate/filter-video.mak
- [DH] tests/ref/fate/exif-image-embedded
- [DH] tests/ref/fate/exif-image-jpg
- [DH] tests/ref/fate/exif-image-tiff
- [DH] tests/ref/fate/exif-image-webp
- [DH] tests/ref/fate/ffprobe_compact
- [DH] tests/ref/fate/ffprobe_default
- [DH] tests/ref/fate/ffprobe_flat
- [DH] tests/ref/fate/ffprobe_ini
- [DH] tests/ref/fate/ffprobe_json
- [DH] tests/ref/fate/ffprobe_xml
- [DH] tests/ref/fate/ffprobe_xsd
- [DH] tests/ref/fate/filter-metadata-avf-aphase-meter-mono
- [DH] tests/ref/fate/filter-metadata-avf-aphase-meter-out-of-phase
- [DH] tests/ref/fate/filter-metadata-cropdetect
- [DH] tests/ref/fate/filter-metadata-ebur128
- [DH] tests/ref/fate/filter-metadata-freezedetect
- [DH] tests/ref/fate/filter-metadata-readvitc-def
- [DH] tests/ref/fate/filter-metadata-readvitc-thr
- [DH] tests/ref/fate/filter-metadata-scdet
- [DH] tests/ref/fate/filter-metadata-scenedetect
- [DH] tests/ref/fate/filter-metadata-signalstats-yuv420p
- [DH] tests/ref/fate/filter-metadata-signalstats-yuv420p10
- [DH] tests/ref/fate/filter-metadata-silencedetect
- [DH] tests/ref/fate/flcl1905
- [DH] tests/ref/fate/gaplessenc-itunes-to-ipod-aac
- [DH] tests/ref/fate/gaplessenc-pcm-to-mov-aac
- [DH] tests/ref/fate/gaplessinfo-itunes1
- [DH] tests/ref/fate/gaplessinfo-itunes2
- [DH] tests/ref/fate/h264-dts_5frames
- [DH] tests/ref/fate/mov-zombie
- [DH] tests/ref/fate/png-side-data
-
dyld[16458] : Library not loaded : @rpath/libavcodec.framework/libavcodec while running my flutter app on iOS
31 janvier 2023, par Stéphane de LucaCompilation is successful. But When I run the code, I get this.


Here is the full trace.


Any idea ?


dyld[16458]: Library not loaded: @rpath/libavcodec.framework/libavcodec
 Referenced from: <3500F5CF-B1D2-30EC-8D7F-1C29BD45D05E> /private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Runner
 Reason: tried: '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/preboot/Cryptexes/OS@rpath/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/System/Library/Frameworks/libavcodec.framework/libavcodec' (errno=2, not in dyld cache)
Library not loaded: @rpath/libavcodec.framework/libavcodec
 Referenced from: <3500F5CF-B1D2-30EC-8D7F-1C29BD45D05E> /private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Runner
 Reason: tried: '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/private/var/containers/Bundle/Application/984D87E5-818C-49A9-9CB5-F0CC3160D2FF/Runner.app/Frameworks/libavcodec.framework/libavcodec' (errno=2), '/usr/lib/swif
dyld config: DYLD_LIBRARY_PATH=/usr/lib/system/introspection DYLD_INSERT_LIBRARIES=/usr/lib/libBacktraceRecording.dylib:/usr/lib/libMainThreadChecker.dylib:/usr/lib/libRPAC.dylib:/Developer/Library/PrivateFrameworks/DTDDISupport.framework/libViewDebuggerSupport.dylib
(lldb) 



The pod is as follows :


# Uncomment this line to define a global platform for your project
platform :ios, '14.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

project 'Runner', {
 'Debug' => :debug,
 'Profile' => :release,
 'Release' => :release,
}

def flutter_root
 generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
 unless File.exist?(generated_xcode_build_settings_path)
 raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
 end

 File.foreach(generated_xcode_build_settings_path) do |line|
 matches = line.match(/FLUTTER_ROOT\=(.*)/)
 return matches[1].strip if matches
 end
 raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end

require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)

flutter_ios_podfile_setup

target 'Runner' do
 use_frameworks!
 use_modular_headers!

 flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

post_install do |installer|
 installer.pods_project.targets.each do |target|
 flutter_additional_ios_build_settings(target)
 end
end



The yaml :



environment:
 sdk: '>=2.18.2 <3.0.0'

# Dependencies specify other packages that your package needs in order to work.
# To automatically upgrade your package dependencies to the latest versions
# consider running `flutter pub upgrade --major-versions`. Alternatively,
# dependencies can be manually updated by changing the version numbers below to
# the latest version available on pub.dev. To see which dependencies have newer
# versions available, run `flutter pub outdated`.
dependencies:
 flutter:
 sdk: flutter
 flutter_localizations:
 sdk: flutter
 # The following adds the Cupertino Icons font to your application.
 # Use with the CupertinoIcons class for iOS style icons.
 cupertino_icons: ^1.0.2
 video_editor: ^1.5.2
 image_picker: ^0.8.6
 helpers: ^1.2.0
 intl: ^0.17.0
 i18n_extension: ^5.0.1
 optimized_cached_image: ^3.0.1
 youtube_player_flutter: ^8.1.1
 flutter_launcher_icons: ^0.11.0
 flutter_lorem: ^2.0.0
 advance_image_picker: ^0.1.7+1
 wechat_assets_picker: ^8.1.4
 lecle_flutter_absolute_path: ^0.0.2+1
 #ffmpeg_kit_flutter: 5.1.0-LTS
 path_provider: ^2.0.11
 video_thumbnail: ^0.5.3
 flutter_document_picker: ^5.1.0
 flutter_login: ^4.1.1
 #flutter_absolute_path: ^1.0.6
 # flutter_absolute_path:
 # git:
 # url: https://github.com/ValeriusGC/flutter_absolute_path.git
 uuid: ^3.0.6
 flutter_form_builder: ^7.7.0
 form_builder_validators: ^8.4.0
 state_persistence: ^0.1.0
 shared_preferences: ^2.0.15
 firebase_core: ^2.4.0
 firebase_storage: ^11.0.8
 video_compress: ^3.1.2
 connectivity_plus: ^3.0.2
 internet_connection_checker: ^1.0.0+1
 cached_video_player: ^2.0.3
 visibility_detector: ^0.3.3
 firebase_database: ^10.0.7
 firebase_auth: ^4.2.1
 firebase_dynamic_links: ^5.0.9
 cloud_firestore: ^4.2.0
 cloud_functions: ^4.0.6
 cached_network_image: ^3.2.3
 ffmpeg_kit_flutter_min_gpl: ^5.1.0
 video_player: ^2.4.10
 provider: ^6.0.5
 camera: ^0.9.8+1
 share_plus: ^6.3.0
 package_info_plus: ^3.0.2

dependency_overrides:
 ffmpeg_kit_flutter_min_gpl: ^5.1.0-LTS

dev_dependencies:
 flutter_test:
 sdk: flutter


 # The "flutter_lints" package below contains a set of recommended lints to
 # encourage good coding practices. The lint set provided by the package is
 # activated in the `analysis_options.yaml` file located at the root of your
 # package. See that file for information about deactivating specific lint
 # rules and activating additional ones.
 flutter_lints: ^2.0.0

``



-
FFMPEG making requests for each frame when decoding a stream, slow performance
3 juillet 2020, par BytiI am having an issue playing MOV camera captured files from an iPhone. My FFMPEG implementation has no problem playing most file formats, this issue is exclusive only for camera captured MOV.



When trying to open the file, I can see in the logs that many requests are made, each requests decoding only one frame, before making a new request which results the video being buffered extremely slowly.
It takes roughly a minute to buffer about a few seconds of the video.



Another thing to mention is that the very same problematic file is played without an issue locally. The problem is when trying to decode while streaming.



I compiled my code on Xcode 11, iOS SDK 13, with cocoapods mobile-ffmpeg-https 4.2.



Here is a rough representation of my code, its pretty standard :



- 

- Here is how I open AVFormatContext :





AVFormatContext *context = avformat_alloc_context();
 context->interrupt_callback.callback = FFMPEGFormatContextIOHandler_IO_CALLBACK;
 context->interrupt_callback.opaque = (__bridge void *)(handler);

 av_log_set_level(AV_LOG_TRACE);

 int result = avformat_open_input(&context, [request.urlAsString UTF8String], NULL, NULL);

 if (result != 0) {
 if (context != NULL) {
 avformat_free_context(context);
 }

 return nil;
 }

 result = avformat_find_stream_info(context, NULL);

 if (result < 0) {
 avformat_close_input(&context);
 return nil;
 }




- 

- Video decoder is opened like so, audio decoder is nearly identical





AVCodecParameters *params = context->streams[streamIndex]->codecpar;
 AVCodec *codec = avcodec_find_decoder(params->codec_id);

 if (codec == NULL) {
 return NULL;
 }

 AVCodecContext *codecContext = avcodec_alloc_context3(codec);

 if (codecContext == NULL) {
 return NULL;
 }

 codecContext->thread_count = 6;

 int result = avcodec_parameters_to_context(codecContext, params);

 if (result < 0) {
 avcodec_free_context(&codecContext);
 return NULL;
 }

 result = avcodec_open2(codecContext, codec, NULL);

 if (result < 0) {
 avcodec_free_context(&codecContext);
 return NULL;
 }




- 

- I read the data from the server like so :





AVPacket packet;

int result = av_read_frame(formatContext, &avPacket);

if (result == 0) {
 avcodec_send_packet(codecContext, &avPacket);

 // .... decode ....
}




Logs after opening the decoders :



// [tls] Request is made here
// [tls] Request response headers are here
Probing mov,mp4,m4a,3gp,3g2,mj2 score:100 size:2048
Probing mp3 score:1 size:2048
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] type:'ftyp' parent:'root' sz: 20 8 23077123
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] ISO: File Type Major Brand: qt 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] type:'wide' parent:'root' sz: 8 28 23077123
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] type:'mdat' parent:'root' sz: 23066642 36 23077123
// [tls] Request is made here
// [tls] Request response headers are here
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] stream 0, sample 4, dts 133333
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] stream 1, sample 48, dts 1114558
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] stream 2, sample 1, dts 2666667
[h264 @ 0x116080200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
// [tls] Request is made here
// [tls] Request response headers are here
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] stream 0, sample 4, dts 133333
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] stream 1, sample 48, dts 1114558
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x115918e00] stream 2, sample 1, dts 2666667
[h264 @ 0x116080200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
// [tls] Request is made here
// [tls] Request response headers are here
// ...




These are some warnings I found in the log



[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] interrupted
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] stream 0: start_time: 0.000 duration: 11.833
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] stream 1: start_time: 0.000 duration: 11.832
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] stream 2: start_time: 0.000 duration: 11.833
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] stream 3: start_time: 0.000 duration: 11.833
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] format: start_time: 0.000 duration: 11.833 bitrate=15601 kb/s
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] Could not find codec parameters for stream 0 (Video: h264, 1 reference frame (avc1 / 0x31637661), none(bt709, left), 1920x1080, 1/1200, 15495 kb/s): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x11c030800] After avformat_find_stream_info() pos: 23077123 bytes read:16293 seeks:1 frames:0




Also when calling avformat_open_input(...), 2 GET requests are made, before the returning.
Notice the "Probing mp3 score:1", that is not shown for other MOV files or any other files.



I have tried different versions of ffmpeg, I have tried messing around with the delays of the stream, I tried removing my custom interrupt callback, nothing have worked.



Code works fine with any other videos I have tested (mp4, mkv, avi).



Metadata of the test file :



Metadata:
 major_brand : qt 
 minor_version : 0
 compatible_brands: qt 
 creation_time : 2019-04-14T08:17:03.000000Z
 com.apple.quicktime.make: Apple
 com.apple.quicktime.model: iPhone 7
 com.apple.quicktime.software: 12.2
 com.apple.quicktime.creationdate: 2019-04-14T11:17:03+0300
 Duration: 00:00:16.83, bitrate: N/A
 Stream #0:0(und), 0, 1/600: Video: h264, 1 reference frame (avc1 / 0x31637661), none(bt709), 1920x1080 (0x0), 0/1, 15301 kb/s, 30 fps, 30 tbr, 600 tbn (default)
 Metadata:
 creation_time : 2019-04-14T08:17:03.000000Z
 handler_name : Core Media Video
 encoder : H.264
 Stream #0:1(und), 0, 1/44100: Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, 100 kb/s (default)
 Metadata:
 creation_time : 2019-04-14T08:17:03.000000Z
 handler_name : Core Media Audio
 Stream #0:2(und), 0, 1/600: Data: none (mebx / 0x7862656D), 0/1, 0 kb/s (default)
 Metadata:
 creation_time : 2019-04-14T08:17:03.000000Z
 handler_name : Core Media Metadata
 Stream #0:3(und), 0, 1/600: Data: none (mebx / 0x7862656D), 0/1, 0 kb/s (default)
 Metadata:
 creation_time : 2019-04-14T08:17:03.000000Z
 handler_name : Core Media Metadata