Tuval harika! - sayfa 37

 
Реter Konow :

Sadece MQL ile ilgili yaratıcı konudan uzaksınız. Sizin için, optimize edilmiş küçük Uzman Danışmanlar, MQL'de bir nişin, yaratıcılığın ve işin sınırıdır. Ve bu konu gereksiz.

Tartışmayacağım, çünkü tüketici kitlesinin Pazarda ne kadar sığ bir şekilde yüzdüğünü kendim anladım. Ama "yaratıcı yük", ihtiyaçları olsun ya da olmasın, beni başarılarıma götürdü. Artık bu ücret bitti. Artık grafik yapmıyorum.

Yapamam Peter, sana katılıyorum. Igor, kendisinden çok şey öğrenebileceğiniz kaliteli bir programcıdır.
Ve standart Gif formatının kullanılması, kesinlikle kendi formatınızı ve sıkıştırma algoritmanızı uygulamaya çalışmaktan daha uygundur.
Çok daha kullanışlı - Uygun, tanıdık bir şekilde bir gif oluşturup düzenledim ve animasyonu programıma yerleştirdim.
Ve bu arada, GIF patentleri 2004'te sona erdi, çünkü. sorunsuz kullanılabilir.
Gif yazmak için kendi mql programımı geliştirmenin mantığını anlamıyorum, çünkü mevcut ekran kaydediciler (Camtasia Studio gibi) bunu daha iyi yapacaktır.

Ancak MT5 penceresine hareketli gifler eklemek için bir İncil yazmak güzel olurdu. Üstelik bu çok da zor bir iş değil. Formatın yapısına kısaca baktıktan sonra 1-2 gün içinde yapılabileceğini düşünüyorum.

Not Ah, Peter, gururlu kibirinizi ve övünmenizi alçakgönüllülükle değiştirirseniz, sizin için hiçbir bedeli olmazdı.

 
Nikolai Semko :

Yapamam Peter, sana katılıyorum. Igor, kendisinden çok şey öğrenebileceğiniz kaliteli bir programcıdır.
Ve standart Gif formatının kullanılması, kesinlikle kendi formatınızı ve sıkıştırma algoritmanızı uygulamaya çalışmaktan daha uygundur.
Çok daha kullanışlı - Uygun, tanıdık bir şekilde bir gif oluşturup düzenledim ve animasyonu programıma yerleştirdim.
Ve bu arada, GIF patentleri 2004'te sona erdi çünkü. sorunsuz kullanılabilir.
Gif yazmak için kendi mql programımı geliştirmenin mantığını anlamıyorum, çünkü mevcut ekran kaydediciler (Camtasia Studio gibi) bunu daha iyi yapacaktır.

Ancak MT5 penceresine hareketli gifler eklemek için bir İncil yazmak güzel olurdu. Üstelik bu çok da zor bir iş değil. Formatın yapısına kısaca baktıktan sonra 1-2 gün içinde yapılabileceğini düşünüyorum.

Not Ah, Peter, gururlu kibirinizi ve övünmenizi alçakgönüllülükle değiştirirseniz, sizin için hiçbir bedeli olmazdı.

1. Igor'un bir programcı olarak ne kadar iyi olduğu hakkında hiçbir fikrim yok. Evet, onu suçlamadım. Ama eğer iyiyse, öyle olsun.

2. Standart formatı kullanabiliyorsanız, aferin, kabul etmezdim. Bana öyle geliyor ki, bu kendi basitleştirilmiş olanı yazmaktan daha zor. Tekrar ediyorum - çerçeveleri işlemeniz gerekmeyen giflerde enerji tasarrufu yapacaksınız. Yani onu kaldırdım ve hemen MQL programına aktardım. AMA - talimatlar yapmanız ve görüntüleri kare kare işlemeniz gerekiyorsa - standart bir GIF size yardımcı olmaz. Bir anlamda GIF işleme editör üzerinden olmalı ve sırayla her kareyi oraya yükleyecek ve bu şekilde bir video dizisi mi oluşturacaksınız? Ve oynatma mekanizması daha karmaşık olacaktır. Çok daha zor. Ama kontrol edelim.

3. Danışmanlarda kendi ekran kaydedicilerinizi geliştirmek elbette saçmalık.

not. Alçakgönüllülük benim yeteneğim değil.

 

Nikolay, genel olarak, standart .gif biçimini açma ve onu mql programına entegre etme deneyi ciddi bir şekilde başlatıldı! İyi şanlar.

not. Başarılı olursan büyük harfle işin biter, değilse de küçük harfle.)) Denemek işkence değildir.

Sonunda, basit bir döngüsel 10 kare video talimatı oluşturmanın işçilik maliyetlerini ve okuma ve oynatma mekanizmasının karmaşıklığını karşılaştırmak mümkün olacaktır.

 
Andrey Dik :

https://www.mql5.com/en/blogs/post/728564

burada bu blog sayfasında nasıl bir illüstrasyon (resim) yaptınız? Bir web sayfasına resim koymayı nasıl başardınız? Anlayamıyorum - NASIL?!!!


Flood yapmak iyidir. Kendisi özür diledi.
 
Andrey Dik :

hayır, bu bir prensip meselesi ..... Allah'ın yardımıyla ve meslektaşlarımızla umarım doğru yola girmenize yardımcı oluruz, iyi bir insansınız.

İsterseniz ilkeleri kişisel olarak tartışalım. Burada düzeni koruyalım.
 
Nikolai, bu standart gifin okunabilir bir dosyaya ve ondan bir diziye aktarılması gerekiyor. İşletim sistemine bağlamalar olabilir. GIF dosyasını paketinden çıkarmanız ve görüntü verilerinin nerede olduğunu, palet indekslemesinin nerede olduğunu, oynatma verilerinin nerede olduğunu ve işletim sistemi verilerinin veya diğer normal verilerin nerede olduğunu ayırmanız gerekecektir. Kısacası, böyle bir dosyada çok fazla "çöp" olacak, ancak yine de şifresinin çözülmesi ve doğru olanın alınması gerekiyor. Nasıl idare edeceksiniz bilmiyorum.
 
Andrey Dik :

Lütfen soruyu cevaplayın - resmi blogunuza nasıl gönderdiniz. basit soru, cevapla ve bitir.

Genellikle - aldı ve yerleştirildi. Andrew, sadece neyi sevmediğini açıkla. Sadece sel olmadan.

EA'daki ekran kaydediciler hakkındaki fikrimden rahatsızsanız, bunun nedeni tuvalde (henüz) çok iyi olmamanızdır. Ben de genetik algoritmaları karıştırmıyorum ve hiçbir şey beyan etmiyorum. Ve eğer yaparsam, hatalarımı çabucak kabul ederim. Tuvali MT'den alıp bir tür Windows video formatına çeviremezsiniz. Zor. Çok zor. Ve anlamsız. Suç yok.

 
Andrey Dik :

Piotr, sadece "yakalayıp yayınlamakla" kalmadınız, ekran görüntüsünü panoya PrintScrin düğmesiyle yerleştirdiniz, Paint'e yapıştırdınız, fazlalığı kestiniz ve bir grafik formatı dosyasına kaydettiniz ve ancak daha sonra yapıştırdınız. Blog.

Yani, Windows araçlarını ve grafik verileri için genel kabul görmüş standartları aktif olarak kullanırsınız, bunlar olmadan kullanıcıya eylem programlarınız hakkında bilgi iletemezsiniz.

Yani, tüm bunları tuval üzerine yaptıysanız, üçüncü taraf programları kullanmadan programınızdaki bir komutla basitçe bir resim (hatta bir video!) kaydedebilirsiniz.

Benim için zor değil ve pek iyi olmadığım bir konuda soru sormak, hataları kabul etmek ve gelişmeye çalışmak hiç de ayıp değil. Ve ortaya çıktığı gibi, tuvali bir video dosyasına kaydetmek hiç de zor değil.

