
Recherche avancée
Médias (1)
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (58)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
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. -
Submit enhancements and plugins
13 avril 2011If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.
Sur d’autres sites (10069)
-
Android Exoplayer garbled mp4 video output on imagereader surface while playing fine on SurfaceView (Samsung galaxy tab s7)
29 mars 2023, par OrcunProblem :


I am trying to play an mp4 video file on Samsung Galaxy Tab S7 for video processing purposes. For the purpose, I use Exoplayer(v2.18.4) library to be able to play the video onto an ImageReader surface so that I can grab the frames in
ImageReader.OnImageAvailableListener
.

I do not have any problems in getting the frames. However, the frames I acquire are garbled/corrupted like :




When I saw this frame, it made me think that it is some sort of color format or codec issue for the mp4 file or device I use. In logcat, there are no errors reported.
Device uses
[OMX.qcom.video.decoder.avc]
decoder. Also, same video plays nicely on some other devices that use exactly the same decoder.

What I tried so far :


I tried a lot of things to understand the root cause and also find a solution, so my brain currently is free flowing stream. I will try to summarise, please bear with me.


I use a
CustomMediaCodecVideoRenderer
in my app which overridesMediaCodecVideoRenderer.getMediaFormat
of Exoplayer to set color format like :

setInteger(MediaFormat.KEY_COLOR_FORMAT, MediaCodecInfo.CodecCapabilities.COLOR_FormatYUV420Flexible)



This step proved itself necessary. Without it I get a crash simply because I cannot access the image planes of an image frame in expected YUV image format.
This unfortunately was not enough for the Samsung Galaxy Tab 7 although it was already enough for another device like Xiaomi to render the image correctly.


Then I decided to use a library like
ffmpeg
to modify the mp4 file itself to maybe use a different profile, color format, resolution that is widely compatible in android devices. No luck so far.
a quickffprobe
on my mp4 file shows :

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'outputyuv169.mp4':
Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf59.16.100
Duration: 00:03:00.02, start: 0.000000, bitrate: 4823 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 
1280x720 [SAR 1:1 DAR 16:9], 4820 kb/s, 30 fps, 30 tbr, 360k tbn (default)



I tried even recording a simple video on the tablet itself and using that as my input file. Nevertheless, still getting similarly garbled frames.


One thing I keep noticing in logcat is this line :


[OMX.qcom.video.decoder.avc] using color format 0x7fa30c04 in place of 0x7f420888


and


[OMX.qcom.video.decoder.avc] Requested output format 0x7f420888 and got 0x7fa30c04


where
0x7fa30c04
refers toYCbCr_420_SP_VENUS_UBWC
. Not really sure If this has anything to do with it. I did not dive too deep into that because same log is present also on other device that renders the mp4 correctly.

I would be grateful for any clue.


-
Crash while using ffmpeg4android using Galaxy s6 edge device
21 juillet 2016, par Amira Elsayed IsmailI am using ffmpeg4android_lib to compress video in my android application, it is working in almost all testing devices but it does not work in Galaxy s6 edge and Galaxy s7 edge.
my code as following :
String inputFile = FileManager.getInstance().getRealPathFromVideoUri(context, video);
Log.i("INPUT FILE PATH", inputFile);
LoadJNI vk = new LoadJNI();
try {
String workFolder = context.getApplicationContext().getFilesDir().getAbsolutePath();
String outputFile = FileManager.getInstance().getFileFullName(ForSaleConstants.VIDEO_FOLDER,
String.format(ForSaleConstants.VIDEO_NAME_FILE_FORMAT, ForSaleConstants.VIDEO_NAME_FILE_NAME_PREFIX, System.currentTimeMillis()));
String complexCommand[] = {
"ffmpeg", "-y"
, "-i", inputFile
, "-strict", "experimental"
, "-s", "320x240"
, "-r", "25"
, "-aspect", "4:3"
, "-ab", "48000"
, "-ac", "2"
, "-vcodec", "mpeg4"
, "-movflags", "+faststart"
, "-ar", "22050"
, "-b", "2097k"
, outputFile};
vk.run(complexCommand, workFolder, context.getApplicationContext());
Log.i("OUTPUT FILE PATH", outputFile);
return outputFile;
} catch (Throwable e) {
ForSaleServerManager.getInstance().logAndroidError("Couldn't compress video file");
return null;
}The crash as following :
nativeLibraryDirectories=[/data/app/com.forsale.forsale-1/lib/arm64, /data/app/com.forsale.forsale-1/base.apk!/lib/arm64-v8a, /vendor/lib64, /system/lib64]]] couldn't find "libloader-jni.so"
at java.lang.Runtime.loadLibrary(Runtime.java:367)
at java.lang.System.loadLibrary(System.java:1076)
at com.netcompss.loader.LoadJNI.<clinit>(LoadJNI.java:13)
</clinit> -
Why does ffmpeg4android fail on Galaxy S6 ?
26 novembre 2015, par AndreiI have created an app that uses the ffmpeg4android library found here :
http://androidwarzone.blogspot.co.il/2011/12/ffmpeg4android.htmlI succesfully managed to encode & crop video using the following command :
"ffmpeg -y -i [input_video_path] -preset ultrafast -strict -2 -vf crop=480:480 :[startX]:0 -r 25 -ab 48000 -ac 2 -ar 22050 -b 2097k [outputPath]"This command works on several devices : motorola G (api 22), galaxy s4 being some of them.
Yet, on galaxy S6 it crashes when executing the command.
In the ffmpeg log, it says that it does not recognize the preset option. Can anyone help me understand why and what is the proper fix ?