Armadilloフォーラム

Armadillo-420で"gstreamer1.0"を使ってRAWデータをJPEG圧縮する方法

k-nakai

2025年2月28日 13時41分

==========
製品型番:Armadillo-420
Debian/ABOSバージョン:atmark-dist v1.55.1
カーネルバージョン:Linux 3.14.36-at13
3G/LTE モジュール情報 (Debianのみ):-
その他:-
==========

お世話になっております。
中居と申します。

Armadiio上でRAWデータをJPEG圧縮したく、"gstreamer1.0"を有効にしたimageを使用しています。
有効箇所は以下の通りです。

  Userland Configuration --->
   Miscellaneous Applications --->
    --- Multimedia tools
    [*] gstreamer1.0
    [*]   gst-inspect
    [*]   gst-launch
    [*]   gst-typefind
      plugins  ---> 
      [*] jpeg

Armadiio上で以下のように"gst-launch-1.0"コマンドを実行し、RAWデータのJPEG圧縮を試みましたが、
出力されたファイルが0byteとなり、うまく変換できておらず困っております。

[root@armadillo420-0 (ttymxc1) ~]# gst-launch-1.0 -vvv filesrc location=/mnt/test/DSC00058.ARW blocksize=$((4240*2832*2)) num-buffers=1 ! video/x-raw,format=YUY2 ,width=4240,height=2832,framerate=1/1 ! jpegenc ! filesink location=/mnt/test/out.jpg
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string)YUY2, width=(int)4240, height=(int)2832, framerate=(fraction)1/1
/GstPipeline:pipeline0/GstJpegEnc:jpegenc0.GstPad:sink: caps = video/x-raw, format=(string)YUY2, width=(int)4240, height=(int)2832, framerate=(fraction)1/1
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 6774481 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
[root@armadillo420-0 (ttymxc1) ~]# ls -l /mnt/test/
total 13344
-rwxr-xr-x    1 root     root      13662208 Feb 20 14:25 DSC00058.ARW*
-rwxr-xr-x    1 root     root             0 Feb 20 14:27 out.jpg*
[root@armadillo420-0 (ttymxc1) ~]#

圧縮対象のRAWデータ(DSC00058.ARW)はSONY社の以下のデータをダウンロードして使用しております。
https://www.dpreview.com/sample-galleries/6733082169/sony-a7s-iii-sampl…

コマンドのオプション指定が悪いのか、そもそも何か足りていないのか、
分かる方いらっしゃいましたらご教示いただけますと幸いです。

コメント

at_shota.shimoyama

2025年2月28日 17時19分

下山です。

> 圧縮対象のRAWデータ(DSC00058.ARW)はSONY社の以下のデータをダウンロードして使用しております。
> https://www.dpreview.com/sample-galleries/6733082169/sony-a7s-iii-sampl…

ご使用になっている画像は確かにRAWデータではあるのですが、ARW(Alpha Raw Image Format)というSony独自の特殊なフォーマットのようです。
調べた限りだと、gstreamerを使用してARWを扱う方法は無さそうです。
今回ARWの画像を使用されているのはただのテスト用でしょうか?

よろしくお願いします。

下山様

回答ありがとうございます。

> 調べた限りだと、gstreamerを使用してARWを扱う方法は無さそうです。

そうでしたか。。。
お手数をおかけしました。

> 今回ARWの画像を使用されているのはただのテスト用でしょうか?

はい、今回テスト用にARWの画像を使用しておりました。

at_shota.shimoyama

2025年3月3日 10時16分

> はい、今回テスト用にARWの画像を使用しておりました。

そうでしたか、ARWをテスト用に使用していたということでしたら、
ARWではなく本来使用を想定している画像と同じRAWフォーマットでテストされるのが良いかと思います。

本来使用を想定しているRAWフォーマットや画像の取得方法などより詳細な情報を差し支えない範囲でお教えいただけますと幸いです。

よろしくお願いします。

> そうでしたか、ARWをテスト用に使用していたということでしたら、
> ARWではなく本来使用を想定している画像と同じRAWフォーマットでテストされるのが良いかと思います。
>
> 本来使用を想定しているRAWフォーマットや画像の取得方法などより詳細な情報を差し支えない範囲でお教えいただけますと幸いです。

そうですよね、使用を想定しているRAWフォーマットでテストするのが早いですよね。
ただ、本来使用を想定しているRAWフォーマットがまだ未定です。
決まり次第、こちらで試してみて、また上手くいかないようでしたら別途投稿いたします。
その際はよろしくお願いいたします。