نمایش نتایج 1 تا 2 از 2

نام تاپیک: ویدیو پلیر انلاین

  1. #1
    کاربر دائمی آواتار masiha68
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    نقطه ی صفر مرزی
    پست
    816

    ویدیو پلیر انلاین

    سلام
    می خوام یه سری ویدیو رو از سایت روی موبایل نمایش بدم
    اول اومدم از ویدیو پلیر خود اندروید استفاده کردم که سرعتش فوق العاده کند بود و بی خیالش شدم. بعد رفتم سراغ لایبرری های اماده که انگار بهترینشون ExoPlaye هستش و توسط گوگل پشتیبانی میشه . اون رو روی اپ م پیاده کردم منتها اکثر فرمت ها رو ساپورت نمی کرد.
    میخواستم بدونم کسی تجربه کاری با این لایبرری رو داره که نمونه کد بزاره و یا اینکه لایبرری مشابه رو می شناسه که کار کردن هم باهاش راحت باشه
    این هم نمونه کد من:
    کد HTML:
    
    import android.app.Dialog;
    import android.net.Uri;
    import android.os.Handler;
    import android.view.SurfaceView;
    
    import com.google.android.exoplayer2.DefaultLoadControl;
    import com.google.android.exoplayer2.ExoPlayerFactory;
    import com.google.android.exoplayer2.LoadControl;
    import com.google.android.exoplayer2.SimpleExoPlayer;
    import com.google.android.exoplayer2.source.MediaSource;
    import com.google.android.exoplayer2.source.dash.DashMediaSource;
    import com.google.android.exoplayer2.source.dash.DefaultDashChunkSource;
    import com.google.android.exoplayer2.trackselection.AdaptiveVideoTrackSelection;
    import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
    import com.google.android.exoplayer2.trackselection.TrackSelection;
    import com.google.android.exoplayer2.trackselection.TrackSelector;
    import com.google.android.exoplayer2.ui.SimpleExoPlayerView;
    import com.google.android.exoplayer2.upstream.DataSource;
    import com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
    import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
    import com.google.android.exoplayer2.upstream.DefaultHttpDataSourceFactory;
    import com.google.android.exoplayer2.upstream.HttpDataSource;
    import com.google.android.exoplayer2.util.Util;
    
    import hadafapp.chalaksoft.com.hadaf.R;
    import hadafapp.chalaksoft.com.hadaf.activity.BaseActivity;
    
    
    public class VideoPlayer
    {
    
        //            private static final String VIDEO_URI =
    //                    "http://hadafapp.com/up/1487449143video_2017-01-29_23-54-45.mov";
        private     String VIDEO_URI =
                "http://www-itec.uni-klu.ac.at/ftp/datasets/DASHDataset2014/BigBuckBunny/4sec/BigBuckBunny_4s_onDemand_2014_05_09.mpd";
    
        private SimpleExoPlayer player;
        private SimpleExoPlayerView simpleExoPlayerView;
        private Handler mainHandler;
        private TrackSelection.Factory videoTrackSelectionFactory;
        private TrackSelector trackSelector;
        private LoadControl loadControl;
        private DataSource.Factory dataSourceFactory;
        private MediaSource videoSource;
        private Uri uri;
        private String userAgent;
        private  SurfaceView ss;
        private static final DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
    
    
    
    
            public VideoPlayer(String VIDEO_URI) {
            this.VIDEO_URI=VIDEO_URI;
            Dialog dialog=new Dialog(BaseActivity.activity,android.R.style.Theme_Black_NoTitleBar_Fullscreen);
            dialog.setContentView(R.layout.video_player);
    
             simpleExoPlayerView = (SimpleExoPlayerView) dialog.findViewById(R.id.dialog_player);
            userAgent = Util.getUserAgent(BaseActivity.activity,"SimpleDashExoPlayer");
            createPlayer();
            attachPlayerView();
            preparePlayer();
    
                dialog.show();
    
    
    
    
    
                final int BUFFER_SEGMENT_SIZE = 64 * 1024;
                 final int BUFFER_SEGMENT_COUNT = 256;
                 final int RENDERER_COUNT = 3;
    
    //            Uri uri = Uri.parse(VIDEO_URI);
    //
               // Allocator allocator = new DefaultAllocator(true,BUFFER_SEGMENT_SIZE);
    
    
              //  DataSource dataSource = new DefaultUriDataSource(this, null, getUserAgent(this, "ExoPlayerExample"));
    //
    //            ExtractorSampleSource sampleSource = new ExtractorSampleSource(
    //                    uri, dataSource, allocator, BUFFER_SEGMENT_COUNT * BUFFER_SEGMENT_SIZE);
    //
    //            MediaCodecVideoTrackRenderer videoRenderer = new MediaCodecVideoTrackRenderer(
    //                    this, sampleSource, MediaCodecSelector.DEFAULT, MediaCodec.VIDEO_SCALING_MODE_SCALE_TO_FIT);
    //            MediaCodecAudioTrackRenderer audioRenderer = new MediaCodecAudioTrackRenderer(
    //                    sampleSource, MediaCodecSelector.DEFAULT);
    //            player = ExoPlayer.Factory.newInstance(RENDERER_COUNT);
    //
    //            player.prepare(videoRenderer, audioRenderer, secondAudioRenderer);
    //            player.sendMessage(videoRenderer, MediaCodecVideoTrackRenderer.MSG_SET_SURFACE, surfaceView.getHolder().getSurface());
    //            player.setPlayWhenReady(true);
    
    
        }
    
    
    
    
    
    
    
    
        // Create TrackSelection Factory, Track Selector, Handler, Load Control, and ExoPlayer Instance
        public void createPlayer(){
            mainHandler = new Handler();
            videoTrackSelectionFactory = new AdaptiveVideoTrackSelection.Factory(bandwidthMeter);
            trackSelector = new DefaultTrackSelector(videoTrackSelectionFactory);
            loadControl = new DefaultLoadControl();
            player = ExoPlayerFactory.newSimpleInstance(BaseActivity.activity,trackSelector,loadControl);
        }
    
        // Set player to SimpleExoPlayerView
        public void attachPlayerView(){
            simpleExoPlayerView.setPlayer(player);
        }
    
        // Build Data Source Factory, Dash Media Source, and Prepare player using videoSource
        public void preparePlayer(){
            uriParse();
            dataSourceFactory = buildDataSourceFactory(bandwidthMeter);
            videoSource = new DashMediaSource(uri,buildDataSourceFactory(null),new DefaultDashChunkSource.Factory(dataSourceFactory),mainHandler,null);
            player.prepare(videoSource);
        }
    
        // Parse VIDEO_URI and Save at uri variable
        public void uriParse(){
            uri = Uri.parse(VIDEO_URI);
        }
    
        // Build Data Source Factory using DefaultBandwidthMeter and HttpDataSource.Factory
        private DataSource.Factory buildDataSourceFactory(DefaultBandwidthMeter bandwidthMeter){
            return new DefaultDataSourceFactory(BaseActivity.activity, bandwidthMeter, buildHttpDataSourceFactory(bandwidthMeter));
        }
    
        // Build Http Data Source Factory using DefaultBandwidthMeter
        private HttpDataSource.Factory buildHttpDataSourceFactory(DefaultBandwidthMeter bandwidthMeter){
            return new DefaultHttpDataSourceFactory(userAgent, bandwidthMeter);
        }
    
        // Activity onStop, player must be release because of memory saving
         public void onStop(){
             player.release();
        }
    
    }
    آخرین ویرایش به وسیله masiha68 : پنج شنبه 05 اسفند 1395 در 22:37 عصر

  2. #2
    کاربر دائمی آواتار masiha68
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    نقطه ی صفر مرزی
    پست
    816

    نقل قول: ویدیو پلیر انلاین

    کسی نیست همچین مشکلی رو تجربه کرده باشه !؟

تاپیک های مشابه

  1. سوال: راهنمایی در مورد استفاده از ویدیو پلیر های آنلاین
    نوشته شده توسط NitroPlus در بخش طراحی وب (Web Design)
    پاسخ: 0
    آخرین پست: یک شنبه 05 آبان 1392, 09:34 صبح
  2. سوال: ریپ زدن ویدیو پلیر
    نوشته شده توسط sajad.net در بخش C#‎‎
    پاسخ: 2
    آخرین پست: چهارشنبه 24 آبان 1391, 18:25 عصر
  3. پلیر آنلاین
    نوشته شده توسط nourooz در بخش VB.NET
    پاسخ: 4
    آخرین پست: شنبه 11 شهریور 1391, 15:16 عصر
  4. سوال: درخواست کد نویسی پلیر آنلاین
    نوشته شده توسط madanchi11 در بخش Flash و ActionScript
    پاسخ: 1
    آخرین پست: شنبه 28 مرداد 1391, 11:56 صبح
  5. درخواست یه پلیر انلاین ؟
    نوشته شده توسط mosi2007 در بخش PHP
    پاسخ: 2
    آخرین پست: جمعه 29 اردیبهشت 1391, 18:52 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •