Recherche avancée

Médias (91)

Autres articles (39)

  • (Dés)Activation de fonctionnalités (plugins)

    18 février 2011, par

    Pour gérer l’ajout et la suppression de fonctionnalités supplémentaires (ou plugins), MediaSPIP utilise à partir de la version 0.2 SVP.
    SVP permet l’activation facile de plugins depuis l’espace de configuration de MediaSPIP.
    Pour y accéder, il suffit de se rendre dans l’espace de configuration puis de se rendre sur la page "Gestion des plugins".
    MediaSPIP est fourni par défaut avec l’ensemble des plugins dits "compatibles", ils ont été testés et intégrés afin de fonctionner parfaitement avec chaque (...)

  • Le plugin : Podcasts.

    14 juillet 2010, par

    Le problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
    Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
    Types de fichiers supportés dans les flux
    Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

Sur d’autres sites (6194)

  • Anomalie #3371 : faille sécurité ? balise meta+refresh dans un champ d’article

    11 octobre 2015, par b b

    Super, merci cedric :)

  • equivalent option in ffmpeg for ffplay's -infbuff

    25 septembre 2015, par Paul

    I have a multicast UDP stream that I can watch (with almost no errors) if I use ffplay’s infbuf option.

    But when I try to encode it via ffmpeg, ffmpeg reports a lot of errors and the resultant video has lots of errors.

    I have tried setting the fifo_size to a super large value like 655360 and the buf_size as per https://www.ffmpeg.org/ffmpeg-protocols.html#udp. But none of gets rid of the decode errors in ffmpeg.

    Is it possible to provide settings to ffmpeg that do something similar to what ffplay’s -intbuf does ? I want my video encode to be as error free as video playback via ffplay.

  • Youtube Watch Me Android application closing unexpectedly

    18 septembre 2015, par Kichu

    I create android application from https://github.com/youtube/yt-watchme.

    When I try to create the event using the "CREATE LIVE EVENT" button.It throws some following error. I think it’s happening due to the camera permission issue.

    ERROR :

    09-17 11:43:53.582  32383-32383/com.google.android.apps.watchme E/AndroidRuntime﹕ FATAL EXCEPTION: main
       Process: com.google.android.apps.watchme, PID: 32383
       java.lang.NoSuchMethodError: com.google.android.apps.watchme.StreamerActivity.checkSelfPermission
               at com.google.android.apps.watchme.StreamerActivity.startStreaming(StreamerActivity.java:174)
               at com.google.android.apps.watchme.StreamerActivity.access$200(StreamerActivity.java:46)
               at com.google.android.apps.watchme.StreamerActivity$1.onServiceConnected(StreamerActivity.java:63)
               at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1110)
               at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1127)
               at android.os.Handler.handleCallback(Handler.java:733)
               at android.os.Handler.dispatchMessage(Handler.java:95)
               at android.os.Looper.loop(Looper.java:136)
               at android.app.ActivityThread.main(ActivityThread.java:5097)
               at java.lang.reflect.Method.invokeNative(Native Method)
               at java.lang.reflect.Method.invoke(Method.java:515)
               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
               at dalvik.system.NativeStart.main(Native Method)

    Any one please suggest . How can I solve this issue.

    Thanks In Advance

    Code Update :

    Manifest file XML

    <manifest package="com.google.android.apps.watchme">


       
       
       
       
       
       
       
       
       

       
       

       <application>
           <activity>
               
                   <action></action>

                   <category></category>
               
           </activity>
           <activity></activity>

           <service></service>
       </application>
       
    </manifest>

    Stream Activity File

    /*
    * Copyright (c) 2014 Google Inc.
    *
    * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
    * in compliance with the License. You may obtain a copy of the License at
    *
    * http://www.apache.org/licenses/LICENSE-2.0
    *
    * Unless required by applicable law or agreed to in writing, software distributed under the License
    * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
    * or implied. See the License for the specific language governing permissions and limitations under
    * the License.
    */

    package com.google.android.apps.watchme;

    import android.Manifest;
    import android.app.Activity;
    import android.content.ComponentName;
    import android.content.Context;
    import android.content.Intent;
    import android.content.ServiceConnection;
    import android.content.pm.PackageManager;
    import android.hardware.Camera;
    import android.os.Bundle;
    import android.os.IBinder;
    import android.os.PowerManager;
    import android.support.design.widget.Snackbar;
    import android.support.v4.app.ActivityCompat;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ToggleButton;

    import com.google.android.apps.watchme.util.Utils;
    import com.google.android.apps.watchme.util.YouTubeApi;

    import java.util.ArrayList;
    import java.util.List;

    /**
    * @author Ibrahim Ulukaya &lt;ulukaya@google.com&gt;
    *         <p></p>
    *         StreamerActivity class which previews the camera and streams via StreamerService.
    */
    public class StreamerActivity extends Activity {
       // CONSTANTS
       // TODO: Stop hardcoding this and read values from the camera's supported sizes.
       public static final int CAMERA_WIDTH = 640;
       public static final int CAMERA_HEIGHT = 480;
       private static final int REQUEST_CAMERA_MICROPHONE = 0;

       // Member variables
       private StreamerService streamerService;
       private ServiceConnection streamerConnection = new ServiceConnection() {
           @Override
           public void onServiceConnected(ComponentName className, IBinder service) {
               Log.d(MainActivity.APP_NAME, "onServiceConnected");

               streamerService = ((StreamerService.LocalBinder) service).getService();

               restoreStateFromService();
               startStreaming();
           }

           @Override
           public void onServiceDisconnected(ComponentName className) {
               Log.e(MainActivity.APP_NAME, "onServiceDisconnected");

               // This should never happen, because our service runs in the same process.
               streamerService = null;
           }
       };
       private PowerManager.WakeLock wakeLock;
       private Preview preview;
       private String rtmpUrl;
       private String broadcastId;

       @Override
       public void onCreate(Bundle savedInstanceState) {
           Log.d(MainActivity.APP_NAME, "onCreate");
           super.onCreate(savedInstanceState);

           broadcastId = getIntent().getStringExtra(YouTubeApi.BROADCAST_ID_KEY);
           //Log.v(MainActivity.APP_NAME, broadcastId);

           rtmpUrl = getIntent().getStringExtra(YouTubeApi.RTMP_URL_KEY);

           if (rtmpUrl == null) {
               Log.w(MainActivity.APP_NAME, "No RTMP URL was passed in; bailing.");
               finish();
           }
           Log.i(MainActivity.APP_NAME, String.format("Got RTMP URL '%s' from calling activity.", rtmpUrl));

           setContentView(R.layout.streamer);
           preview = (Preview) findViewById(R.id.surfaceViewPreview);

           if (!bindService(new Intent(this, StreamerService.class), streamerConnection,
                   BIND_AUTO_CREATE | BIND_DEBUG_UNBIND)) {
               Log.e(MainActivity.APP_NAME, "Failed to bind StreamerService!");
           }

           final ToggleButton toggleButton = (ToggleButton) findViewById(R.id.toggleBroadcasting);
           toggleButton.setOnClickListener(new OnClickListener() {
               @Override
               public void onClick(View v) {
                   if (toggleButton.isChecked()) {
                       streamerService.startStreaming(rtmpUrl);
                   } else {
                       streamerService.stopStreaming();
                   }
               }
           });
       }

       @Override
       protected void onResume() {
           Log.d(MainActivity.APP_NAME, "onResume");

           super.onResume();

           if (streamerService != null) {
               restoreStateFromService();
           }
       }

       @Override
       protected void onPause() {
           Log.d(MainActivity.APP_NAME, "onPause");

           super.onPause();

           if (preview != null) {
               preview.setCamera(null);
           }

           if (streamerService != null) {
               streamerService.releaseCamera();
           }
       }

       @Override
       protected void onDestroy() {
           Log.d(MainActivity.APP_NAME, "onDestroy");

           super.onDestroy();

           if (streamerConnection != null) {
               unbindService(streamerConnection);
           }

           stopStreaming();

           if (streamerService != null) {
               streamerService.releaseCamera();
           }
       }

       private void restoreStateFromService() {
           preview.setCamera(Utils.getCamera(Camera.CameraInfo.CAMERA_FACING_FRONT));
       }

       private void startStreaming() {
           Log.d(MainActivity.APP_NAME, "startStreaming");

           PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
           wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, this.getClass().getName());
           wakeLock.acquire();

           if (!streamerService.isStreaming()) {

               String cameraPermission = Manifest.permission.CAMERA;
               String microphonePermission = Manifest.permission.RECORD_AUDIO;
               int hasCamPermission = checkSelfPermission(cameraPermission);
               int hasMicPermission = checkSelfPermission(microphonePermission);
               List<string> permissions = new ArrayList<string>();
               if (hasCamPermission != PackageManager.PERMISSION_GRANTED) {
                   permissions.add(cameraPermission);
                   if (ActivityCompat.shouldShowRequestPermissionRationale(this,
                           Manifest.permission.CAMERA)) {
                       // Provide rationale in Snackbar to request permission
                       Snackbar.make(preview, R.string.permission_camera_rationale,
                               Snackbar.LENGTH_INDEFINITE).show();
                   } else {
                       // Explain in Snackbar to turn on permission in settings
                       Snackbar.make(preview, R.string.permission_camera_explain,
                               Snackbar.LENGTH_INDEFINITE).show();
                   }
               }
               if (hasMicPermission != PackageManager.PERMISSION_GRANTED) {
                   permissions.add(microphonePermission);
                   if (ActivityCompat.shouldShowRequestPermissionRationale(this,
                           Manifest.permission.RECORD_AUDIO)) {
                       // Provide rationale in Snackbar to request permission
                       Snackbar.make(preview, R.string.permission_microphone_rationale,
                               Snackbar.LENGTH_INDEFINITE).show();
                   } else {
                       // Explain in Snackbar to turn on permission in settings
                       Snackbar.make(preview, R.string.permission_microphone_explain,
                               Snackbar.LENGTH_INDEFINITE).show();
                   }
               }
               if (!permissions.isEmpty()) {
                   String[] params = permissions.toArray(new String[permissions.size()]);
                   ActivityCompat.requestPermissions(this, params, REQUEST_CAMERA_MICROPHONE);
               } else {
                   // We already have permission, so handle as normal
                   streamerService.startStreaming(rtmpUrl);
               }
           }
       }

       /**
        * Callback received when a permissions request has been completed.
        */
       @Override
       public void onRequestPermissionsResult(int requestCode,
                                              String permissions[], int[] grantResults) {
           switch (requestCode) {
               case REQUEST_CAMERA_MICROPHONE: {
                   Log.i(MainActivity.APP_NAME, "Received response for camera with mic permissions request.");

                   // We have requested multiple permissions for contacts, so all of them need to be
                   // checked.
                   if (Utils.verifyPermissions(grantResults)) {
                       // permissions were granted, yay! do the
                       // streamer task you need to do.
                       streamerService.startStreaming(rtmpUrl);
                   } else {
                       Log.i(MainActivity.APP_NAME, "Camera with mic permissions were NOT granted.");
                       Snackbar.make(preview, R.string.permissions_not_granted,
                               Snackbar.LENGTH_SHORT)
                               .show();
                   }
                   break;
               }

               // other 'switch' lines to check for other
               // permissions this app might request
           }
           return;
       }


       private void stopStreaming() {
           Log.d(MainActivity.APP_NAME, "stopStreaming");

           if (wakeLock != null) {
               wakeLock.release();
               wakeLock = null;
           }

           if (streamerService.isStreaming()) {
               streamerService.stopStreaming();
           }
       }

       public void endEvent(View view) {
           Intent data = new Intent();
           data.putExtra(YouTubeApi.BROADCAST_ID_KEY, broadcastId);
           if (getParent() == null) {
               setResult(Activity.RESULT_OK, data);
           } else {
               getParent().setResult(Activity.RESULT_OK, data);
           }
           finish();
       }

    }
    </string></string>

    Update ERROR CODE :

    08:57:14.447  18829-18829/com.google.android.apps.watchme E/AndroidRuntime﹕ FATAL EXCEPTION: main
       Process: com.google.android.apps.watchme, PID: 18829
       java.lang.UnsatisfiedLinkError: Couldn't load ffmpeg from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.google.android.apps.watchme-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.google.android.apps.watchme-1, /vendor/lib, /system/lib]]]: findLibrary returned null
               at java.lang.Runtime.loadLibrary(Runtime.java:358)
               at java.lang.System.loadLibrary(System.java:526)
               at com.google.android.apps.watchme.Ffmpeg.<clinit>(Ffmpeg.java:26)
               at com.google.android.apps.watchme.VideoStreamingConnection.open(VideoStreamingConnection.java:71)
               at com.google.android.apps.watchme.StreamerService.startStreaming(StreamerService.java:80)
               at com.google.android.apps.watchme.StreamerActivity.startStreaming(StreamerActivity.java:212)
               at com.google.android.apps.watchme.StreamerActivity.access$200(StreamerActivity.java:47)
               at com.google.android.apps.watchme.StreamerActivity$1.onServiceConnected(StreamerActivity.java:64)
               at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1110)
               at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1127)
               at android.os.Handler.handleCallback(Handler.java:733)
               at android.os.Handler.dispatchMessage(Handler.java:95)
               at android.os.Looper.loop(Looper.java:136)
               at android.app.ActivityThread.main(ActivityThread.java:5097)
               at java.lang.reflect.Method.invokeNative(Native Method)
               at java.lang.reflect.Method.invoke(Method.java:515)
               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
               at dalvik.system.NativeStart.main(Native Method)
    </clinit>