1. .bmp formatında resim - sorun değil. Ancak resimlerden .avi (veya diğer) formatında video kaydetmek çok zordur. Almayacağım çünkü "oyun muma değmez." Video herhangi bir kaydedici tarafından kolayca kaydedilebilir, ancak MQL araçları bunun için tasarlanmamıştır. DLL kullanabilirsiniz, ama neden? Bir kayıt cihazı alıp ihtiyacımız olanı kaydediyoruz. MQL'de böyle bir mekanizmanın geliştirilmesi çok zahmetli bir iştir. Ve eğer öyle dersem, buna inanabilirsin.))

2. mql'de gif'in anlamı - kısa video talimatları veya gösteriler. Nikolai, çoğu insan gibi, standart bir gif dosyası alıp MQL'de okumak ve oynatmak için bir algoritma yazabileceğinize inanıyor ve işiniz bitti. Ben öyle düşünmüyorum. Birçok tuzak var. Dosya şifre çözme, veri çıkarma, diziye yükleme, okuma/oynatma mekanizması yazma. Bu çok zor. Talimatlar yalnızca 10 - 20 çerçeve içerdiğinden, kendi basitleştirilmiş sürümünüzü yapmak daha kolaydır. İşlemleri bir saat sürer. Öte yandan, talimatlar tek tip renkler içerdiğinden daha iyi sıkıştırırlar. Ve video neredeyse hiç tekrar eden renk dizisi içermiyor. Ve her kare farklıdır. Bu nedenle, renk paleti indeksleme kullanılır. Bir şekilde veri miktarını sıkıştırmak için.

 
Реter Konow :

1. .bmp formatında resim - sorun değil. Ancak resimlerden .avi (veya diğer) formatında video kaydetmek çok zordur. Almayacağım çünkü "oyun muma değmez." Video herhangi bir kaydedici tarafından kolayca kaydedilebilir, ancak MQL araçları bunun için tasarlanmamıştır. DLL kullanabilirsiniz, ama neden? Bir kayıt cihazı alıp ihtiyacımız olanı kaydediyoruz. MQL'de böyle bir mekanizmanın geliştirilmesi çok zahmetli bir iştir. Ve eğer öyle dersem, buna inanabilirsin.))

2. mql'de gif'in anlamı - kısa video talimatları veya gösteriler. Nikolai, çoğu insan gibi, standart bir gif dosyası alıp MQL'de okumak ve oynatmak için bir algoritma yazabileceğinize inanıyor ve işiniz bitti. Ben öyle düşünmüyorum. Birçok tuzak var. Dosya şifre çözme, veri çıkarma, diziye yükleme, okuma/oynatma mekanizması yazma. Bu çok zor. Talimatlar yalnızca 10 - 20 çerçeve içerdiğinden, kendi basitleştirilmiş sürümünüzü yapmak daha kolaydır. İşlemleri bir saat sürer. Öte yandan , talimatlar tek tip renkler içerdiğinden daha iyi sıkıştırırlar. Ve video neredeyse hiç tekrar eden renk dizisi içermiyor. Ve her kare farklıdır. Bu nedenle, renk paleti indeksleme kullanılır. Bir şekilde veri miktarını sıkıştırmak için.

Her şey neredeyse aynı, ama tam tersi.
Sadece paletli tüm bu rutin, paketleme bir gif'te uygulanır ve kimsenin ihtiyaç duymadığı bir bisiklet icat etmeye gerek yoktur, ayrıca nasıl sürüleceği de net değildir.
Saatte 10-20 kare. Dalga mı geçiyorsun? Kim böyle bir "mutluluğa" ihtiyaç duyar?
Camtasia'da ekrandan küçük bir video çekmek, düzenlemek, metin ve grafik etiketleri tanıtmak ve hareketli bir gif'e dönüştürmek birkaç dakika sürer.

Ve bir programa kaynak olarak bir gif dosyasının eklenmesi buğulanmış şalgamdan daha kolaydır:

 #resource   "\\Files\\Dialog.gif" as uchar G[]
struct Gifka
  {
   uchar              format[ 6 ];
   short              widht;;
   short              height;
   uchar              mask1;
   uchar              BG;
   uchar              R;
   // и т.д.
  };
Gifka g;
void OnStart ()
  {
   CharArrayToStruct (g,G);
   Print ( "Gif size - " + string ( ArraySize (G))+ " bytes" );
   Print ( "Format Gif - " + CharArrayToString (g.format));
   Print ( "Gif's Widht = " + string (g.widht));
   Print ( "Gif's Height = " + string (g.height));   
  }

Format hakkında buradan okuyabilirsiniz:
http://home.onego.ru/~chiezo/gif.htm

Dosyalar:
Dialog.gif  681 kb
GifTest.mq5  3 kb
 
Nikolai Semko :

Her şey neredeyse aynı, ama tam tersi.
Sadece paletli tüm bu rutin, paketleme bir gif'te uygulanır ve kimsenin ihtiyaç duymadığı bir bisiklet icat etmeye gerek yoktur, ayrıca nasıl sürüleceği de net değildir.
Saatte 10-20 kare. Dalga mı geçiyorsun? Kim böyle bir "mutluluğa" ihtiyaç duyar?
Camtasia'da ekrandan küçük bir video çekmek, düzenlemek, metin ve grafik etiketlerini tanıtmak ve hareketli bir GIF'e dönüştürmek birkaç dakika sürer.

Ve bir programa kaynak olarak bir gif dosyasının eklenmesi buğulanmış şalgamdan daha kolaydır:

Formatı buradan okuyabilirsiniz:
http://home.onego.ru/~chiezo/gif.htm

Nikolai, gifler farklıdır. Bazılarında geçmeli sıkıştırma uygulaması vardır, bazılarında yoktur, bazılarında renk paleti indeksleme vardır, bazılarında yoktur. Camtasia'nın GIF ayarları vardır ve bunlar oldukça kapsamlıdır.

Formatın açıklamasına olan bağlantınızı okudum. Bu yüzden bu davayı almadım. Çok sayıda nüans vardır ve algoritma bunları analiz etmelidir. Bu formattaki veri yığınını ayrıştıran ve nasıl yeniden üretileceğini belirleyen bir algoritma hayal edin. Bu biçimin açıklamasını bu açıdan okuyun. C++'ın bunun için hazır algoritmaları olduğundan eminim, ancak bunları MQL'ye entegre etmek daha az zor değil.

Yani sorular aynı kalıyor:

//-------------------------------------------

1. Çıktı dosyasının şifresini nasıl çözeceksiniz?

2. Tuval çözümlerinizle onun içini nasıl aşıyorsunuz?

3. Bir gif dosyasını entegre etmek, oynatılması için bir mekanizma yazmak anlamına gelmez (bu, dosyanın şifresi çözülmeden yazılamaz).

4. Normal bir düzenleyicide, arka planın renklerini ve ayrıntıları kontrol edebilir, onları "monolitik" hale getirebilirsiniz, bu da sıkıştırmayı büyük ölçüde artırır, ancak Camtasia'da böyle bir olasılık yok gibi görünüyor...

5. Camtasia'da kareleri düzenlemek için yaklaşık olarak aynı zamanı harcayacaksınız ve düzenleme kalitesi daha kötü olacak - Camtasia farklı bir iş için tasarlandı.

//------------------------------------------------ ----

En iyi ihtimalle, neredeyse aynı miktarda çabayla kötü sıkıştırılmış, düşük kaliteli gifler elde edersiniz. Tabii ki, soyut giflerden bahsetmiyorsak, ancak 10-20 çerçevelik belirli talimatlardan bahsediyorsak.

AMA, bu sadece benim görüşüm.

uygulamanızı bekliyorum.